解题思路:
对于每一个数 i,求出它的位数,用平方积%(int)pow(10,位数)得到尾数;
尾数与 i 比较,相同则输出;
参考代码:
#include<stdio.h> #include<math.h> int main() { long long S; //存放平方 int len,ii; //i的位数,和i的备份值 for(int i=0;i<=200000;i++) { len=1;ii=i; S=pow(i,2); while(ii>=10) //求i的位数 { ii/=10; len++; } if(S%(int)pow(10,len)==i) //取尾数,看是否等于i printf("%d ",i); } return 0; }
别忘点赞哦-.-
0.0分
27 人评分
C语言程序设计教程(第三版)课后习题3.7 (C语言代码)浏览:698 |
C语言程序设计教程(第三版)课后习题6.8 (C语言代码)浏览:693 |
C语言程序设计教程(第三版)课后习题5.7 (C语言代码)浏览:1033 |
校门外的树 (C语言代码)浏览:716 |
C语言程序设计教程(第三版)课后习题8.1 (Java代码)浏览:781 |
C语言程序设计教程(第三版)课后习题6.1 (C语言代码)浏览:452 |
WU-陶陶摘苹果2 (C++代码)浏览:973 |
C语言程序设计教程(第三版)课后习题8.7 (C语言代码)浏览:596 |
罗列完美数 (C语言代码)浏览:491 |
简单的a+b (C语言代码)浏览:531 |
酒量小的小东 2018-11-19 10:31:23 |
我试了一下,不会啊。。。
酒量小的小东 2018-11-19 10:31:38 |
正常输出10000
Manchester 2020-03-04 21:30:04 |
这个情况 会出现的pow(10,2)有时也会出现99,低精度pow函数自定义一个使用,高精度才用pow()