用c语言通过函数fun计算并返回数组最大值的位置。在主函数中输出最大值及其位置
时间: 2024-01-22 18:19:00 浏览: 65
以下是实现代码:
```c
#include <stdio.h>
int fun(int arr[], int len) {
int max = arr[0];
int maxIndex = 0;
for (int i = 1; i < len; i++) {
if (arr[i] > max) {
max = arr[i];
maxIndex = i;
}
}
return maxIndex;
}
int main() {
int arr[] = {1, 5, 3, 9, 2};
int len = sizeof(arr) / sizeof(int);
int maxIndex = fun(arr, len);
printf("最大值为%d,位置为%d\n", arr[maxIndex], maxIndex);
return 0;
}
```
首先在函数 `fun` 中,我们遍历整个数组并记录最大值以及最大值所在的位置,然后返回最大值的位置。在主函数中,我们调用 `fun` 函数得到最大值的位置,并根据位置输出最大值及其位置。
相关问题
通过函数fun计算并返回数组最大值位置在主函数中输出最大值及其位置用c语言实现
以下是用 C 语言实现的代码:
```c
#include <stdio.h>
int fun(int arr[], int size)
{
int max_val = arr[0];
int max_idx = 0;
for (int i = 1; i < size; i++)
{
if (arr[i] > max_val)
{
max_val = arr[i];
max_idx = i;
}
}
return max_idx;
}
int main()
{
int size = 5;
int arr[] = {10, 2, 8, 6, 4};
int max_idx = fun(arr, size);
int max_val = arr[max_idx];
printf("The maximum value is %d, and its position is %d.\n", max_val, max_idx);
return 0;
}
```
在 `fun` 函数中,我们遍历整个数组,找到最大值以及其位置,然后返回最大值的下标。在 `main` 函数中,我们调用 `fun` 函数得到最大值的下标,然后再通过数组下标获取最大值,最后输出最大值以及其位置。
编写c语言程序通过函数fun计算并返回数组最大值的位置,在主函数中输出最大值及其位置
以下是一个示例程序,其中fun函数用于计算并返回数组最大值的位置:
```c
#include <stdio.h>
int fun(int arr[], int size) {
int max = arr[0];
int max_pos = 0;
for (int i = 1; i < size; i++) {
if (arr[i] > max) {
max = arr[i];
max_pos = i;
}
}
return max_pos;
}
int main() {
int arr[] = {3, 7, 2, 8, 5};
int size = sizeof(arr) / sizeof(arr[0]);
int max_pos = fun(arr, size);
int max_val = arr[max_pos];
printf("最大值为: %d,位置为: %d\n", max_val, max_pos);
return 0;
}
```
程序中,我们定义了一个名为fun的函数,该函数接受一个整数数组和其大小作为参数,并返回数组中最大值的位置。在主函数中,我们定义一个整数数组arr,并使用fun函数计算其最大值及其位置,然后输出结果。
注意,我们需要在主函数中使用数组的大小来调用fun函数,因为在C语言中,数组作为参数传递给函数时会自动转换为指向第一个元素的指针。因此,函数无法确定数组的大小,我们需要手动传递数组的大小作为参数。
阅读全文