1082: 敲7(多实例测试)
时间限制: 1 Sec 内存限制: 128 MB
提交: 45304 解决: 20412
题目描述
输出7和7的倍数,还有包含7的数字例如(17,27,37...70,71,72,73...)
输入
首先输入一个整数t,表示有t组数据。
然后有t行,每行一个整数N。(N不大于30000)
输出
对于每组数据 ,输出从小到大排列的不大于N的与7有关的数字。每组数据占一行,每个数字后面有一个空格;
样例输入 Copy
2
20
30
样例输出 Copy
7 14 17
7 14 17 21 27 28
来源/分类
#include <stdio.h>
#include <stdlib.h>
int main()
{
int a;
int i,j,n;
scanf("%d",&a);
for(j=1;j<=a;j++)
{
scanf("%d",&n);
for(i=1;i<=n;i++)
{
if(i%7==0||i%10==7||i/10%10==7||i/100%10==7||i/1000%10==7)
printf("%d ",i);
}
printf("\n");
}
return 0;
}
对if语句不好处理,因给出N范围,故采用枚举法;嵌套循环解决多实例测试