包含数字9的数

包含数字9的数

http://www.nowcoder.com/questionTerminal/0948f4f3344c452f843afd3585dd0f8d

题目描述
今年是2019年,KiKi想知道1~2019中有多少个包含数字9的数。包含数字的数是指有某一位是“9”的数,例如“2019”、“199”等。

输入描述:

输出描述:
一行,一个整数,表示1~2019***有多少个数包含数字9。

解题思路
题目的意思也就是找余数是9的数。

代码

#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;
}
全部评论
为了判断十位、百位、千位有没有9吧,没有t/10这步只能判断个位有没有9。
1 回复 分享
发布于 2021-10-31 15:37
为什么要有t/=10这一步
点赞 回复 分享
发布于 2020-09-15 14:11
答案解答的是含有9的数字包含多少个“9”,而不是含有9的数字的个数,所以这里不要有t/10这步,答案错误
点赞 回复 分享
发布于 2020-10-10 09:40
比如190,算有9吧,但是怎么通过取余得到呢?所以在判断玩个位有没有9之后,需要让190变成19,继续判断个位是不是9!
点赞 回复 分享
发布于 2021-03-25 19:08

相关推荐

10-15 10:57
已编辑
武昌理工学院 FPGA工程师
狠赚笔第一人:老哥学院本没实习还想拿13k学Java狠赚笔呢
点赞 评论 收藏
分享
kyw_:接好运
点赞 评论 收藏
分享
评论
8
1
分享
牛客网
牛客企业服务