题目:
输入两个整数,m和n,其中m<=n
判断[m,n]之间是否有含3和7的素数。
有则输出Yes,否则输出No
输入格式:
两个正整数m和n。
输出格式:
Yes或No。
我的答案:
#include<stdio.h>
#include<math.h>
int is_prime(int n);
int hj_q(int n);
int main()
{
int m,n,i,f=0;
scanf("%d%d",&m,&n);
for(i=m;i<=n;i++)
{
if(is_prime(i)==1)
{
if(hj_q(i)==1)
f=1;
}
if(f) break;
}
if(f==1) printf("Yes\n");
else printf("No\n");
return 0;
}
int is_prime(int n)
{
int f=0,i,y;
if(n==1) return 0;
y=(int)(sqrt(n)+1e-10);
for(i=2;i<=y;i++)
{
if(n%i==0) return 0;
}
return 1;
}
int hj_q(int n)
{
for( ; ; )
{
if(n%10==3 || n%10==7) return 1;
n=n/10;
if(n==0) break;
}
return 0;
}