我是靠谱客的博主 悲凉吐司,这篇文章主要介绍5.17一练: c语言循坏--计数,现在分享给大家,希望可以做个参考。

题目:编写一个程序,计算在区间1到n的所有整数中,数字x(0<=x<=9)共出现了多少次?

注意:11就为1出现了2次

输入第一个数为n        第二个数为x

在1到11中,即在1,2,3,4,5,6,7,8,9,10,11中数字1出现了4次

例子:

输入    11    1

输出    4

第一次错误源码:

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
#include<stdio.h> int main(void) { int n,x,a=10,b,j=0;//x大小0到9 scanf("%d",&n); scanf("%d",&x); int i; for(i=1;i<=n;i++) { while(i!=0) { b=i%10;//取出个位数 if(b==x) { j++; } i=i/10; } } printf("%d",j); }

改正后的源码(找个中间变量记录,while中的i与for中的i冲突,i的值改变,改循坏的次数达到不了)

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include<stdio.h> int main(void) { int n, x, a = 10, b, j = 0; //x大小0到9 scanf("%d", &n); scanf("%d", &x); int i; int temp; for (i = 1; i <= n; i++) { temp=i;//这个i在for中还是要用的,如果直接是i放到while中去的话,i的值就改变了 while (temp != 0) { b = temp % 10; //取出个位数 if (b == x) { j++; } temp = temp / 10; } } printf("%d", j); }

加油!

                                                                                                                                         5.17

最后

以上就是悲凉吐司最近收集整理的关于5.17一练: c语言循坏--计数的全部内容,更多相关5.17一练:内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(93)

评论列表共有 0 条评论

立即
投稿
返回
顶部