c语言求最大值及其对应最小下标
时间: 2023-12-21 22:56:21 浏览: 47
以下是一个使用 C 语言编写的程序,可以求出给定数组中的最大值及其对应的最小下标:
```c
#include <stdio.h>
int main() {
int n, i, max, min_index;
printf("请输入数组长度:");
scanf("%d", &n);
int a[n];
printf("请输入数组元素:");
for (i = 0; i < n; i++) {
scanf("%d", &a[i]);
}
max = a[0];
min_index = 0;
for (i = 1; i < n; i++) {
if (a[i] > max) {
max = a[i];
min_index = i;
}
}
printf("最大值为:%d\n", max);
printf("最大值对应的最小下标为:%d\n", min_index);
return 0;
}
```
该程序首先要求用户输入数组长度和元素,并使用循环将元素存储在数组中。然后,使用另一个循环来查找最大值并记录其对应的最小下标。最后,输出最大值和最小下标。
相关问题
c语言找出给定n个数中的最大值及其对应的最小下标
可以使用一个循环来遍历这n个数,同时记录当前的最大值和对应的下标,具体实现如下:
```c
#include <stdio.h>
int main() {
int n;
printf("请输入数字个数:");
scanf("%d", &n);
int arr[n];
printf("请输入%d个数字:", n);
for (int i = 0; i < n; i++) {
scanf("%d", &arr[i]);
}
int max = arr[0], min_index = 0;
for (int i = 1; i < n; i++) {
if (arr[i] > max) {
max = arr[i];
min_index = i;
}
}
printf("最大值是%d,对应的最小下标是%d\n", max, min_index);
return 0;
}
```
首先,我们通过`scanf`函数获取输入的数字个数`n`,然后声明一个长度为`n`的数组`arr`用于存储这些数字。接着,我们通过一个循环遍历这`n`个数字,并将它们依次存储到数组`arr`中。
然后,我们定义两个变量`max`和`min_index`,分别用于记录当前的最大值和对应的最小下标。我们将`max`初始化为数组中的第一个元素`arr[0]`,而`min_index`初始化为`0`。接着,我们通过一个循环来遍历数组`arr`,并依次比较每个元素与`max`的大小关系,如果当前元素大于`max`,则更新`max`和`min_index`的值为当前元素和它的下标。最终,循环结束后,我们就可以得到这n个数中的最大值和对应的最小下标。
最后,我们通过`printf`函数将最大值和最小下标输出到屏幕上。
本题要求编写程序,找出给定的n个数中的最大值及其对应的最小下标(下标从0开始)。 输入格式: 输入在第一行中给出一个正整数n(1<n≤10)。第二行输入n个整数,用空格分开。 输出格式: 在一行中输出最大值及最大值的最小下标,中间用一个空格分开。用C语言编写
以下是C语言的代码实现:
```c
#include <stdio.h>
#define MAXN 10
int main()
{
int n, a[MAXN], max = -1, index;
scanf("%d", &n);
for (int i = 0; i < n; i++)
{
scanf("%d", &a[i]);
if (a[i] > max)
{
max = a[i];
index = i;
}
}
printf("%d %d", max, index);
return 0;
}
```
我们首先定义了一个常量`MAXN`,表示数组的最大长度为10。然后,我们定义了整数变量`n`表示数组的长度,以及一个整型数组`a`用于存储输入的整数。
接着,我们通过`scanf`函数读入`n`和数组`a`的元素。在读入元素的同时,我们用一个变量`max`记录当前找到的最大值,并且用一个变量`index`记录最大值的最小下标。
最后,我们输出最大值及其最小下标,中间用一个空格分开,并且返回0,表示程序正常结束。