#include <stdio.h> int main() { int i,num,count=0,o; scanf("%d",&num); for (i=1;i<=num;i++) { o=i; if (o%7==0) count++; else { while (o) { if (o%10==7) { count++; break; } else o/=10; } } } printf("%d",count); return 0; }
解题思路:
注意事项:
参考代码:
0.0分
2 人评分
C语言训练-求PI* (C语言代码)浏览:611 |
C语言程序设计教程(第三版)课后习题10.2 (C语言代码)浏览:678 |
C语言程序设计教程(第三版)课后习题6.8 (C语言代码)浏览:610 |
简单的事情 (C语言代码)浏览:633 |
C语言程序设计教程(第三版)课后习题8.3 (C语言代码)浏览:455 |
半数集问题 (C语言代码)浏览:916 |
C语言程序设计教程(第三版)课后习题7.4 (C++代码)浏览:546 |
C语言程序设计教程(第三版)课后习题6.2 (C语言代码)浏览:635 |
三角形 (C语言代码)浏览:1835 |
素数回文 (C语言代码)浏览:851 |
我醉欲眠 2019-02-18 13:55:14 |
用while循环从个位数开始逐位判断是否含7。比如770,个位数是0,那就再判断十位数,十位数是7,计数加1。此时得到想要的答案了,但还没到循环的终止条件(o为0的情况)就可以break跳出循环避免不必要的计算。
陌生人 2019-03-16 19:36:50 |
如果没有这个break语句会怎样,我运行了结果不对