思路:对于这个问题我们首先想到的是先利用循环游历一边1到100的所有数字,再在循环体内判断整数的个位或者百位是否会出现9,如果出现9则计数变量加1
这段代码输出的结果为
但这段代码存在一个小问题。99这个整数他的十位数和个位数均出现了9,但是由于if选择结构的性质,他只能选择一个分支进入,从而导致少数一次。
如何解决这个问题呢:我们只需要将第二个选择结构的else删掉就可以
那么这段代码输出的结果为
代码介绍:
1.初始化两个整数变量num1和num2,用于计数。num1用于统计个位上出现9的次数,num2用于统计十位上出现9的次数。
2.使用一个for循环遍历1到100之间的所有整数。
3.在循环内部,首先判断当前整数i的个位是否为9。如果是,那么num1变量增加1,表示个位上的9出现了num1次。
4.接着,使用另一个if语句判断当前整数i的十位是否为9。如果是,那么num2变量增加1,表示十位上的9出现了num2次。
5.循环结束后,使用printf函数输出num1和num2的和,即1到100之间所有整数中数字9出现的总次数。