C语言 找出300以内的所有素数,每行输出6个

如题所述

如果N是一个大于等于2的整数,并且只有1和N本身是它的因子,没有别的正因子,则称N是一个素数(质数)。
#include"stdio.h"
main()
{
int i,n,num;
for(n=0,num=0;n<=300;n++)
{
i=2;
while(i<n&&n%i!=0)
i++;
if(i==n)
{
printf("%6d",n);
num++;
}
}
printf("n素数个数为%d",num);
}
别浪费了我的宝贵时间!追问

哥啊 题目要求每行输出六个 你自己运行一下 它就没有分行输出啊!帮我改一下呗..谢谢咯

温馨提示:答案为网友推荐,仅供参考
第1个回答  推荐于2017-12-15
我的可以每行输出6个,并且程序代码通俗易懂

#include<stdio.h>

/*n为素数则返回1,否则返回0*/
int isSuShu(int n)
{
int i;
for(i=2;i<n;i++)
if(n%i==0) return 0;
return 1;
}

int main()
{
int a,cnt=0;
for(a=3;a<=300;a++)
{
if(isSuShu(a))
{
cnt++; /*记录找到的素数个数*/
if(cnt%6==0) /*6个数一行*/
printf("%6d\n",a);
else
printf("%6d ",a);
}
}
return 0;
}本回答被提问者采纳
相似回答