定义学号(id),姓名(name),c成绩(cscore),java成绩(javascore)的学员结构体,定义3个学员\r\n\r\n的学员结构体数组,动态初始化键盘输入,遍历输出,输出结果参考如下(具体数
时间: 2023-06-05 13:47:55 浏览: 182
量根据输入而定):
定义学员结构体:
struct Student{
int id;
char name[20];
float cscore;
float javascore;
};
定义3个学员的结构体数组:
Student stu[3];
动态初始化键盘输入:
for(int i=0;i<3;i++){
printf("请输入第%d个学员的信息:\n",i+1);
printf("学号:");
scanf("%d",&stu[i].id);
printf("姓名:");
scanf("%s",stu[i].name);
printf("C语言成绩:");
scanf("%f",&stu[i].cscore);
printf("Java成绩:");
scanf("%f",&stu[i].javascore);
}
遍历输出:
for(int i=0;i<3;i++){
printf("第%d个学员的信息:\n",i+1);
printf("学号:%d\n",stu[i].id);
printf("姓名:%s\n",stu[i].name);
printf("C语言成绩:%.2f\n",stu[i].cscore);
printf("Java成绩:%.2f\n",stu[i].javascore);
}
相关问题
struct函数输入10个学生的班级学号姓名C语言成绩高数成绩英语成绩
您好!对于您的需求,我可以为您提供一个示例的 struct 函数,它可以输入10个学生的班级、学号、姓名、C语言成绩、高数成绩和英语成绩。以下是示例代码:
```c
#include <stdio.h>
struct Student {
int class;
int id;
char name[50];
float cScore;
float mathScore;
float englishScore;
};
void inputStudents(struct Student students[], int numStudents) {
for (int i = 0; i < numStudents; i++) {
struct Student student;
printf("请输入第 %d 个学生的信息:\n", i + 1);
printf("班级:");
scanf("%d", &student.class);
printf("学号:");
scanf("%d", &student.id);
printf("姓名:");
scanf("%s", student.name);
printf("C语言成绩:");
scanf("%f", &student.cScore);
printf("高数成绩:");
scanf("%f", &student.mathScore);
printf("英语成绩:");
scanf("%f", &student.englishScore);
students[i] = student;
}
}
int main() {
struct Student students[10];
inputStudents(students, 10);
// 打印学生信息
printf("\n学生信息如下:\n");
for (int i = 0; i < 10; i++) {
printf("学生 %d\n", i + 1);
printf("班级:%d\n", students[i].class);
printf("学号:%d\n", students[i].id);
printf("姓名:%s\n", students[i].name);
printf("C语言成绩:%.2f\n", students[i].cScore);
printf("高数成绩:%.2f\n", students[i].mathScore);
printf("英语成绩:%.2f\n", students[i].englishScore);
printf("\n");
}
return 0;
}
```
您可以在此基础上进行修改和扩展,以满足您的具体需求。请注意,此示例仅提供了一个简单的输入和打印学生信息的功能,您可能需要根据实际情况进行进一步的处理。
使用C++,设计一个考试成绩类CScore,分别通过3个成员函数实现输入学号姓名成绩;计算最低分最高分和平均分;输出结果
以下是基于你的要求设计的CScore类的代码:
```cpp
#include <iostream>
#include <string>
#include <vector>
#include <algorithm>
using namespace std;
class CScore {
public:
void Input() {
cout << "请输入学生的学号:";
cin >> m_number;
cout << "请输入学生的姓名:";
cin >> m_name;
cout << "请输入学生的成绩:";
cin >> m_score;
m_scores.push_back(m_score);
}
void Calculate() {
m_minScore = *min_element(m_scores.begin(), m_scores.end());
m_maxScore = *max_element(m_scores.begin(), m_scores.end());
double sum = 0;
for (int i = 0; i < m_scores.size(); i++) {
sum += m_scores[i];
}
m_avgScore = sum / m_scores.size();
}
void Output() {
cout << "学号:" << m_number << endl;
cout << "姓名:" << m_name << endl;
cout << "最低分:" << m_minScore << endl;
cout << "最高分:" << m_maxScore << endl;
cout << "平均分:" << m_avgScore << endl;
}
private:
string m_number;
string m_name;
double m_score;
vector<double> m_scores;
double m_minScore;
double m_maxScore;
double m_avgScore;
};
int main() {
CScore score;
score.Input();
score.Input();
score.Calculate();
score.Output();
return 0;
}
```
在这个CScore类中,我们定义了三个成员函数,分别用于输入学号、姓名和成绩,计算最低分、最高分和平均分以及输出结果。我们使用了一个vector容器来存储学生的成绩,方便后续的计算。
在主函数中,我们创建了一个CScore对象score,并连续调用两次Input函数来输入两个学生的信息。然后,我们调用Calculate函数来计算最低分、最高分和平均分,并调用Output函数来输出结果。
以上代码是基于你的要求而设计的,仅供参考。如果你有其他的要求,可以在评论中提出,我将尽力为你解答。
阅读全文