编写一个C程序,功能为输出a~b之间的全部素数。该题目代码的具体实现要求:
●其中下限a和上限b应由用户从键盘输入,b最大为100000以内;
●每行显示6个素数;
●程序界面友好;
●其中,判断某数是否为素数的功能,请用一个独立的函数实现。
#include "stdio.h"
int main() {
int a,b;
int i,j;
int num;
int cnt=0;
printf("请输入a,b的值:");
scanf("%d %d",&a,&b);
if(b>100000){
b = 100000;
}
for(i=a;i<b;i++){
//计算素数
for(j=2;j<i;j++) {
if(i % j==0){
break;
}
}
if(j==i) {
cnt++;
printf("%d\t",i);
//每打印6个换行
if(cnt % 6==0){
printf("\n");
}
}
}
}
运行结果如下:
#include<stdio.h>
int isprime(int n)
{ int i;
for(i=2;i*i<=n;i++)
if(!(n%i))return 0;
return n>1;
}
int main()
{ int i,a,b,n=0;
scanf("%d%d",&a,&b);
for(i=a;i<=b;i++)
if(isprime(i))
{printf("%d ",i);
n++;
if(n%6==0)printf("\n");
}
if(n==0)printf("no\n");
return 0;
}
您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~
如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~
ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632