C语言一维数组求最大值和下标
时间: 2024-02-14 20:10:07 浏览: 118
好的,以下是 C 语言代码实现:
```c
#include <stdio.h>
int main() {
int arr[] = {5, 8, 3, 1, 9, 7, 6};
int n = sizeof(arr) / sizeof(arr[0]);
int max = arr[0];
int index = 0;
for (int i = 1; i < n; i++) {
if (arr[i] > max) {
max = arr[i];
index = i;
}
}
printf("最大值:%d\n下标:%d", max, index);
return 0;
}
```
输出结果如下:
```
最大值:9
下标:4
```
以上代码中,我们首先定义了一个数组 `arr`,并且使用 `sizeof` 函数计算出了数组的长度 `n`。接着,我们定义了变量 `max` 和 `index`,用于储存最大值和下标。然后,我们使用 for 循环遍历数组,如果当前元素大于最大值,则将当前元素赋值给 `max`,并且将当前的下标赋值给 `index`。最后,输出最大值和对应的下标即可。
相关问题
用c语言求长度为10的一维数组元素最大值及其下标
可以按照以下步骤实现:
1. 声明一个长度为10的一维整型数组和两个整型变量,用于存储最大值和最大值下标。
2. 通过循环遍历数组中的所有元素,依次与当前最大值进行比较,如果大于当前最大值,则更新最大值和最大值下标。
3. 循环结束后,输出最大值和最大值下标。
下面是示例代码:
```c
#include <stdio.h>
int main() {
int arr[10] = {1, 3, 5, 7, 9, 2, 4, 6, 8, 0}; // 声明长度为10的一维整型数组
int max = arr[0]; // 初始最大值为数组第一个元素
int maxIndex = 0; // 初始最大值下标为0
for (int i = 1; i < 10; i++) { // 循环遍历数组
if (arr[i] > max) { // 如果当前元素大于最大值
max = arr[i]; // 更新最大值
maxIndex = i; // 更新最大值下标
}
}
printf("最大值为:%d,下标为:%d\n", max, maxIndex); // 输出结果
return 0;
}
```
输出结果为:
```
最大值为:9,下标为:4
```
用C语言求长度为10的一维数组元素最大值及其下标
可以使用以下代码实现:
```c
#include <stdio.h>
int main() {
int array[10] = {3, 5, 1, 7, 4, 2, 8, 6, 10, 9}; // 定义长度为10的一维数组
int max = array[0]; // 假设第一个元素为最大值
int index = 0; // 最大值下标初始化为0
for (int i = 1; i < 10; i++) { // 遍历数组
if (array[i] > max) { // 如果当前值大于最大值
max = array[i]; // 更新最大值
index = i; // 更新最大值下标
}
}
printf("最大值为:%d,下标为:%d\n", max, index); // 输出结果
return 0;
}
```
这里假设数组中的元素为 {3, 5, 1, 7, 4, 2, 8, 6, 10, 9},输出结果为:
```
最大值为:10,下标为:8
```