C语言怎么把200以内的所有素数存放在一堆数组中并输出
把200以内的所有素数存放到一维数组中并输出输入用例 无
输出用例 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 101 103 107 109 113 127 131 137 139 149 151 157 163 167 173 179 181 191 193 197 199
程序代码:#include "stdio.h"
int main()
{
int a[100],n=0;
for (int i=0;i<=200;i++) {
int flag=1;
for (int j=2;j<i;j++) {
if (i%j==0) {
flag=0;
}
}
if ((flag==1)&&(i!=1)) {
a[n++]=i;
}
}
printf("200内素数有%d个:\n",n);
for(int i=0;i<n;i++){
printf("%4d",a[i]);
}
printf("\n");
}

程序代码:#include <stdio.h>
#define UPPER_LIMIT 200
int array[UPPER_LIMIT+1] = {0};
void main()
{
int i, j;
for (i=2; i*i<UPPER_LIMIT; i++)
{
if (array[i] == 0)
{
for (j=i*i; j<=UPPER_LIMIT; j+=i)
{
array[j]++;
}
}
}
for (i=2; i<=UPPER_LIMIT; i++)
{
if (array[i] == 0)
{
printf("%d ", i);
}
}
}
程序代码:#include <stdio.h>
int main() {
int a[200];
int i, j, n = 0, c = 0;//c为计数器,计算符合条件的数组个数
for (i = 2; i <= 200; i++) {
int flag = 1;//标记
for (j = 2; j < i; j++) {
if (i % j == 0) {
flag = 0;
}
}
if (flag == 1) {
a[n] = i;
n += 1;
c += 1;
}
}
for (n = 0; n < c; n++) {
printf("%d ", a[n]);
}
}
程序代码:/*构造素数表*/
#include<stdio.h>
int main()
{
const int maxnumber=200;
int isprime[maxnumber];
int i;
int x;
for(i=0;i<maxnumber;i++)
{
isprime[i]=1;
}
for(x=2;x<maxnumber;x++)
{
if(isprime[x])
{
for(i=2;i*x<maxnumber;i++)
{
isprime[i*x]=0;
}
}
}
for(i=2;i<maxnumber;i++)
{
if(isprime[i])
{
printf("%d\t",i);
}
}
printf("\n");
return 0;
}[此贴子已经被作者于2021-11-14 15:05编辑过]