C语言编程题:求100-200之间所有素数(只能被1和自身整除的数)怎么做?
答案:6 悬赏:80 手机版
解决时间 2021-03-19 19:10
- 提问者网友:爱唱彩虹
- 2021-03-18 21:37
C语言编程题:求100-200之间所有素数(只能被1和自身整除的数)怎么做?
最佳答案
- 五星知识达人网友:忘川信使
- 2021-03-18 22:30
#include
int isPrime(int n) {
int i,flag = 1;
if(n < 2) return 0;
for(i = 2; i * i <= n && flag; ++i)
flag = n % i;
return flag;
}
int main() {
int num,cnt = 0;
printf("100 -- 200之间的素数有:
");
for(num = 100; num <= 200; ++num) {
if(isPrime(num)) {
if(cnt && cnt % 10 == 0) printf("
");
printf("%d ",num);
++cnt;
}
}
return 0;
}
int isPrime(int n) {
int i,flag = 1;
if(n < 2) return 0;
for(i = 2; i * i <= n && flag; ++i)
flag = n % i;
return flag;
}
int main() {
int num,cnt = 0;
printf("100 -- 200之间的素数有:
");
for(num = 100; num <= 200; ++num) {
if(isPrime(num)) {
if(cnt && cnt % 10 == 0) printf("
");
printf("%d ",num);
++cnt;
}
}
return 0;
}
全部回答
- 1楼网友:酒安江南
- 2021-03-19 04:05
#include
#include
bool isprime(int n)
{
if (n==2)
return true;
if (n%2==0||n<2)
return false;
int tmp=(int)sqrt((double)n);
for (int i=3;i<=tmp;i+=2)
{
if (n%i==0)
return false;
}
return true;
}
int main()
{
for (int i=100; i<201; i++)
{
if (isprime(i))
printf("%d ",i);
}
return 0;
}
#include
bool isprime(int n)
{
if (n==2)
return true;
if (n%2==0||n<2)
return false;
int tmp=(int)sqrt((double)n);
for (int i=3;i<=tmp;i+=2)
{
if (n%i==0)
return false;
}
return true;
}
int main()
{
for (int i=100; i<201; i++)
{
if (isprime(i))
printf("%d ",i);
}
return 0;
}
- 2楼网友:荒野風
- 2021-03-19 02:31
#include
#include
main()
{
int m,i,k,n=0;
for(m=101;m<=200;m=m+2) //偶数除外,故+2
{
k=sqrt(m); //开方
for(i=2;i<=k;i++) //在2与K之间又1数可以被M整除,则非素数
if(m%i==0)break;
if(i>=k+1)
{
printf(“%d”,m); //输出该素数
n=n+1;
}
if(n%n==0)printf(“\n”);
}
printf(“\n”);
}
#include
main()
{
int m,i,k,n=0;
for(m=101;m<=200;m=m+2) //偶数除外,故+2
{
k=sqrt(m); //开方
for(i=2;i<=k;i++) //在2与K之间又1数可以被M整除,则非素数
if(m%i==0)break;
if(i>=k+1)
{
printf(“%d”,m); //输出该素数
n=n+1;
}
if(n%n==0)printf(“\n”);
}
printf(“\n”);
}
- 3楼网友:杯酒困英雄
- 2021-03-19 01:48
#include
void main()
{
printf("100到200之间的素数是:\n");
int i,j,k=0;
for(i=100;i<=200;i++)
{
j=2;
while(i%j!=0)
j++;
if(i==j)
{
printf("%d\t",i);
k++;
if(k%5==0)
printf("\n");
}
}
printf("\n");
}
void main()
{
printf("100到200之间的素数是:\n");
int i,j,k=0;
for(i=100;i<=200;i++)
{
j=2;
while(i%j!=0)
j++;
if(i==j)
{
printf("%d\t",i);
k++;
if(k%5==0)
printf("\n");
}
}
printf("\n");
}
- 4楼网友:往事埋风中
- 2021-03-19 00:55
绝对正确
#include"stdio.h"
main()
{int i,j;
for(i=100;i<=200;i++)
{ for(j=2;j if(i%j==0) break;
if(j>=i) printf("%d是素数",i);
}
}
#include"stdio.h"
main()
{int i,j;
for(i=100;i<=200;i++)
{ for(j=2;j if(i%j==0) break;
if(j>=i) printf("%d是素数",i);
}
}
- 5楼网友:逐風
- 2021-03-18 23:19
搜索"素数筛选法 算法",你会搜到很多
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯