编写一个函数 n=10 找出数组最大元素和最小元素的下标 并在主函数输出最大元素和最小元素下标值
时间: 2024-02-28 08:54:46 浏览: 82
好的,以下是实现代码:
```c
#include <stdio.h>
void find_max_min_index(int arr[], int n, int* max_index, int* min_index)
{
*max_index = *min_index = 0; // 初始化最大和最小元素下标为0
for (int i = 1; i < n; i++)
{
if (arr[i] > arr[*max_index])
{
*max_index = i;
}
else if (arr[i] < arr[*min_index])
{
*min_index = i;
}
}
}
int main()
{
int arr[10] = {1, 5, 3, 7, 9, 2, 8, 4, 6, 0};
int max_index, min_index;
find_max_min_index(arr, 10, &max_index, &min_index);
printf("最大元素下标:%d,最大元素值:%d\n", max_index, arr[max_index]);
printf("最小元素下标:%d,最小元素值:%d\n", min_index, arr[min_index]);
return 0;
}
```
在这个程序中,我们定义了一个函数 `find_max_min_index`,它接受一个整数数组、数组长度以及两个指针,用于存储最大和最小元素的下标。函数内部使用一个循环遍历数组,找出最大和最小元素的下标,并将它们存储在指针所指向的变量中。
在主函数中,我们定义一个长度为10的整型数组,并调用 `find_max_min_index` 函数来查找最大和最小元素的下标。最后,我们使用 `printf` 函数输出最大元素的下标和值,以及最小元素的下标和值。
阅读全文