1095:数1的个数(C C++)

    科技2022-07-11  278

    【题目描述】

    给定一个十进制正整数n(1≤n≤10000),写下从1到n的所有整数,然后数一下其中出现的数字“1”的个数。 例如当n=2时,写下1,2。这样只出现了1个“1”;当n=12时,写下1,2,3,4,5,6,7,8,9,10,11,12。这样出现了5个“1”。

    【输入】

    正整数n。1 ≤ n ≤ 10000。

    【输出】

    一个正整数,即“1”的个数。

    【输入样例】

    12

    【输出样例】

    5

    【代码】

    #include <iostream> using namespace std; int main() { int n; int s=0; //计数器s cin>>n; //输入数 for(int i=1;i<=n;i++) { int q=i; //防止i被修改 while(q) { if(q%10==1) //个位为1时计数器++ s++; q/=10; //抹除个位 } } cout<<s; //输出1的个数 }
    Processed: 0.015, SQL: 8