第1个回答 2013-04-15
#include "stdio.h"
int is_prime(int x)//判断x是否是素数,是,返回1,不是返回0
{
int i;
for(i=2;i<=x/2;i++)
if(x%i==0)
return 0;
return 1;
}
int main()
{
int n,i,count=0;
printf("Please input n(n<20):");
scanf("%d",&n);
if(n>=20 ||n<0)
{
printf("输入错误,程序中止!\n");
return 1;
}
for(i=n;i<=n*100;i++)
{
if(is_prime(i)==1)
{
printf("%4d ",i);
count++;
}
if(count%6==0 && count!=0)
printf("\n");
}
printf("\n%d到%d之间素数的总个数为%d\n",n,100*n,count);
}本回答被网友采纳
第2个回答 2013-04-15
#include <stdlib.h>
#include <stdio.h>
#include <math.h>
int main()
{
int n;
int IsPrime(int x);
printf("请输入一个小于20的正整数:");
do
{
scanf("%d",&n);
if(n<=0||n>20)
{
printf("输入错误,请重新输入一个小于20的正整数:");
}
else
{
break;
}
}while(1);
printf("大于%d小于100*%d的素数有:\n",n,n);
for(int i=n,j=0;i<100*n;i++)
{
if(IsPrime(i))
{
printf("%4d ",i);
j++;
if(j==6)
{
printf("\n");
j=0;
}
}
}
return 0;
}
int IsPrime(int x)
{
if(x<2)
{
return 0;
}
else if(x==2)
{
return 1;
}
else
{
for(int k=2;k<=sqrt(x);k++)
{
if(x%k==0)
{
return 0;
}
}
return 1;
}
}
第3个回答 2013-04-15
#include<stdio.h>
#include<math.h>
int main()
{
int i,j,k,count=0,prime,n;
printf("请输入整数n:");
scanf("%d",&n);
if(n<0||n>20)
{
printf("error!");
return 0;
}
for(i=n;i<=100*n;i++)
{
prime=1;
k=(int)sqrt(i);
for(j=2;j<=k;j++)
if(i%j==0)
prime=0;
if(prime)
{
printf("%5d",i);
count++;
if(count%6==0)
printf("\n");
}
}
printf("\n");
return 0;
}
第4个回答 2013-04-15
#include <math.h>
main()
{
long n,m=0,i,j;
scanf("%ld",&n);
for(i=n;i<=100*n;i++)
{
for(j=2;j<=sqrt(i)&&i%j>0;j++);
if(i%j!=0)
{
printf("%12ld",i);
m++;
if(m%6==0)printf("\n");
}
}
printf("\n");
}