敲七
【问题描述】
输出7和7的倍数,还有包含7的数字例如(17,27,37...70,71,72,73...)
【要求】
【数据输入】一个整数N。(N不大于30000)
【数据输出】从小到大排列的不大于N的与7有关的数字。
问题及代码:
#include <iostream>
using namespace std;
int main()
{
int N;
cout<<"请输入一个0~30000间的整数"<<endl;
cin>>N;
if (N<=30000&&N>=0)
{
for (int i=1; i<=N; i++)
{
if (i%10==7||i%7==0)//末尾数有7及7的倍数
cout<<i<<" ";
else if (i/10==7)//70~79
cout<<i<<" ";
else if (i/100==7)//700~799
cout<<i<<" ";
else if (i/1000==7)//7000~7999,17000~17999、27000~27999
cout<<i<<" ";
}
}
return 0;
}
运行结果: