70,037
社区成员
发帖
与我相关
我的任务
分享
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main()
{
for (int i=2;i<10;i++)
{
for (int j=1;j<10;j++)
{
for (int k=0;k<10;k++ )
{
int num=pow((i*(j*10+3+k)),2);
//int num=i*(10*j+3+k)*i*(10*j+3+k);
if (num%10==9&&num/1000==8)
{
printf("[%d*(%d3+%d)]2=%d\n",i,j,k,num);
//goto Loop;
}
}
}
}
//Loop:
system("pause");
}

gcc -v
或者以下命令输出的第一行:
gcc --version


#include <stdio.h>
#include <math.h>
int main(int argc, char *argv[])
{
int x=90;
printf("%d\n",x);
int sum=pow(x,2);
printf("pow=%d, x*x=%d \n",sum,x*x);
return 0;
}


#include <stdio.h>
#include <stdlib.h>
int main()
{
for (int i = 2; i < 10; ++i)
{
for (int j = 1; j < 10; ++j)
{
for (int k = 0; k < 10; ++k)
{
unsigned long num = (unsigned long)(i * (j * 10 + 3 + k));
num=num*num;
if (num % 10ul == 9ul && num / 1000ul == 8ul)
{
printf("[%d*(%d*10+3+%d)]2=%lu\n", i, j, k, num);
//goto Loop;
}
}
}
}
//Loop:
system("pause");
}
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int main()
{
for (int i = 2; i < 10; ++i)
{
for (int j = 1; j < 10; ++j)
{
for (int k = 0; k < 10; ++k)
{
int num = (int)round(pow((double)(i * (j * 10 + 3 + k)), 2.0));
if (num % 10 == 9 && num / 1000 == 8)
{
printf("[%d*(%d3+%d)]2=%d\n", i, j, k, num);
//goto Loop;
}
}
}
}
//Loop:
system("pause");
}
C90中是没有重载函数的。
C90中的pow只有:
double pow(double base, double exponent);
这一种。C99中增加了:
float powf(float base , float exponent);
long double powl(long double base, long double exponent);
这两种,依然没有整数用的版本。


