实验任务1:选修课学生信息管理2.1 问题描述选修课初期涉及学生的选修和退修,后期涉及成绩的报送和查询。此题模拟实现简单的选修管理。学生信息包括:学号、姓名、学院、平时成绩、期末成绩、总评成绩,编写程序实现对学生和成绩的管理。要求完成以下功能:1)初始学生信息的录入,学生按学院输入,各项成绩初始为0;2)补充新到学生的信息,要求增加后仍保持按学院有序;3)删除退修的学生信息;4)录入平时成绩和期末成绩,计算总评成绩(平时成绩和期末成绩各占50%);5) 生成按学院排列的成绩单文件;6)按学号查询输出学生的完整信息。2.2 输入形式101 zs dxxy201 ls jdxy205 wxe jdxy405 ww ttxy407 ze ttxy-10 2051 104 lw dxxy-1101 zs dxxy 80 90104 lw dxxy 70 80201 ls jdxy 60 70405 ww ttxy 90 90407 ze ttxy 50 90-12012.3 输出形式终端打印输出:201 ls jdxy 60 70 65输出的文本last.txt保存文本:101 zs dxx


以下是使用 Python 语言解决此问题的示例代码: ```python class Student: def __init__(self, student_id, name, college): self.student_id = student_id self.name = name self.college = college self.usual_score = 0 self.final_score = 0 self.total_score = 0 # 初始化学生信息列表 students = [] # 录入初始学生信息 def input_student_info(): while True: info = input() if info == '-1': break student_id, name, college = info.split() students.append(Student(int(student_id), name, college)) # 补充新到学生信息 def add_new_student(): student_id = int(input("请输入学号: ")) name = input("请输入姓名: ") college = input("请输入学院: ") new_student = Student(student_id, name, college) for i in range(len(students)): if students[i].college > college: students.insert(i, new_student) break else: students.append(new_student) # 删除退修学生信息 def delete_student(): student_id = int(input("请输入要删除的学生学号: ")) for student in students: if student.student_id == student_id: students.remove(student) break # 录入成绩并计算总评成绩 def input_score(): for student in students: usual_score = int(input(f"请输入{student.name}的平时成绩: ")) final_score = int(input(f"请输入{student.name}的期末成绩: ")) student.usual_score = usual_score student.final_score = final_score student.total_score = (usual_score + final_score) / 2 # 生成按学院排列的成绩单文件 def generate_report(): with open('last.txt', 'w') as f: for student in students: f.write(f"{student.student_id} {student.name} {student.college}\n") # 按学号查询学生信息 def query_by_student_id(): student_id = int(input("请输入要查询的学号: ")) for student in students: if student.student_id == student_id: print(f"{student.student_id} {student.name} {student.college} {student.usual_score} {student.final_score} {student.total_score}") break else: print("未找到该学号的学生信息") input_student_info() add_new_student() delete_student() input_score() generate_report() query_by_student_id() ``` 您可以根据实际需求对代码进行修改和完善。 [2024-09-26 08:03:43 | AI写代码神器 | 638点数解答]
- 实验任务1:选修课学生信息管理2.1 问题描述选修课初期涉及学生的选修和退修,后期涉及成绩的报送和查询。此题模拟实现简单的选修管理。学生信息包括:学号、姓名、学院、平时成绩、期末成绩、总评成绩,编写程序实现对学生和成绩的管理。要求完成以下功能:1)初始学生信息的录入,学生按学院输入,各项成绩初始为0;2)补充新到学生的信息,要求增加后仍保持按学院有序;3)删除退修的学生信息;4)录入平时成绩和期末成绩,计算总评成绩(平时成绩和期末成绩各占50%);5) 生成按学院排列的成绩单文件;6)按学号查询输出学生的完整信息。2.2 输入形式101 zs dxxy201 ls jdxy205 wxe jdxy405 ww ttxy407 ze ttxy-10 2051 104 lw dxxy-1101 zs dxxy 80 90104 lw dxxy 70 80201 ls jdxy 60 70405 ww ttxy 90 90407 ze ttxy 50 90-12012.3 输出形式终端打印输出:201 ls jdxy 60 70 65输出的文本last.txt保存文本:101 zs dxx(638点数解答 | 2024-09-26 08:03:43)203
- 实验任务1:选修课学生信息管理 用 c 语言来完成 问题描述选修课初期涉及学生的选修和退修,后期涉及成绩的报送和查询。此题模拟实现简单的选修管理。学生信息包括:学号、姓名、学院、平时成绩、期末成绩、总评成绩,编写程序实现对学生和成绩的管理。要求完成以下功能:1)初始学生信息的录入,学生按学院输入,各项成绩初始为0;2)补充新到学生的信息,要求增加后仍保持按学院有序;3)删除退修的学生信息;4)录入平时成绩和期末成绩,计算总评成绩(平时成绩和期末成绩各占50%);5) 生成按学院排列的成绩单文件;6)按学号查询输出学生的完整信息。2.2 输入形式101 zs dxxy201 ls jdxy205 wxe jdxy405 ww ttxy407 ze ttxy-10 2051 104 lw dxxy-1101 zs dxxy 80 90104 lw dxxy 70 80201 ls jdxy 60 70405 ww ttxy 90 90407 ze ttxy 50 90-12012.3 输出形式终端打印输出:201 ls jdxy 60 70 65输出的文本last.txt保存文本:101(1583点数解答 | 2024-09-26 08:04:58)149
- c++程序: 实现一个单门课程成绩管理系统。进入系统时,用户可选择身份:1.教师;2学生。 以教师身份进入后,如果上次已保存了数据,可将文件中数据读取出来,并允许修改部分数据。如果未保存数据,则允许教师录入新的数据。具体功能包括: 可录入或修改课程信息,包括:课程编号、课程名称; 可录入或修改课程的评分项目 (数量任意,不低于3项),包括:项目名称、所占分比例(需进行合法性检测,各项目比例之和为100%);示例如下: 项目名称 所占比例 实验 30% 作业 20% 期中考试 20% 期末考试 30% 注: 一旦录入学生成绩后,评分项目不允许修改;未录入成绩数据时,允许进行修改。 3.可录入、修改、刑除学生(学生数量不限)读门课程的各项成绩,并按照其比例自动算出总成绩;学生基本信息包括学号、姓名;示例如下: 请录入“c++编程”课程成绩 学号:201901 姓名:张三 实验:60 作业:70 期中考试:60 期未考试:80 信息显示功能。可显示课程信息、评分项目信息、所有学生的成绩单。 5.能够将上述数据保存在文件中,二进制、文本文件均可。(课程信息和评 分项目信息可保存一个文件,成绩单(6361点数解答 | 2024-05-24 02:01:02)364
- c语音 定义一个结构体student,其中包含的成员为char no[10];char name[10];float score。设有5个学生,从键盘输入其信息,按成绩的升序排序。并输出这5个学生排序后的信息。 输入格式: "%s%s%f" 输出格式: "请输入第%d位同学的信息:姓名 学号 成绩\n" "%s,%s,%.0f\n" 输入样例: 张三 10001 98↙ 李四 10002 100↙ 王五 10003 95↙ 赵六 10004 99↙ 钱七 10005 93↙ 输出样例: 请输入第1位同学的信息:姓名 学号 成绩↙ 请输入第2位同学的信息:姓名 学号 成绩↙ 请输入第3位同学的信息:姓名 学号 成绩↙ 请输入第4位同学的信息:姓名 学号 成绩↙ 请输入第5位同学的信息:姓名 学号 成绩↙ 钱七,10005,93↙ 王五,10003,95↙ 张三,10001,98↙ 赵六,10004,99↙ 李四,10002,100↙(373点数解答 | 2024-10-30 00:37:20)293
- 定义一个结构体student,其中包含的成员为char no[10];char name[10];float score。设有5个学生,从键盘输入其信息,按成绩的升序排序。并输出这5个学生排序后的信息。 输入格式: "%s%s%f" 输出格式: "请输入第%d位同学的信息:姓名 学号 成绩\n" "%s,%s,%.0f\n" 输入样例: 张三 10001 98 李四 10002 100 王五 10003 95 赵六 10004 99 钱七 10005 93 输出样例: 请输入第1位同学的信息:姓名 学号 成绩 请输入第2位同学的信息:姓名 学号 成绩 请输入第3位同学的信息:姓名 学号 成绩 请输入第4位同学的信息:姓名 学号 成绩 请输入第5位同学的信息:姓名 学号 成绩 钱七,10005,93 王五,10003,95 张三,10001,98 赵六,10004,99 李四,10002,100(354点数解答 | 2024-10-30 18:45:58)229
- c语言定义一个结构体student,其中包含的成员为char no[10];char name[10];float score。设有5个学生,从键盘输入其信息,按成绩的升序排序。并输出这5个学生排序后的信息。 输入格式: "%s%s%f" 输出格式: "请输入第%d位同学的信息:姓名 学号 成绩\n" "%s,%s,%.0f\n" 输入样例: 张三 10001 98↙ 李四 10002 100↙ 王五 10003 95↙ 赵六 10004 99↙ 钱七 10005 93↙ 输出样例: 请输入第1位同学的信息:姓名 学号 成绩↙ 请输入第2位同学的信息:姓名 学号 成绩↙ 请输入第3位同学的信息:姓名 学号 成绩↙ 请输入第4位同学的信息:姓名 学号 成绩↙ 请输入第5位同学的信息:姓名 学号 成绩↙ 钱七,10005,93↙ 王五,10003,95↙ 张三,10001,98↙ 赵六,10004,99↙ 李四,10002,100↙(373点数解答 | 2024-10-31 19:49:58)219
- c语音定义一个结构体student,其中包含的成员为char no[10];char name[10];float score。设有5个学生,从键盘输入其信息,按成绩的升序排序。并输出这5个学生排序后的信息。 输入格式: "%s%s%f" 输出格式: "请输入第%d位同学的信息:姓名 学号 成绩\n" "%s,%s,%.0f\n" 输入样例: 张三 10001 98↙ 李四 10002 100↙ 王五 10003 95↙ 赵六 10004 99↙ 钱七 10005 93↙ 输出样例: 请输入第1位同学的信息:姓名 学号 成绩↙ 请输入第2位同学的信息:姓名 学号 成绩↙ 请输入第3位同学的信息:姓名 学号 成绩↙ 请输入第4位同学的信息:姓名 学号 成绩↙ 请输入第5位同学的信息:姓名 学号 成绩↙ 钱七,10005,93↙ 王五,10003,95↙ 张三,10001,98↙ 赵六,10004,99↙ 李四,10002,100↙(326点数解答 | 2025-01-01 20:11:47)204
- c++程序编写: 实现一个单门课程成绩管理系统。进入系统时,用户可选择身份:1.教师;2学生。 以教师身份进入后,如果上次已保存了数据,可将文件中数据读取出来,并允许修改部分数据。如果未保存数据,则允许教师录入新的数据。具体功能包括: 可录入或修改课程信息,包括:课程编号、课程名称; 可录入或修改课程的评分项目 (数量任意,不低于3项),包括:项目名称、所占分比例(需进行合法性检测,各项目比例之和为100%);示例如下: 项目名称 所占比例 实验 30% 作业 20% 期中考试 20% 期末考试 30% 注: 一旦录入学生成绩后,评分项目不允许修改;未录入成绩数据时,允许进行修改。 3.可录入、修改、刑除学生(学生数量不限)读门课程的各项成绩,并按照其比例自动算出总成绩;学生基本信息包括学号、姓名;示例如下: 学号:201901 姓名:张三 实验:60 作业:70 期中考试:60 期未考试:80 信息显示功能。可显示课程信息、评分项目信息、所有学生的成绩单。 5.能够将上述数据保存在文件中,二进制、文本文件均可。(课程信息和评 分项目信息可保存一个文件,成绩单可保存一个文件;也可全部保(68点数解答 | 2024-05-24 10:17:09)238
- c++程序: 实现一个单门课程成绩管理系统。进入系统时,用户可选择身份:1.教师;2学生。 以教师身份进入后,如果上次已保存了数据,可将文件中数据读取出来,并允许修改部分数据。如果未保存数据,则允许教师录入新的数据。具体功能包括: 可录入或修改课程信息,包括:课程编号、课程名称; 可录入或修改课程的评分项目 (数量任意,不低于3项),包括:项目名称、所占分比例(需进行合法性检测,各项目比例之和为100%);示例如下: 项目名称 所占比例 实验 30% 作业 20% 期中考试 20% 期末考试 30% 注: 一旦录入学生成绩后,评分项目不允许修改;未录入成绩数据时,允许进行修改。 3.可录入、修改、刑除学生(学生数量不限)读门课程的各项成绩,并按照其比例自动算出总成绩;学生基本信息包括学号、姓名;示例如下: 学号:201901 姓名:张三 实验:60 作业:70 期中考试:60 期未考试:80 信息显示功能。可显示课程信息、评分项目信息、所有学生的成绩单。 5.能够将上述数据保存在文件中,二进制、文本文件均可。(课程信息和评 分项目信息可保存一个文件,成绩单可保存一个文件;也可全部保存为(4293点数解答 | 2024-05-24 10:20:03)284
- 帮我写一个批处理文件,内容如下: 1、如果在"参数表.xlsx"a列中的值找到与"文件.txt"中相同的值,则把此行中p=的值改为"参数表.xlsx"中c列对应的值; 2、如果在"参数表.xlsx"a列中的值找到与"文件.txt"中相同的值,则把此行中t=的值改为"参数表.xlsx"中b列对应的值; 3、如果在"参数表.xlsx"a列中的值找到与"文件.txt"中相同的值,则把此行中s=的值改为"参数表.xlsx"中d列对应的值; 如: 参数表.xlsx中a列a1,a2,a3;b列1.5,2,3;c列为10,20,30;d列100,101,102; 文件.txt中的行 1:l p[54:a1] 2000mm/sec cnt100 spot[sd=1,p=25,t=2.0,s=10,ed=1]; 2:l p[57:a2] 2000mm/sec cnt100 spot[sd=1,p=25,t=2.0,s=11,ed=1]; 3:l p[67:a3] 2000mm/sec cnt100 spot[sd=1,p=25,t=2.0,s=12,ed=1]; 文件.txt修改后为 1:l p[54(811点数解答 | 2024-12-05 12:58:37)256
- 帮我写一个批处理文件,内容如下: 1、如果在"参数表.xlsx"a列中的值找到与"文件.txt"中相同的值,则把此行中p=的值改为"参数表.xlsx"中c列对应的值; 2、如果在"参数表.xlsx"a列中的值找到与"文件.txt"中相同的值,则把此行中t=的值改为"参数表.xlsx"中b列对应的值; 3、如果在"参数表.xlsx"a列中的值找到与"文件.txt"中相同的值,则把此行中s=的值改为"参数表.xlsx"中d列对应的值; 参数表.xlsx中a列a1,a2,a3;b列1.5,2,3;c列为10,20,30;d列100,101,102; 文件.txt数据 1:l p[54:a1] 2000mm/sec cnt100 spot[sd=1,p=25,t=2.0,s=10,ed=1]; 2:l p[57:a2] 2000mm/sec cnt100 spot[sd=1,p=25,t=2.0,s=11,ed=1]; 3:l p[67:a3] 2000mm/sec cnt100 spot[sd=1,p=25,t=2.0,s=12,ed=1]; 文件.txt修改后数据 1:l p[54:a1(531点数解答 | 2024-12-05 13:20:42)253
- 帮我写一个批处理文件,内容如下: 1、如果在"参数表.xlsx"a列中的值找到与"文件.txt"中相同的值,则把此行中p=的值改为"参数表.xlsx"中c列对应的值; 2、如果在"参数表.xlsx"a列中的值找到与"文件.txt"中相同的值,则把此行中t=的值改为"参数表.xlsx"中b列对应的值; 3、如果在"参数表.xlsx"a列中的值找到与"文件.txt"中相同的值,则把此行中s=的值改为"参数表.xlsx"中d列对应的值; 参数表.xlsx中a列a1,a2,a3;b列1.5,2,3;c列为10,20,30;d列100,101,102; 文件.txt数据 1:l p[54:a1] 2000mm/sec cnt100 spot[sd=1,p=25,t=2.0,s=10,ed=1]; 2:l p[57:a2] 2000mm/sec cnt100 spot[sd=1,p=25,t=2.0,s=11,ed=1]; 3:l p[67:a3] 2000mm/sec cnt100 spot[sd=1,p=25,t=2.0,s=12,ed=1]; 文件.txt修改后数据 1:l p[54:a1(495点数解答 | 2024-12-05 13:22:26)228