打眼一看很简单,感觉用个循环从1到100记录含有9的次数就好了,但是苦于具体的数学原理还是不明白,还是看了下别人的原理。。。
具体如下:
100之间含有9的数字无非两种,一种就是十位有9(例如90~99),另一种就是个位有9(例9,19…)个位有9可以让他进行与10取余数,十位有9可以让他与10相除,若结果为9就记录一次,累加。
有个特殊的99,要记录两次,这种方法试用
代码如下:
# define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
#include <stdlib.h>
int main(){
int i = 0;
int j = 0;
for (i = 0; i < 100;i++){
if (i%10==9){
j ++;
}
if (i/10==9){
j ++;
}
}
printf("9在100中出现的次数为:%d", j);
system("pause");
return 0;
}
结果为: