已知有10个同学的成绩,求最高分和最低分以及相应分数所在的位置。从键盘输入10个整数存放在数组中,假设这10个数互不相同,且无序排列。请找出其中最大数及它在数组中的下标,以及最小数和下标。
时间: 2023-04-25 18:02:07 浏览: 70
最高分为数组中的最大值,最低分为数组中的最小值。可以通过遍历数组来找到最大值和最小值,并记录它们在数组中的位置。
具体实现方法如下:
1. 从键盘输入10个整数存放在数组中。
2. 假设第一个数为最大值和最小值,记录它们在数组中的位置。
3. 遍历数组,如果当前数比最大值大,则更新最大值和它在数组中的位置;如果当前数比最小值小,则更新最小值和它在数组中的位置。
4. 输出最大值、最小值及它们在数组中的位置。
代码示例:
#include <stdio.h>
int main()
{
int scores[10];
int max_score, min_score;
int max_index, min_index;
int i;
// 从键盘输入10个整数存放在数组中
printf("请输入10个整数:\n");
for (i = ; i < 10; i++) {
scanf("%d", &scores[i]);
}
// 假设第一个数为最大值和最小值,记录它们在数组中的位置
max_score = scores[];
min_score = scores[];
max_index = ;
min_index = ;
// 遍历数组,找到最大值和最小值
for (i = 1; i < 10; i++) {
if (scores[i] > max_score) {
max_score = scores[i];
max_index = i;
}
if (scores[i] < min_score) {
min_score = scores[i];
min_index = i;
}
}
// 输出最大值、最小值及它们在数组中的位置
printf("最高分为%d,位于数组的第%d个位置\n", max_score, max_index