用C语言编程,一个数加上100后是开平方数,再加上168后也是个开平方数,求该数多少?该数小于10万

2025-04-16 06:56:41
推荐回答(2个)
回答1:

结果只有一个,是156,代码如下:
#include
#include

int main()
{

int n = 1; //n是要求的数据

while(n != 100000) //循环求出数字
{
//判断是否满足条件,若是开方不是整数的话,则下面条件不会成立
if(pow((int)sqrt(n + 100),2) == n + 100 && pow((int)sqrt(n + 168),2) == n + 168)
{
printf("%d\n",n); //打印出数字
}

n ++; //自增
}

return 0;
}

回答2:

只有一个 156
#include "stdio.h"
#include "math.h"
#define N 100000
void main()
{
int a;
int count=0;
for(a=1;a {
if(int(sqrt(a+100))*int(sqrt(a+100))==a+100 && int(sqrt(a+168))*int(sqrt(a+168))==a+168)
{
printf("%d\t",a);
count++;
}
}
printf("\nTotal:%d\n",count);
}