122A题目网址
题目解析
1.输入数字(在1000以内),若能被4,7幸运数整除或只含4,7则输出YES,否则输出NO
举例:
输入:
107
输出:
NO
2.解题关键:
1)使用列举法,把所有符合的幸运数列出来(int number[])
1—2
2–22=4
3–22*2=8
2+4+8=14个
2)若n是幸运数中的一个或n%幸运数==0,则为YES
代码
#include<stdio.h>
#include<stdlib.h>
#include<string.h>
#include<math.h>
int main()
{int b=0;int n=0;scanf("%d",&n);int number[]={4,7,44,47,74,77,444,447,474,477,744,747,774,777};//4, 44, 444, 7, 77, 777, 47, 74, 447, 474, 744, 774, 747, 477}for(int i=0;i<14;i++){if(n%number[i]==0||n==number[i]){b=1;}}if(b){printf("YES");}else{printf("NO");}system("pause");getchar();//这才是让控制台停住return 0;
}