求大佬解答 为什么输入的数有勾股数 这个程序会输出0 而我的意思是要输出那个勾股数
#include<stdio.h>#include<math.h>
int main(void)
{
int k,i;
int a,b;
double c,n,m,d;
scanf("%d",&k);
while(k--){
scanf("%d%d",&a,&b);
(a>b)?(a=a,b=b):(i=a,a=b,b=i);
c=sqrt(a*a+b*b);
n=sqrt(a*a-b*b);
d=c,m=n;
if((c-(int)c==0)&&(n-(int)n!=0))
printf("%d\n",d);
else if((c-(int)c!=0)&&(n-(int)n==0))
printf("%d\n",m);
else if((c-(int)c==0)&&(n-(int)n==0))
printf("%d\n",m);
else
printf("None\n");
}
return 0;
}