目录
代码逻辑
- 循环遍历1到100的整数(也可以从9遍历到100)
- 创建count变量用来计数,计算个位上的9和十位上的9,最后打印结果
如何计算个位上的9
%(取模操作符)—— 操作符两边必须是整数,取模的结果为余数
一个整数(%)取模上10后得到的就是个位的值,如果这个整数小于10,得到的还是这个整数
- 如:9 % 10,可以看作9 / 10,不够除,那么则商0余9,得到的结果就为9
- 如:19 % 10,可以看作19 / 10,不够除,商1且余数为9,得到的结果就为9
如何计算十位上的9
- 整数除法:除号的两端都是整数,得到的结果也是整数(小数舍去,只保留整数)
- 浮点数除法:除号的两端至少要有一个小数,得到的结果就是小数
所以我们可以使用整数除法,整数除以10,得到的就是整数的十位上的数
- 如:9 / 10,计算出来是0.9,但是只保留整数,所以结果是0
- 如:91 / 10,计算出来是9.1,但是只保留整数,所以结果是9
数字99
99这个数字,个位是9,十位也是9,所以在计算个位十位有多少个9时要分开判断
99如果用 if 和 else if 判断的话只能判断一次,所以要两个 if 语句分别判断个位和十位的9
代码实现
#include<stdio.h>
int main()
{
//计数
int count = 0;
//遍历9-100的整数
for (int i = 9; i < 100; i++)
{
//判断个位有多少个9
if (i % 10 == 9)
count++;
//判断十位有多少个9
if (i / 10 == 9)
count++;
}
//打印
printf("%d\n", count);
return 0;
}