定义一维数组,从键盘输入10个成绩存入一维数组中,然后求出最高成绩,最低成绩和它们在数组中的位置(即数组元素的下标+1)
时间: 2024-02-18 16:01:26 浏览: 64
好的,以下是代码实现:
```python
scores = []
for i in range(10):
score = int(input("请输入第{}个成绩:".format(i+1)))
scores.append(score)
max_score = max(scores)
min_score = min(scores)
max_index = scores.index(max_score) + 1
min_index = scores.index(min_score) + 1
print("最高成绩为{},位置为{};最低成绩为{},位置为{}。".format(max_score, max_index, min_score, min_index))
```
代码运行时会依次提示输入10个成绩,然后输出最高成绩、最低成绩以及它们在数组中的位置。注意,在计算位置时,由于 Python 中的数组下标从0开始,因此需要将位置加1。
相关问题
c语言定义一维数组,从键盘输入10个成绩存入一维数组中,然后求出最高成绩,最低成绩和它们在数组中的位置(即数组元素的下标+1)
好的,以下是C语言的代码实现:
```c
#include <stdio.h>
int main() {
int scores[10];
int i, max_score, min_score, max_index, min_index;
for (i = 0; i < 10; i++) {
printf("请输入第%d个成绩:", i+1);
scanf("%d", &scores[i]);
}
max_score = scores[0];
min_score = scores[0];
max_index = 1;
min_index = 1;
for (i = 1; i < 10; i++) {
if (scores[i] > max_score) {
max_score = scores[i];
max_index = i + 1;
}
if (scores[i] < min_score) {
min_score = scores[i];
min_index = i + 1;
}
}
printf("最高成绩为%d,位置为%d;最低成绩为%d,位置为%d。\n", max_score, max_index, min_score, min_index);
return 0;
}
```
代码中先定义一个长度为10的整型数组`scores`,然后通过for循环从键盘输入10个成绩存入数组中。接着,使用for循环遍历数组,求出最高成绩、最低成绩以及它们在数组中的位置。注意,在计算位置时,由于C语言中的数组下标也是从0开始的,因此需要将位置加1。最后输出结果即可。
(5)利用指针访问数组 通过键盘输入10个整数存入一维数组中,再按照反序输出。
在计算机程序中,可以使用指针来访问数组元素。首先,你需要动态地分配内存来存储这10个整数,并将它们逐个输入到数组中。以下是一个简单的步骤描述:
1. 定义一个整型变量作为数组的起始地址,也就是指针,假设它叫做`arr`。
2. 使用`malloc`函数为数组分配足够的空间,例如`arr = (int*)malloc(10 * sizeof(int))`,这里我们预设了数组大小为10。
3. 创建一个循环,提示用户输入10个整数,并将其存储在数组的位置上,比如`*arr++ = input;`表示把当前的输入值放在指针所指向的位置,然后指针自动向前移动一位。
4. 输入完成后,别忘了初始化最后一个元素,如`arr[9] = input;`。
5. 要按照反序输出数组,你可以创建另一个循环,从数组的末尾开始遍历,每次打印出指针所指向的值,然后指针向数组开头方向移动,直到达到数组的第一个元素。
下面是伪代码形式的示例:
```c
#include <stdio.h>
#include <stdlib.h>
int main() {
int size = 10;
int *arr = (int*)malloc(size * sizeof(int));
// 获取用户输入并存储在数组中
for (int i = 0; i < size; ++i) {
scanf("%d", arr + i); // 指针加i是因为数组下标从0开始
}
// 反序输出数组
for (int i = size - 1; i >= 0; --i) {
printf("%d ", *(arr + i)); // 输出指针所指向的值
}
free(arr); // 释放已分配的内存
return 0;
}
阅读全文