题目描述
今年是2019年,KiKi想知道1~2019中有多少个包含数字9的数。包含数字的数是指有某一位是“9”的数,例如“2019”、“199”等。
输入描述:
无
输出描述:
一行,一个整数,表示1~2019中共有多少个数包含数字9。
解法一
#include<iostream>
using namespace std;
int main ()
{
int sum=1; //0-9中有一个
for(int i=10;i<=999;i++)
if(i%10==9||i/10%10==9||i/100==9)
sum++;
for(int i=1000;i<=2019;i++)
if(i%10==9||i/10%10==9||i/100%10==9||i/1000==9)
sum++;
cout<<sum;
return 0;
}
解法二(更简单)
#include <iostream>
using namespace std;
int result = 0;//初始化结果个数为0
int main()
{
for (int i=1; i<=2019; ++i) {
int t = i;
while (t > 0) {
if (t%10 == 9) {//余数为9,说明包含9
result++;//结果数就加一
break;
}
t /= 10;
}
}
cout << result << endl;//输出含有9的个数
return 0;
}