c语言21.一维数组输入输出(正序输出、逆序输出)、求最大值,求最小值,求和
时间: 2025-03-26 22:14:11 浏览: 87
### C语言实现一维数组操作
#### 1. 定义并初始化一维数组
为了处理一维数组,在程序开始部分声明所需变量,并通过`scanf()`函数获取用户输入来填充数组。
```c
#include <stdio.h>
int main() {
const int SIZE = 5;
int numbers[SIZE];
printf("请输入%d个整数:\n", SIZE);
for (int i = 0; i < SIZE; ++i) {
scanf("%d", &numbers[i]);
}
}
```
此段代码创建了一个大小固定的整型数组用于存储来自用户的输入数据[^1]。
#### 2. 正向打印一维数组元素
利用循环结构可以轻松地按照原始顺序显示所有已存入的数据项:
```c
printf("按原序输出:");
for (int j = 0; j < SIZE; ++j) {
printf(" %d", numbers[j]);
}
puts("");
```
这段代码展示了如何遍历整个数组并将各元素逐个输出到屏幕上[^4]。
#### 3. 计算最大值、最小值及总和
引入额外两个变量分别记录当前遇到的最大值(`max`)与最小值(`min`),同时累加器(`sum`)负责累积求和运算。初始设定时可取第一个元素作为参照基准。
```c
// 初始化最大值、最小值为首个元素;设置总和初值为零
int sum = 0, max = numbers[0], min = numbers[0];
for (int k = 0; k < SIZE; ++k) {
if (numbers[k] > max) max = numbers[k]; // 更新最大值
if (numbers[k] < min) min = numbers[k]; // 更新最小值
sum += numbers[k]; // 累计求和
}
printf("\n最大值=%d, 最小值=%d, 总和=%d\n", max, min, sum);
```
上述逻辑实现了对给定范围内数值的全面扫描以找到极端情况下的边界条件,并完成了总体数量上的统计工作[^2]。
#### 4. 反转后重新排列的一维数组展示
最后一步是对原有列表实施倒置变换——即让最后一个位置的内容移到最前边去,依此类推直到完成全部成员的位置互换为止。
```c
printf("反转后的序列:");
for (int l = SIZE - 1; l >= 0; --l) {
printf(" %d", numbers[l]);
}
puts(""); // 打印完毕换行
```
这里采用反向迭代的方式访问索引,从而达到逆转效果,最终呈现出颠倒过来的新版图景。
阅读全文
相关推荐


















