给定一个整数数组 arr arr = [10, 3, 5, 6, 20],编写一个函数找出数组中任意两个不同元素之间的最大差值。输出数组中任意两个不同元素之间的最大差值。 只能用C语言,不能用c++
时间: 2024-09-20 21:10:21 浏览: 35
php使用array_rand()函数从数组中随机选择一个或多个元素
你可以使用C语言编写一个函数来找到给定数组arr中任意两个不同元素的最大差值。这里是一个简单的实现思路:
```c
#include <stdio.h>
#include <limits.h>
// 函数声明
int findMaxDifference(int arr[], int n);
int main() {
int arr[] = {10, 3, 5, 6, 20};
int n = sizeof(arr) / sizeof(arr[0]);
int maxDiff = findMaxDifference(arr, n);
printf("The maximum difference between any two different elements is: %d\n", maxDiff);
return 0;
}
// 实现findMaxDifference函数
int findMaxDifference(int arr[], int n) {
int maxVal = INT_MIN; // 初始化最大值为最小整数值
int minVal = INT_MAX; // 初始化最小值为最大整数值
for (int i = 0; i < n; i++) {
if (arr[i] > maxVal) {
maxVal = arr[i];
}
if (arr[i] < minVal) {
minVal = arr[i];
}
}
// 最大差值等于最大值减去最小值
return maxVal - minVal;
}
```
这个程序首先找到数组中的最大值和最小值,然后返回它们的差作为最大差值。`findMaxDifference`函数中利用了C语言提供的`INT_MIN`和`INT_MAX`常量来初始化最大值和最小值。
阅读全文