选修课学生信息管理--洛谷AC

该博客介绍了一个模拟选修课管理的程序,包括录入学生信息、按学院排序、添加删除学生、录入成绩及计算总评,并提供了输入输出样例。
摘要由CSDN通过智能技术生成

题目背景

选修课初期涉及学生的选修和退修,后期涉及成绩的报送和查询。此题模拟实现简单的选修管理。

题目描述

学生信息包括:学号、姓名、学院、平时成绩、期末成绩、总评成绩,编写程序实现对学生和成绩的管理。要求完成以下功能:
1) 初始学生信息的录入,学生按学院输入,各项成绩初始为0;
2) 补充新到学生的信息,要求增加后仍保持按学院有序;
3) 删除退修的学生信息;
4) 录入平时成绩和期末成绩,计算总评成绩(平时成绩和期末成绩各占50%);
5) 查询输出学生的完整信息。

输入格式

101 zs dxxy
201 ls jdxy
205 wxe jdxy
405 ww ttxy
407 ze ttxy
-1
0 205
1 104 lw dxxy
-1
101 zs dxxy 80 90
104 lw dxxy 70 80
201 ls jdxy 60 70
405 ww ttxy 90 90
407 ze ttxy 50 90
-1
201
输入说明:
每组数据以-1分隔
第一组数据为初始学生选修名单
第二组数据为退修和补充的学生信息;0开头行表示退修学生学号,1开头行表示补充学生信息;注:退修和补充的学生人数可能不止一个。
后面一组数据是期末成绩单,包括平时成绩和期末成绩;
最后一行输入是需要查询输出的学生学号

输出格式

101 zs dxxy 80 90 85
104 lw dxxy 70 80 75
201 ls jdxy 60 70 65
405 ww ttxy 90 90 90
407 ze ttxy 50 90 70
201 ls jdxy 60 70 65
输出说明:
输出学生的完整信息,包括:学号 姓名 学院 平时成绩 期末成绩 总评成绩
如果没有找到,输出-1

输入输出样例

在这里插入图片描述

#include<iostream>
#include <stdlib.h>
#include <stdio.h>
#include<string.h>
using namespace std;
struct Student{
   
	int ID;
	string name;
	string academy;
	float regular_grade;
	float final_grade; 
	float total_mark;
}; 
typedef struct LNode{
   
	struct Student data;
	struct LNode *next;
}LNode,*LinkList;
//***头插法 
LNode* CreateLinkList(){
   
	LinkList L=new LNode;
	L->next=NULL;
	LNode *temp,*p;
	p=L;
	while(1){
   
		temp=new LNode;
		cin>>temp->data.ID;
		if(temp->data.ID==-1) break;
		cin>>temp->data.name>>temp->data.academy;
		temp->data.regular_grade=0
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值