c语言编程实现求一组数组a[20]钟的最大值及其位置。
时间: 2024-09-24 20:22:53 浏览: 27
在C语言中,你可以通过遍历数组并同时跟踪最大值和它的索引来实现这个功能。这里是一个简单的示例程序:
```c
#include <stdio.h>
// 函数声明
void findMax(int arr[], int size, int* max_val, int* max_index);
int main() {
int a[20] = {5, 9, 3, 7, 1, 8, 4, 6, 2, 10};
int max_val = -1; // 初始化最大值为负一(小于数组中的所有元素)
int max_index = -1;
findMax(a, sizeof(a) / sizeof(a[0]), &max_val, &max_index);
printf("最大值是 %d,出现在索引 %d\n", max_val, max_index);
return 0;
}
// 求最大值及位置的函数
void findMax(int arr[], int size, int* max_val, int* max_index) {
for (int i = 0; i < size; i++) {
if (arr[i] > *max_val) {
*max_val = arr[i];
*max_index = i;
}
}
}
```
在这个程序中,我们首先在`main()`函数中初始化了一个数组`a`,然后创建了两个变量`max_val`和`max_index`分别用于存储最大值和其对应的索引。接着调用`findMax()`函数,它通过比较数组中的每个元素和当前最大值,更新最大值和索引。
当遍历完成后,`main()`会打印出找到的最大值及其位置。
阅读全文