第十届蓝桥杯C语言大学B组CC++ 试题F:特别的数

    科技2024-08-21  26

    问题描述 小明对数位中含有2、0、1、9的数字很感兴趣(不包括前导0),在1到40中这样的数包括1、2、9、10至32、39和40,共28个,他们的和是574。 问,在1至n中,所有这样的数的和是多少?

    输入格式 输入一行包括两个整数n。

    输出格式 输出一行,包含一个整数,表示满足条件的数的和。

    样例输入 40

    样例输出 574

    代码

    #include<stdio.h> int main() { int sum=0,pog=0; int i,j,n; scanf("%d",&n); for(j=1;j<=n;j++) { pog=0; i=j; while(i!=0)//让i进入判断数字,以防改变j { if(i%10==2||i%10==0||i%10==1||i%10==9) { pog=1;//观测值 } i=i/10; } if(pog==1) { sum+=j; } } printf("%d",sum); return 0; }

    结果

    Processed: 0.011, SQL: 8