关于循环问题中只输出一个no的问题,急!
完全数是这样一个整数,它加上100后是一个完全平方数,它加上268也是一个完全平方数。编程程序求出m,n之间所有完全数(包括m和n),其中n>m。输入形式:输入一行,包括整数m和n。
输出形式:输出一行,输出m与n间的所有完全数,各数之间以空格分隔。若没有,则输出no。
样例输入:1 10000
样例输出: 21 261 1581
#include<stdio.h>
#include<math.h>
int main()
{
int m,i,n;
double k1,k2;
scanf("%d%d",&m,&n);
for(i=m;i<=n;i++)
{
k1=sqrt(i+100);
k2=sqrt(i+268);
if((fabs(k1-(int)k1)<1e-6)&&(fabs(k2-(int)k2)<1e-6))
printf(" %d",i);
}
return 0;
}
主体部分已经完成,但那个输出no的地方实在不知道怎么搞了,循环里怎么才能只输出一个no啊
救救孩子吧!已经卡了一个多小时了!!!