求5000以内素数,每一行显示十个素数,统计所有素数之和用c语言写个程序
时间: 2024-05-12 20:18:22 浏览: 13
好的,这是一个求解5000以内素数,并且统计所有素数之和的程序:
```c
#include <stdio.h>
int main() {
int sum = 0, cnt = 0, i, j, is_prime;
for (i = 2; i <= 5000; i++) {
is_prime = 1;
for (j = 2; j < i; j++) {
if (i % j == 0) {
is_prime = 0;
break;
}
}
if (is_prime) {
sum += i;
cnt++;
printf("%d ", i);
if (cnt % 10 == 0) {
printf("\n");
}
}
}
printf("\nsum = %d\n", sum);
return 0;
}
```
该程序使用两层循环,第一层循环枚举2到5000之间的所有数,第二层循环判断当前数是否为素数。如果当前数是素数,则将其加到sum变量中,并且用cnt计数,每输出十个素数就换行。最后输出所有素数的和sum。
相关问题
求5000以内的素数,每行显示十个素数,统计所有素数之和c语言
好的,我知道了。以下是代码:
```
#include <stdio.h>
int main() {
int count = 0;
long sum = 0;
for (int num = 2; num <= 5000; num++) {
int isPrime = 1;
for (int i = 2; i < num; i++) {
if (num % i == 0) {
isPrime = 0;
break;
}
}
if (isPrime == 1) {
printf("%d ", num);
count++;
sum += num;
if (count == 10) {
printf("\n");
count = 0;
}
}
}
printf("\nSum of all prime numbers: %ld", sum);
return 0;
}
```
希望能够帮到你。
用c语言写一个100以内所有素数的和的程序
以下是一个用 C 语言编写的程序,可以计算出 100 以内所有素数的和:
```c
#include <stdio.h>
int main() {
int i, j, sum = 0;
for (i = 2; i <= 100; i++) {
for (j = 2; j <= i; j++) {
if (i % j == 0 && i != j) {
break;
}
if (i == j) {
sum += i;
}
}
}
printf("100以内所有素数的和为:%d\n", sum);
return 0;
}
```
程序中的第一个 for 循环用于遍历 2 到 100 之间的所有数字,第二个 for 循环用于判断当前数字是否为素数。如果当前数字能被 2 到当前数字本身之间的任何一个数字整除且不等于这个数字本身,则说明这个数字不是素数,直接跳出循环;如果当前数字不能被整除且等于这个数字本身,则说明这个数字是素数,将其加入到 sum 变量中。最后输出 sum 变量的值即为 100 以内所有素数的和。