①要求
完全平方数:开方后结果是整数的数。
求出10000以内,加100和268都是完全平方数的整数。
~
②定义函数
#include< stdio.h>
#include< math.h>
int fun(long n)
{int s1,s2;
/*平方根函数sqrt。*/
s1=sqrt((double)(n 100));
/*将n 100开方后的值,赋值给整型s1,自动舍去小数位。*/
s2=sqrt((double)(n 268));
/*将n 268开方后的值,赋值给整型s2,自动舍去小数位。*/
if(s1==sqrt((double)(n 100))
&&s2==sqrt((double)(n 268))
/*判断开方后是否是整数:
如果sqrt开方后的值是小数,
就不等于取整后的s1和s2,也就不是完全平方数。
如果sqrt开方后的值是整数,
就等于取整后的s1和s2,也就是完全平方数。
*/
return 1;
else return 0;
}
~
③主函数
int main()
{long i;
for(i=1;i<10000;i )
{if(fun(i))printf("\n",i);}
return 0;
}
,