封装一个求素数的函数,然后循环判断。不过按你提供的代码,不需要函数了。如下:
#include <stdio.h>
int main()
{
int n,i,s=0;
for(i=100;i<=200;i++)
{
for(n=2;n<i;n++)
if(i%n==0)
break;
if(i==n)
s += i;
}
printf("%d",s);
}
来自chitGPT
sum = 0
for i in range(100, 201):
flag = True
for j in range(2, i):
if i % j == 0:
flag = False
break
if flag:
sum += i
print(sum)
不知道你这个问题是否已经解决, 如果还没有解决的话:使用程序计算100到200之间的素数之和,可以按照以下步骤进行:
首先可以使用段落1中的代码求出100到200之间的全部素数,并存储为一个数组。
接着,对素数数组中的所有元素进行求和操作,得到素数之和。
代码示例:
#include <stdio.h>
int main()
{
int i = 0;
int prime[21]={0}; // 存放素数的数组
int sum = 0; // 素数之和
int index = 0; // 记录素数数量
// 求100到200之间的素数
for (i = 100; i <= 200; i++)
{
int j = 0;
for (j = 2; j <= i - 1; j++)
{
if (i % j == 0)
break;
}
if (j == i)
{
prime[index] = i; // 存入素数数组
index++; // 素数数量+1
}
}
// 计算素数之和
for (i = 0; i < index; i++)
{
sum += prime[i];
}
printf("100到200之间共有%d个素数,它们分别是:\n", index);
for (i = 0; i < index; i++)
{
printf("%d ", prime[i]);
}
printf("\n素数之和为:%d\n", sum);
return 0;
}