本题要求实现一个判断整数是否为完全平方数的简单函数。
函数接口定义:
int IsSquare( int n );
其中n是用户传入的参数,在长整型范围内。如果n是完全平方数,则函数IsSquare必须返回1,否则返回0。
裁判测试程序样例:
#include <stdio.h>
#include <math.h>
int IsSquare( int n );
int main()
{
int n;
scanf("%d", &n);
if ( IsSquare(n) ) printf("YES\n");
else printf("NO\n");
return 0;
}
/* 你的代码将被嵌在这里 */
输入样例1:
10
输出样例1:
NO
输入样例2:
100
输出样例2:
YES
代码:
int IsSquare(int n)
{
int x;
x=(int)sqrt(n);
if(x*x==n)
return 1;
else
return 0;
}/*此题即为你要先得将x整为整型
因为他可能不是整型
然后整型之后如果还可以平方之后还是n那才对
如果这样写
{
int x;
if(x==(int)sqrt(n))
return 1;
else
return 0;
}
则不一定对了,因为n的开方数可能是实数型
有无数多的实数型的数强制整型后都可以是x
*/