读完题直接就有思路了,代码信手拈来。
#include<stdio.h>
//isInclude7()函数用于判断一个整数某位是否为7
int isInclude7(int n){
while(n>0){
if(n%10==7) return n;
else n /=10;
}return 0; //循环体分支异常出口
}
int main(){
int n;
while(~scanf("%d",&n)){
int count=0;
for(int i=1;i<=n;i++){
if((i%7==0)||isInclude7(i)) count++; //整数是7的倍数或某位数是7则计数加1
}printf("%d\n",count);
}
}