由键盘输入一个正整数,判断该数是否为完全平方数,是输出Y,否则输出N
#include <stdio.h>
#include <math.h>
int main()
{
int a,c,d;
float b;
scanf("%d",&a);
b=sqrt(a);//b为a的平方根
c=(int)b;//取整数部分
d=c*c;
if(a==d)
printf("Y");
else
printf("N");
return 0;
}
此题注意判断的是一个数能否被完全平方,因此需对b取整再平方,因此只有b为整数时它的平方才能跟a相等。
个人认为此题为初等题,但需要一定的思考。
本人萌新,每日一题仅记录个人的学习过程,如有错误请多多指正,不喜勿喷。