问题描述
若一个整数n能表示成某个整数m的平方的形式,则称这个数为完全平方数。写一个程序判断输入的整数是不是完全平方数。
输入说明
输入数据为一个整数n,0<=n<10000000。
输出说明
如果n是完全平方数,则输出构成这个完全平方数的整数m,否则输出no。
输入样例
样例1:
144
样例2:
15
输出样例
样例1输出:
12
样例2输出:
no
#include <stdio.h>
#include <math.h>//完全平方数
int main() {int n;scanf("%d", &n);int i, flag = 0;for (i = 0; i <= sqrt(n); i++) {//sqrt()头文件为math.hif (i * i == n) {flag = 1;break;}}if (flag)printf("%d\n", i);elseprintf("no\n");return 0;
}