HUELOJ: 69 有问题的里程表

题目描述
某辆汽车有一个里程表,该里程表可以显示一个整数,为该车走过的公里数。然而这个里程表有个毛病:它总是从 3 变到 5,而跳过数字 4,里程表所有位(个位、 十位、百位等)上的数字都是如此。例如,如果里程表显示 339,汽车走过 1 公里之后,该里程表显示 350。
输入描述
输入一个整数 num,表示里程表显示的数值,1 < num < 1000,且一定不含整数 4。
输出描述
输出一个整数,为该汽车实际行驶的公里数。例如,如果该里程表显示 55,则实际走过的公里数是 40。
输入样例

106

输出样例

86
#include
int main()
{
    int num,i,ret;
    scanf("%d",&num);
    ret = 0;
    for(i = 1;i <= num;i++)
    {
        if(i!=4&&i%10!=4&&i/10%10!=4&&i/100%10!=4)
        {
            ret = ret + 1;
        }
    }
    printf("%d\n",ret);
    return 0;
}

你可能感兴趣的:(HUEL-OJ,c语言)