输入10个学生成绩到一维数组,统计及格人数及及格率
时间: 2024-04-30 20:20:19 浏览: 127
好的,以下是一个简单的 Python 代码实现:
```python
scores = [] # 定义空列表用于存储学生成绩
pass_num = 0 # 及格人数
n = 10 # 学生人数
# 输入学生成绩
for i in range(n):
score = float(input("请输入第{}个学生的成绩:".format(i+1)))
scores.append(score)
if score >= 60:
pass_num += 1
# 计算及格率
pass_rate = pass_num / n * 100
# 输出统计结果
print("及格人数为:{},及格率为:{:.2f}%".format(pass_num, pass_rate))
```
运行程序后,依次输入10个学生的成绩,程序会自动统计及格人数及及格率并输出。注意,这里假设及格线为60分,如果需要修改及格线,只需修改代码中的判断条件即可。
相关问题
从键盘输入10个学生成绩到一维数组,统计及格人数及格率
下面是使用 C++ 实现的代码:
```cpp
#include <iostream>
using namespace std;
int main() {
const int SIZE = 10; // 数组长度为10
int scores[SIZE]; // 定义数组
int count = 0; // 记录及格人数
// 从键盘输入学生成绩并存入数组
for (int i = 0; i < SIZE; i++) {
cout << "请输入第" << i + 1 << "个学生的成绩:";
cin >> scores[i];
}
// 统计及格人数
for (int i = 0; i < SIZE; i++) {
if (scores[i] >= 60) {
count++;
}
}
// 计算及格率
float rate = count * 100.0 / SIZE;
// 输出结果
cout << "及格人数为:" << count << endl;
cout << "及格率为:" << rate << "%" << endl;
return 0;
}
```
这里使用了一个常量 `SIZE` 来定义数组的长度,避免了使用魔法数字。循环中使用 `cin` 从键盘输入学生成绩,然后使用 `if` 判断是否及格,更新 `count` 变量。最后,根据 `count` 和 `SIZE` 计算及格率,并输出结果。
用C语言输出,统计《程序设计》课程成绩的及格率。 (1)主函数功能:输入学生人数n(<=40)和各位学生的成绩(使用一维数组存放),通过调用子函数count得到成绩的及格率,并输出及格率。 (2)子函数功能:统计存放在长度为n的一维数组score中成绩的及格率,并用return返回及格率。子函数头要求为:double count(double score[ ], int n)。
以下是代码实现:
```c
#include <stdio.h>
double count(double score[], int n) {
int i, pass = 0;
for (i = 0; i < n; i++) {
if (score[i] >= 60) {
pass++;
}
}
return (double) pass / n;
}
int main() {
int n, i;
double score[40];
printf("请输入学生人数:");
scanf("%d", &n);
printf("请输入各位学生的成绩:\n");
for (i = 0; i < n; i++) {
printf("第%d位学生的成绩:", i + 1);
scanf("%lf", &score[i]);
}
double passRate = count(score, n) * 100.0;
printf("及格率为:%.2lf%%\n", passRate);
return 0;
}
```
代码的思路是,在主函数中先输入学生人数和各位学生的成绩,并将成绩存放在一维数组中。然后调用子函数count来统计成绩的及格率,并输出结果。子函数count遍历一维数组score,统计成绩大于等于60分的学生人数,最后返回及格率。注意输出及格率的时候要乘以100,并保留两位小数。
阅读全文