一个班20个学生的成绩,存放在一个一维数组中,要求找出其中成绩最高的学生成绩和该生的序号。思路:遍历1维数组,找到max值并记录index,输出,c语言表达
时间: 2024-12-17 18:27:28 浏览: 13
在C语言中,你可以通过遍历一维数组的方式来寻找最高分及其对应的索引。以下是简单的步骤和代码示例:
1. 初始化两个变量:`score`用于存储当前最高分数,`highestIndex`用于记录最高分数所在的索引,假设初始值都是数组的第一个元素的值。
```c
int score = arr[0];
int highestIndex = 0;
```
2. 使用for循环遍历整个数组,从第二个元素开始,因为我们要比较的是相对值而非绝对最小。
```c
for (int i = 1; i < 20; i++) {
```
3. 比较当前元素与`score`,如果当前元素大于`score`,则更新`score`和`highestIndex`。
```c
if (arr[i] > score) {
score = arr[i];
highestIndex = i;
}
}
```
4. 遍历结束后,`score`就是最高分,`highestIndex`是对应的成绩所在的学生序号。可以打印出结果。
```c
printf("最高分是 %d,对应的学生序号是 %d\n", score, highestIndex);
```
完整的C语言代码如下:
```c
#include <stdio.h>
int main() {
int arr[] = { // 请替换为实际的20个学生成绩
...,
...,
...,
...,
...,
};
int score = arr[0];
int highestIndex = 0;
for (int i = 1; i < 20; i++) {
if (arr[i] > score) {
score = arr[i];
highestIndex = i;
}
}
printf("最高分是 %d,对应的学生序号是 %d\n", score, highestIndex);
return 0;
}
```
阅读全文