👉有50个学生,要求输出成绩在80分以上的学生的学号和成绩用devc++
时间: 2024-10-19 18:05:39 浏览: 38
在Dev-C++中,你可以使用结构体(struct)来存储学生的学号和成绩,然后通过循环遍历数组并检查每个学生的成绩是否超过80分。以下是一个简单的示例程序:
```cpp
#include <iostream>
using namespace std;
// 定义一个结构体表示学生
struct Student {
int id; // 学号
int score; // 成绩
};
int main() {
const int totalStudents = 50;
Student students[totalStudents]; // 创建一个包含50个元素的数组
// 假设已从输入或其他源填充了学生的数据
for (int i = 0; i < totalStudents; ++i) {
cin >> students[i].id >> students[i].score;
}
cout << "学号和成绩大于等于80分的学生如下:" << endl;
for (int i = 0; i < totalStudents; ++i) {
if (students[i].score >= 80) {
cout << "学号: " << students[i].id << ", 成绩: " << students[i].score << endl;
}
}
return 0;
}
相关问题
使用Dev C++ 软件,2. 有5个学生,每个学生的数据包括学号、姓名、3门课程的成绩,从键盘输入 5个学生数据,要求输出各学生3门课程平均成绩.
在Dev C++ 中,我们可以创建一个结构体来存储学生的信息,包括学号、姓名和三门课程的成绩。首先,需要定义一个结构体,然后通过循环读入学生信息,并计算平均成绩。以下是代码的基本步骤:
```cpp
#include <iostream>
#include <string> // 引入字符串库
// 定义学生结构体
struct Student {
int id;
std::string name;
float course1, course2, course3;
};
int main() {
const int NUM_STUDENTS = 5;
Student students[NUM_STUDENTS]; // 存储5个学生的数组
float total_score[3] = {0}; // 用于存储每门课的总分
float average_scores[3]; // 保存平均成绩
// 输入学生数据
for (int i = 0; i < NUM_STUDENTS; ++i) {
std::cout << "请输入第" << (i + 1) << "位学生的信息:\n";
std::cin >> students[i].id >> students[i].name;
// 读入三门课程的成绩
std::cin >> students[i].course1 >> students[i].course2 >> students[i].course3;
// 更新每门课的总分
total_score[0] += students[i].course1;
total_score[1] += students[i].course2;
total_score[2] += students[i].course3;
}
// 计算并输出平均成绩
for (int j = 0; j < 3; ++j) {
average_scores[j] = total_score[j] / NUM_STUDENTS;
std::cout << "学生们的第" << (j + 1) << "门课程平均成绩是: " << average_scores[j] << std::endl;
}
return 0;
}
```
在这个程序中,我们首先定义了一个包含学号、姓名及三门课程成绩的 `Student` 结构。然后遍历学生数组,依次读取每个学生的数据并更新总分。最后,我们将总分除以学生总数得到平均成绩。
用dev-c++设某班级有n个学生,要求设计以下算法:输入全班学生的学号和某一门课程的考试成绩
可以使用数组来存储学生的学号和考试成绩,然后使用排序算法对成绩进行排序,最后输出排名前几名的学生的学号和成绩。以下是示例代码:
```c
#include <stdio.h>
#define MAX_STUDENTS 100
int main() {
int n, i, j;
int id[MAX_STUDENTS], score[MAX_STUDENTS];
printf("请输入学生人数:");
scanf("%d", &n);
printf("请输入学生的学号和考试成绩:\n");
for (i = 0; i < n; i++) {
scanf("%d %d", &id[i], &score[i]);
}
// 使用冒泡排序对成绩进行排序
for (i = 0; i < n - 1; i++) {
for (j = 0; j < n - i - 1; j++) {
if (score[j] < score[j + 1]) {
int temp = score[j];
score[j] = score[j + 1];
score[j + 1] = temp;
temp = id[j];
id[j] = id[j + 1];
id[j + 1] = temp;
}
}
}
printf("排名前几名的学生的学号和成绩是:\n");
for (i = 0; i < 3 && i < n; i++) {
printf("%d %d\n", id[i], score[i]);
}
return 0;
}
```
注意:这里只输出了排名前三名的学生的学号和成绩,可以根据需要修改输出的数量。
阅读全文