C语言列出1到N的所有质数

RT 用C语言列出1到N的所有质数,谢谢。
N由用户输入

#include <stdio.h>
int isprime(int n)
{for(int i=2;i*i<=n;i++)
   if(n%i==0)return 0;
 return n>1;  
}
int main()
{int n,i;
 scanf("%d",&n);
 for(i=2;i<=n;i++)
   if(isprime(i))printf("%d ",i);
 printf("\n");  
 return 0;
}

温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-06-29
//计算出小于等于number的所有质数
void findPrimeNumber(int number)
{
int temp;//临时变量,接受返回值,以便判断是否为质数
temp=0;
for(int i=1;i<=number;i++)
{
temp=CheckNumber(i);
if(temp==1)
{
printf("%3d",i);
}
}
}
////检查一个数是否为质数
int CheckNumber(int temp)
{
if(temp==1)
{

}
int flag =0;//是否为质数的标志位
for(int i=2;i<temp;i++)//遍历2~(Temp-1)的所有数,检查是否能被中间数整除
{
if(temp%i==0)
{
flag++;
}
}
if(flag==0)
{
return 1;
}
return 0;
}
主函数自己写啊
第2个回答  2015-06-29
#include<stdio.h>
int fun(int n)
{
for(int i=2;i<=n/2;i++)
if(n%i==0)
return 0;
return 1;
}
int main()
{
int n;
printf("请输入一个数:");
scanf("%d",&n);
for(int i=1;i<=n;i++)
if(fun(i))
printf("%3d",i);
printf("\n");
return 0;
}本回答被提问者和网友采纳