输入五个数字在数组中,判断数字的最大值和最小值,并求出最大值和最小值的和 例:输入:1 2 3 4 5 输出:最大值:5 最小值:1 和:6
时间: 2024-12-06 21:26:10 浏览: 11
java 输入一个数字组成的数组(输出该数组的最大值和最小值)
在C语言中,你可以通过遍历数组并跟踪当前找到的最大值和最小值来解决这个问题。以下是一个简单的示例函数:
```c
#include <stdio.h>
#include <assert.h>
// 函数声明
void findMaxMin(int arr[], int n, int* max, int* min);
int main() {
int numbers[] = {1, 2, 3, 4, 5};
int n = sizeof(numbers) / sizeof(numbers[0]);
int max_val, min_val;
// 调用函数并初始化结果变量
findMaxMin(numbers, n, &max_val, &min_val);
printf("最大值:%d\n", max_val);
printf("最小值:%d\n", min_val);
printf("最大值和最小值之和:%d\n", max_val + min_val);
return 0;
}
// 查找最大值和最小值的函数
void findMaxMin(int arr[], int n, int* max, int* min) {
*max = arr[0]; // 初始化最大值为第一个元素
*min = arr[0]; // 初始化最小值为第一个元素
// 遍历数组
for (int i = 1; i < n; i++) {
if (arr[i] > *max) {
*max = arr[i]; // 更新最大值
} else if (arr[i] < *min) {
*min = arr[i]; // 更新最小值
}
}
assert(*max != *min); // 确保数组中有不同的值(避免溢出)
}
```
在这个示例中,我们首先定义了一个函数`findMaxMin`,它接收数组、数组长度以及指向最大值和最小值的指针。函数内部通过比较每个元素找到最大值和最小值,然后更新相应的指针。最后,在主函数中调用此函数并打印结果。
阅读全文