判断一个正整数n是否能被一个“幸运数”整除。幸运数是指一个只包含4或7的正整数,如7、47、477等都是幸运数,17、42则不是幸运数
#include <stdio.h>
int main()
{
int n,flag;
scanf("%d",&n);
for(int i=4;i<=n;i++)
{
int j=i;
flag=1;
//while循环判断当前的j是不是一个幸运数
while (j>0)
{
if(j%10!=4 && j%10!=7)
{
flag=0;
break;
}
j/=10;
}
//if语句判断输入的数字n能否被当前的幸运数整除,如果能整除,输出YES,退出程序
if(flag==1 && n%i==0)
{
printf("%d 可以被幸运数 %d 整除", n,i);
return 0;
}
}
if(flag==0)
printf("%d 不能被幸运数整除", n);
return 0;
}