C++课程设计:学生管理系统

(一)新生基本信息统计软件

有新生来报到,要逐个录入其信息,如:学生姓名,性别,专业,出生日期,家庭地址,英语入学成绩。要求设计链表类来实现,并统计学生人数。文本界面为:

1. 新增学生信息

2. 删除学生信息

3. 导入学生信息(已经保存于的文件信息)

4. 学生信息搜索(按姓名)

5. 学生信息统计(按专业或性别或年龄---年龄要自动计算)

6. 按英语成绩排序

7. 学生信息保存

8. 退出

******请选择:1

————————————————————————————————————————————————

年龄的统计需要  提取系统当前日期

#include <time.h>
 time_t tt = time(NULL);    //这句返回的只是一个时间cuo
 tm* t= localtime(&tt);
 printf("%d-%02d-%02d %02d:%02d:%02d\n", 
  t->tm_year + 1900,
  t->tm_mon + 1,
  t->tm_mday,
  t->tm_hour,
  t->tm_min,
  t->tm_sec);

#include <iostream>
#include <fstream>
#include <cstring>
#include <windows.h>
#include <time.h>
using namespace std;
class Student           //学生信息类 
{
	public:
		Student()       //构造 
		{
			id="/0";
			name="/0";
			sex="/0";
			major="/0";
			adress="/0";
			score=0;
			year=0;
			month=0;
			date=0; 
		}
		~Student()      //析构 
		{
			
		}
		void Creat_List(Student *head);           //创建链表
		bool Unique_List(Student *head,string id);//查重链表 
		void Print_List(Student *head);           //输出链表
		void Delete_List(Student *head);          //删除链表节点(根据学号)
		void Search_List(Student *head);          //链表检索 (根据姓名) 
		void Find_List(Student *head);            //链表查找 (根据学号)
		void Statistics_List(Student *head);      //链表统计 (专业或性别或年龄) 
		void Sort_List(Student *head);            //链表排序  (英语成绩) 
		void Out_File(Student *head);             //写入文件 
		void In_File(Student *head);              //读取文件 
		void Menu_List(Student *head);            //菜单 
	private:                                      //成员信息
	    string id; 
		string name;
		string sex;
		string major;
		string adress;
		int score;
		int year;
		int month;
		int date;
		Student *next;
};
bool Student::Unique_List(Student *head,string id)     //学号查重的实现 
{
	Student *p1=head;
	while(p1->next!=NULL)
	{
		if(p1->id==id)
		{
			cout<<"请勿输入重复学号的学生!\n";
			return true;
		}
		p1=p1->next;
	}
	return false;
}
void Student::Creat_List(Student *head)      //创建链表的实现 (可重复添加到尾部)
{
	Student *p1=head;
	int num;
	cout<<"请输入您要添加的学生数量: \n";
	cin>>num;
	if(p1->next==NULL)
	{
	for(
  • 22
    点赞
  • 156
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
学生成绩管理系统设计” A.问题描述 学生信息包括:学号、姓名、性别、年龄、班级等信息。 小学生除了包括学生所有信息外,还包括英语、数学和语文成绩。 中学生除了包括小学生所有信息外,还包括地理、历史成绩。 大学生除了包括学生所有信息外,还包括专业、英语、程序设计和高等数学等课程。 设计一程序能够对学生成绩进行管理,应用到继承、抽象类、虚函数、虚基类、多态和文件的输入/输出等内容。 B.功能要求 (1)添加功能:程序能够添加不同学生的记录,提供选择界面供用户选择所要添加的类别,要求学号要唯一,如果添加了重复学号的记录时,则提示数据添加重复并取消添加。 (2)查询功能:可根据学号、姓名等信息对已添加的学生记录进行查询,如果未找到,给出相应的提示信息,如果找到,则显示相应的记录信息。 (3)显示功能:可显示当前系统中所有学生的记录,每条记录占据一行。 (4)编辑功能:可根据查询结果对相应的记录进行修改,修改时注意学号的唯一性。 (5)删除功能:主要实现对已添加的学生记录进行删除。如果当前系统中没有相应的记录,则提示“记录为空!”并返回操作。 (6)统计功能:能根据多种参数进行统计。能统计学生人数、总分、单科的平均分等。 (7)保存功能:可将当前系统中各类记录存入文件中,存入方式任意。 (8)读取功能:可将保存在文件中的信息读入到当前系统中,供用户进行使用。 (9)排序功能:可按总分和单科成绩排名次。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值