请编写一个程序,输入100以内的所有素数,要求每行仅输出5个素数
3个回答
展开全部
除2以外,素数皆为奇数,所以对2单独处理,从3开始,将100以内的奇数逐一进行素数考察,是则输出,不是则跳过。另设一计数变量控制换行,每输出5个素数添加一个回车。代码如下:
#include "stdio.h"
int main(int argc,char *argv[]){
int i,n,t;
printf(" 2");//单独处理2
for(t=1,i=3;i<100;i+=2){//遍历3至100的奇数
for(n=3;n*n<=i;n+=2)//考察i是否为素数
if(i%n==0)
break;//若有1和自身以外的因子则在n*n<=i时跳出
if(i<n*n)//若n*n>i则i是素数
printf(++t%5 ? "%3d" : "%3d\n",i);//++t%5控制每行5个数
}
if(t%5)
printf("\n");
return 0;
}
运行结果如下:
2013-05-20
展开全部
#include <stdio.h>
#include <math.h>
main()
{
int a,i,flag,count=0;
for(a=1;a <=100;a++)
{
flag=0;
for(i=2;i <=sqrt(a);i++)
{
if(a%i==0)
{
flag=1;
break;
}
if(flag==0)
{
printf( "%d ",a);
count=count+1;
}
if(count%5==0)
printft( "\n ");
}
}
}
#include <math.h>
main()
{
int a,i,flag,count=0;
for(a=1;a <=100;a++)
{
flag=0;
for(i=2;i <=sqrt(a);i++)
{
if(a%i==0)
{
flag=1;
break;
}
if(flag==0)
{
printf( "%d ",a);
count=count+1;
}
if(count%5==0)
printft( "\n ");
}
}
}
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
2013-05-20
展开全部
#include <stdio.h>int main()
{
int i,n,k,b;
for(i=1,b=1;i<=100;i++)
{
for(n=2;n<i;n++)
{
k=i%n;
if(k==0)
break;
}
if(n==i)
{
b++;
printf("%d ",i);
}
if(b>8)
{
printf("\n");
b=1;
}
}printf("\n");
}
{
int i,n,k,b;
for(i=1,b=1;i<=100;i++)
{
for(n=2;n<i;n++)
{
k=i%n;
if(k==0)
break;
}
if(n==i)
{
b++;
printf("%d ",i);
}
if(b>8)
{
printf("\n");
b=1;
}
}printf("\n");
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询