7744问题
发布日期:2021-05-11 00:30:54 浏览次数:43 分类:精选文章

本文共 705 字,大约阅读时间需要 2 分钟。

先用sqrt函数求出其平方根并四舍五入,并用一个int类型的变量m保存,比较m*m==n是否成立

#include 
#include
int main(){ int n, m; m = floor(sqrt(n)+0.5);//floor(x)返回不超过x的最大整数 if(m*m==n)//保险,避免了开平方之后再比较 printf("%d", n); return 0;}

输出所有形如AABB的数字 

#include 
#include
int main(){ int n, m, a, b; for (int a=1; a<9; a++) for (int b=1; b<9; b++) { m = floor(sqrt(n)+0.5);//floor(x)返回不超过x的最大整数 if(m*m==n)//保险,避免了开平方之后再比较 printf("%d\n", n); } return 0;}

 枚举法:避免输入浮点数

#include 
#include
int main(){ int n, a, b; for (int i=0; ; i++) { n = i*i; if (n<1000) continue; else if(n>9999) break; a = n/100; b = n%100; if (a/10 == a%10 && b/10 == b%10) printf("%d\n", n); } return 0;}

 

上一篇:阶乘之和
下一篇:阶乘的最高位

发表评论

最新留言

初次前来,多多关照!
[***.217.46.12]2025年05月01日 16时33分42秒