描述
输出 1到n之间 的与 7 有关数字的个数。
一个数与7有关是指这个数是 7 的倍数,或者是包含 7 的数字(如 17 ,27 ,37 ... 70 ,71 ,72 ,73...)
数据范围: 1≤n≤30000
输入描述:
一个正整数 n 。( n 不大于 30000 )
输出描述:
一个整数,表示1到n之间的与7有关的数字个数。
示例1
输入:
20
输出:
3
说明:
输入20,1到20之间有关的数字包括7,14,17共3个。
#include <stdio.h>
int related_7(int x)
{
int flag=0; //标志数字x中是否包含7
while (x) {
if(x%10==7)
flag=1;
x/=10;
}
if(flag==1) //包含7的数字
return 1;
else
return 0;
}
int main() {
int n;
scanf("%d",&n);
int i=0;
int count=0; //统计与7有关的数字的个数
for(i=1;i<=n;i++)
{
if(i%7==0 || related_7(i)) //7的倍数 或 包含7
count++;
}
printf("%d",count);
return 0;
}