解题思路:
对于每一个数 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分
28 人评分
C语言训练-排序问题<1> (C语言代码)浏览:1411 |
C语言训练-求s=a+aa+aaa+aaaa+aa...a的值 (C++代码)(手动优化一下计算)浏览:1365 |
C语言训练-自由落体问题 (C语言代码)浏览:1775 |
简单的a+b (C++语言代码)浏览:895 |
小明A+B (C语言代码)浏览:1317 |
C语言程序设计教程(第三版)课后习题4.9 (C语言代码)浏览:949 |
C语言程序设计教程(第三版)课后习题6.4 (C语言代码)浏览:1072 |
C语言程序设计教程(第三版)课后习题6.9 (C语言代码)浏览:806 |
C语言程序设计教程(第三版)课后习题7.4 (C语言代码)浏览:1314 |
C语言程序设计教程(第三版)课后习题4.9 (C语言代码)浏览:648 |
酒量小的小东 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()