怎么求200以内尾数为7的所有素数,急急急急急急急急急急急急急急急急急急急急急急急急急急急
#include <stdio.h>
#include <stdlib.h>
int main(int argc, char *argv[]) {
int i,j;
int flag;//标识某个数是不是素数
//i代表2到100之间的数
for(i=1;i<=200;i++){
//内循环判断i是不是素数
flag = 0;//默认i是素数
for(j=2;j<10;j++){
if((i!=j) && (i % j == 0)){
flag = 1;//表示i不是素数
break;
}
}
if(flag==0 && i % 7 == 0){ //flag=0表示i是素数
printf("%d\t",i);
break;
}
}
return 0;
}
你题目的解答代码如下:
#include <stdio.h>
int isprime( int n);
int main()
{
int i;
for( i=2; i<=200; i++ ) {
if(i%10==7 && isprime(i)){
printf("%d ", i);
}
}
return 0;
}
int isprime(int n)
{
int i;
if(n<=3) return n>1;
for(i=2;i*i<=n;i++)
if(n%i==0) return 0;
return 1;
}
如有帮助,望采纳!谢谢!
#include <stdio.h>
#include <stdlib.h>
int main()
{
for(int i=2; i<200; i++){
int isprime=0;
for(int j=2; j<i/2; j++){
if(i%j==0){
isprime=1;
break;
}
}
if(isprime==0 && i%10==7){
printf("%d ",i);
}
}
return 0;
}