输出7和7的倍数,还有包含7的数字例如(17,27,37…70,71,72,73…)。
【输入】一个整数 N。(N不大于30000)
【输出】从小到大排列的不大于N的与7有关的数字,每行一个。
【输入范例】20
【输出范例】7 14 17
程序代码:
#include<stdio.h>int main(){ int N,i,m,a[5]; //N为输入的数,m是中间变量,数组a[]用来存储输入的数的每一位数 scanf(“%d”,&N); //输入N for(i=7;i<=N;i++) //因为最小为7,所以从7开始遍历 { if(i%7==0) //判断,如果是7的倍数,就输出 { printf(“%d\n”,i); //输出7的倍数 }m=i; //如果i不是7的倍数,将i的值赋给m for(int j=0;j<5;j++) //取该数的每一位,因为输入的数最大为5位数,所以j的取值是从0到5 { a[j]=m%10; //数组a[]用来存储输入的数的每一位数,首先用m%10来对该数进行取余 m=m/10; //然后用m/10来进行取商 if((i%7!=0)&&(a[j]==7)) //判断,如果不是7的倍数并且含有7,就输出 { printf(“%d\n”,i); //输出 } } } return 0;}