、【编写程序】从键盘上输入10个正整数存入一维数组中,求其中所有的素数之和并输出。
时间: 2023-06-12 14:05:39 浏览: 69
下面是一个 Python 代码示例,实现了该功能:
```python
def is_prime(n):
"""
判断一个数是否为素数
"""
if n < 2:
return False
for i in range(2, int(n ** 0.5) + 1):
if n % i == 0:
return False
return True
nums = []
for i in range(10):
num = int(input("请输入第{}个正整数: ".format(i+1)))
nums.append(num)
prime_sum = 0
for num in nums:
if is_prime(num):
prime_sum += num
print("所有素数之和为:", prime_sum)
```
该程序首先定义了一个函数 is_prime,用于判断一个数是否为素数。然后通过循环从键盘上输入10个正整数,并将它们存入一个列表中。接着遍历该列表,对于每个数判断是否为素数,如果是素数则将其加入素数之和中。最后输出所有素数之和。
相关问题
用c语言编写程序,从键盘上输入10个正整数存入一维数组中,求其中所有的素数之和并输出。
下面是一个用C语言编写的程序,可以实现从键盘上输入10个正整数存入一维数组中,求其中所有的素数之和并输出。
```c
#include <stdio.h>
int is_prime(int n) { // 判断是否为素数
if (n <= 1) {
return 0; // 不是素数
}
for (int i = 2; i * i <= n; i++) {
if (n % i == 0) {
return 0; // 不是素数
}
}
return 1; // 是素数
}
int main() {
int arr[10];
int sum = 0;
printf("请输入10个正整数:\n");
for (int i = 0; i < 10; i++) {
scanf("%d", &arr[i]);
}
for (int i = 0; i < 10; i++) {
if (is_prime(arr[i])) {
sum += arr[i];
}
}
printf("所有素数之和为:%d\n", sum);
return 0;
}
```
程序中定义了一个函数 `is_prime`,用于判断一个数是否为素数。接下来在 `main` 函数中,首先定义一个长度为10的一维数组 `arr`,用于存储输入的10个正整数。然后通过循环从键盘上输入这10个正整数。接着再通过循环遍历这个数组,如果当前数组元素是素数,则将其加到变量 `sum` 中。最后输出所有素数之和。
用c语言编写程序】从键盘上输入10个正整数存入一维数组中,求其中所有的素数之和并输出。
下面是用C语言编写的程序,实现输入10个正整数存入一维数组中,求其中所有的素数之和并输出。
```c
#include <stdio.h>
int isPrime(int num) { // 判断是否为素数
if (num <= 1) { // 小于等于1的数都不是素数
return 0;
}
for (int i = 2; i * i <= num; i++) {
if (num % i == 0) {
return 0;
}
}
return 1;
}
int main() {
int nums[10]; // 存放输入的10个正整数
int sum = 0; // 素数之和
printf("请输入10个正整数:\n");
for (int i = 0; i < 10; i++) {
scanf("%d", &nums[i]); // 从键盘输入
if (isPrime(nums[i])) { // 判断是否为素数
sum += nums[i]; // 素数之和累加
}
}
printf("所有素数之和为:%d", sum);
return 0;
}
```
程序的运行结果如下:
```
请输入10个正整数:
2 3 4 5 6 7 8 9 10 11
所有素数之和为:28
```