输入正整数c,求从c开始的前4个勾股数
这代码输出不了正确结果,求修改
#include
#include
int main()
{
int a,b,n,count=1;
double c;
scanf("%d",&n);
for(a=n;a<1000;a++)
for(b=a+1;b<1000;b++)
{
c=sqrt(a*a+b*b);
if(c*c==a*a+b*b&&a+b>c&&a+c>b&&b+c>a)
{
printf("No%d:%.0lf",count,c);
count++;
if(count==4)
break;
}
}
return 0;
}
供参考:
#include <stdio.h>
int main()
{
int c,a,b,cnt=0;
scanf("%d",&c);
for( ;c>0;c--){
for(a=0;a<c;a++)
for(b=0;b<a;b++)
if(a*a+b*b==c*c){
printf("%d的平方=%d与%d的平方和\n",c,a,b);
cnt++;
if(cnt==4) return 0;
}
}
return 0;
}