10000-99999号的奖券,其中不能包含4。求剩下多少奖券?
【法一】
//练习题,奖券数目
#include<iostream>
using namespace std;
bool shibushi(int num)
{
//各位数字是否为4
while (num != 0)
{
int temp = num % 10;
if (temp == 4) return false;
num /= 10;
}
return true;
}
int main()
{
int sum = 0;
for (int i = 10000; i <= 99999; i++)
{
if (shibushi(i))
{
sum++;
}
}
cout << sum;
return 0;
}
【法二】
//练习题,奖券数目
#include<stdio.h>
int n=0;
void f(int k)
{
if(k%10==4 || k/10%10==4 || k/100%10==4 || k/1000%10==4 || k/10000==4)
{
n++;
}
}
int main()
{
int i;
for(i=10000;i<=99999;i++)
{
f(i);
}
printf("%d",90000-n);
return 0;
}