8.程序设计,输入20个整数,统计其中非负数的个数,并计算它们的和,然后将非负数从小到大进行排序并输出。
时间: 2023-06-14 21:02:39 浏览: 113
下面是一个 Python 代码实现:
```python
nums = []
positive_nums = []
for i in range(20):
num = int(input("请输入一个整数:"))
nums.append(num)
if num >= 0:
positive_nums.append(num)
positive_nums_count = len(positive_nums)
positive_nums_sum = sum(positive_nums)
positive_nums.sort()
print("非负数的个数为:", positive_nums_count)
print("非负数的和为:", positive_nums_sum)
print("非负数从小到大的排序结果为:", positive_nums)
```
这个程序先创建了一个空列表 `nums`,然后用一个循环读入 20 个整数并把它们添加到这个列表中。同时,如果输入的数为非负数,就把它添加到另一个列表 `positive_nums` 中。
接着,程序用 Python 内置的 `len` 和 `sum` 函数计算出非负数的个数和它们的和。然后,使用列表的 `sort` 方法对 `positive_nums` 列表进行排序,最后输出统计结果。
需要注意的是,上面的代码没有对输入的数进行范围限制,如果需要,可以加入相应的判断逻辑。
相关问题
c语言8.程序设计,输入20个整数,统计其中非负数的个数,并计算它们的和,然后将非负数从小到大进行排序并输出。
下面是一个简单的C语言程序来实现这个功能:
```c
#include<stdio.h>
#define MAXSIZE 20
int main()
{
int num[MAXSIZE], positive[MAXSIZE];
int count = 0, sum = 0, i, j, temp;
printf("请输入20个整数:\n");
for(i = 0; i < MAXSIZE; i++)
{
scanf("%d", &num[i]);
if(num[i] >= 0) // 判断是否为非负数
{
positive[count++] = num[i]; // 将非负数加入数组positive
sum += num[i]; // 统计非负数的和
}
}
// 冒泡排序,将非负数从小到大排序
for(i = 0; i < count - 1; i++)
for(j = 0; j < count - i - 1; j++)
if(positive[j] > positive[j+1])
{
temp = positive[j];
positive[j] = positive[j+1];
positive[j+1] = temp;
}
printf("非负数的个数为:%d,它们的和为:%d\n", count, sum);
printf("非负数从小到大排序后为:\n");
for(i = 0; i < count; i++)
printf("%d ", positive[i]);
return 0;
}
```
该程序首先定义了两个数组 `num` 和 `positive`, `num` 用于存储输入的20个整数, `positive` 用于存储非负数。然后通过一个循环,将输入的整数逐个存入 `num` 数组中,在存储的同时,对每个非负数进行统计并加入 `positive` 数组中。
接着,程序对 `positive` 数组进行冒泡排序,将其中的非负数从小到大排序。最后输出非负数的个数、它们的和以及排序后的结果。
8,程序设计,输入20个整数,统计其中非负数的个数,并计算它们的和,然后将非负数从小到大进行排序并输出。
以下是Python语言的实现代码:
```python
nums = []
for i in range(20):
num = int(input("请输入第{}个整数:".format(i+1)))
nums.append(num)
positive_nums = [num for num in nums if num >= 0]
count = len(positive_nums)
total = sum(positive_nums)
sorted_nums = sorted(positive_nums)
print("非负数个数为:", count)
print("非负数的和为:", total)
print("排序后的非负数为:", sorted_nums)
```
以上程序首先定义了一个空列表`nums`,并通过循环输入20个整数,并将它们添加到列表中。然后通过列表推导式筛选出非负数,并分别统计其个数和总和。最后使用Python内置的`sorted`函数对非负数列表进行排序,并输出结果。
阅读全文