一维整数列表的输入和输出练习1 【问题描述】输入若干个整数,求其最大值,输出全部数据,以及总和、个数、平均值 【输入形式】每一行输入一个整数,输入若干个整数,输入0结束 【输出形式】如果列表中有数据,则输出两行,第一行用列表格式输出全部数据,第2行输出总和、个数、平均值(不必设置格式)。如果列表中没有数据,则只输出[] 【样例输入1】 10 20 30 40 50 0 【样例输出1】 [10, 20, 30, 40, 50] 150 5 30.0 【样例输入2】 123
时间: 2024-02-11 10:09:18 浏览: 52
好的,这是一道关于一维整数列表输入输出的练习题。以下是我给出的 Python 代码实现:
```python
nums = []
num = int(input())
while num != 0:
nums.append(num)
num = int(input())
if len(nums) == 0:
print("[]")
else:
print(nums)
total = sum(nums)
count = len(nums)
average = total / count
print(total, count, average)
```
你可以将上述代码复制到你的代码编辑器中进行运行测试。
相关问题
用c语言不使用数组统计一维数组中元素的最大值、最小值、总和及平均值。 输入格式: 第一行输入一个正整数n(1≤n≤20).第一行输入n个整数,其间以空格分隔。 输出格式: 输出数组中元素的最大值、最小值、总和及平均值。格式为 max=最大值 min=最小值 sum-总和 average=平均值(保留 2位小数) 输入样例 10 12345678910 输出样例: max=10 min-1 sum=55 average=5.50
以下是使用循环实现的C语言代码:
```c
#include <stdio.h>
int main() {
int n, num, max, min, sum;
float average;
scanf("%d", &n);
sum = 0;
scanf("%d", &num);
max = num;
min = num;
sum += num;
for (int i = 1; i < n; i++) {
scanf("%d", &num);
if (num > max) {
max = num;
}
if (num < min) {
min = num;
}
sum += num;
}
average = (float)sum / n;
printf("max=%d min=%d sum=%d average=%.2f", max, min, sum, average);
return 0;
}
```
程序首先读取整数n,表示数组中元素的个数。然后程序在for循环中读取n个整数,同时统计最大值、最小值、总和。最后计算平均值并输出结果。
用c语言实现第一行输入一个1-20的正整数n,第二行输入n个整数,其间用空格分隔,实现一维数组中元素的最大值、最小值、总和和平均值
下面是使用C语言实现的代码:
```c
#include <stdio.h>
int main() {
int n, i, max, min, sum = 0;
float average;
int arr[20];
printf("请输入一个1-20的正整数n:");
scanf("%d", &n);
// 输入n个整数
printf("请输入%d个整数,用空格分隔:", n);
for (i = 0; i < n; i++) {
scanf("%d", &arr[i]);
}
// 计算最大值、最小值、总和和平均值
max = min = arr[0];
for (i = 0; i < n; i++) {
if (arr[i] > max) {
max = arr[i];
}
if (arr[i] < min) {
min = arr[i];
}
sum += arr[i];
}
average = sum * 1.0 / n;
// 输出结果
printf("最大值:%d\n", max);
printf("最小值:%d\n", min);
printf("总和:%d\n", sum);
printf("平均值:%f\n", average);
return 0;
}
```
运行结果如下:
```
请输入一个1-20的正整数n:5
请输入5个整数,用空格分隔:1 2 3 4 5
最大值:5
最小值:1
总和:15
平均值:3.000000
```
阅读全文