C语言编程:输出2到100之间的所有素数,每行输出10个
4个回答
推荐于2017-09-12 · 知道合伙人教育行家
关注
展开全部
思路:定义一个判断素数函数,接着依次从2到100遍历判断,如果是则输出,每输出是10次输出换行。
参考代码:
#include <stdio.h>
int isp(int n){//判断一个数是否是素数
int i;
for(i=2;i<n;i++)
if(n%i==0) return 0;
return 1;
}
int main ()
{
int i,j=0;
for(i=2;i<=100;i++)
if(isp(i)){//是素数则输出
printf("%d ",i);
j++;//统计输出次数
if((j+1)%10==0) //每输出10次输出换行
printf("\n");
}
return 0;
}
/*
运行结果:
2 3 5 7 11 13 17 19 23
29 31 37 41 43 47 53 59 61 67
71 73 79 83 89 97
*/
展开全部
#include <stdio.h>
#define N 100
int main()
{
int a[N],i=2,temp=0,j=0,tempp,sum,total=0;
while(i<=N)
{
i++;
temp=i;
if (i==2)
{a[j]=i;j++;}
else
while(temp)
{ temp--;
if (temp==1)
{ a[j]=i;j++;
break;}
else if(temp!=1&&(i%temp)==0)
break;
}
}
sum=j;
for(tempp=0;tempp<j;tempp++)
{ if(tempp%10==0)
printf("\n");
printf("%d\t",a[tempp]);
total+=a[tempp];
}
printf("\n\nThe total is %d\n",sum); //计算质数之和,不要可删除这行
printf("The total is %d\n",total); //计算质数个数,不要可删除这行
return 0;
}
#define N 100
int main()
{
int a[N],i=2,temp=0,j=0,tempp,sum,total=0;
while(i<=N)
{
i++;
temp=i;
if (i==2)
{a[j]=i;j++;}
else
while(temp)
{ temp--;
if (temp==1)
{ a[j]=i;j++;
break;}
else if(temp!=1&&(i%temp)==0)
break;
}
}
sum=j;
for(tempp=0;tempp<j;tempp++)
{ if(tempp%10==0)
printf("\n");
printf("%d\t",a[tempp]);
total+=a[tempp];
}
printf("\n\nThe total is %d\n",sum); //计算质数之和,不要可删除这行
printf("The total is %d\n",total); //计算质数个数,不要可删除这行
return 0;
}
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
#include <stdio.h>
int isP(int n)
{
int m,flag=1;
for(m=2;m<=n/2;m++)
if(n%m==0)
{flag=0;break;}
return flag;
}
void main()
{
int i,j=0;
for(i=2;i<=100;i++)
{
if(isP(i))
{printf("%3d",i);j++;}
if(j==10)
{printf("\n");j=0;}
}
}
int isP(int n)
{
int m,flag=1;
for(m=2;m<=n/2;m++)
if(n%m==0)
{flag=0;break;}
return flag;
}
void main()
{
int i,j=0;
for(i=2;i<=100;i++)
{
if(isP(i))
{printf("%3d",i);j++;}
if(j==10)
{printf("\n");j=0;}
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
打开文件
FILE*fp;
fp=fopen("prime.txt","w");
写入文件
fprintf(fp,"%d ",a);
程序:
#include <stdio.h>
#include <stdlib.h>
void main()
{
int a,b,c;
FILE*fp;
if((fp=fopen("prime.txt","w"))==NULL)
{
fprintf(stdout,"Can't open file.\n");
exit(1);
}
for(a=2;a<=100;a++)
{
for(b=2;b<a;b++)
{
if(a%b==0)
break;
}
if(b>=a)
{
printf("%5d",a);c++;
{
if c%10=0 print(\n);
}
fprintf(fp,"%d ",a);
}
}
if(fclose(fp)!=0)
fprintf(stderr,"Error closing file\n");
}
FILE*fp;
fp=fopen("prime.txt","w");
写入文件
fprintf(fp,"%d ",a);
程序:
#include <stdio.h>
#include <stdlib.h>
void main()
{
int a,b,c;
FILE*fp;
if((fp=fopen("prime.txt","w"))==NULL)
{
fprintf(stdout,"Can't open file.\n");
exit(1);
}
for(a=2;a<=100;a++)
{
for(b=2;b<a;b++)
{
if(a%b==0)
break;
}
if(b>=a)
{
printf("%5d",a);c++;
{
if c%10=0 print(\n);
}
fprintf(fp,"%d ",a);
}
}
if(fclose(fp)!=0)
fprintf(stderr,"Error closing file\n");
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询