⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 学生学籍信息管理系统.txt

📁 数据结构课程设计
💻 TXT
字号:

题目:学生学籍信息管理系统

一:需求分析

通过此系统可以实现如下功能:
1、录入:
可以录入学生情况(数据可以存储在一个数据文件中,数据结构、具体数据自定)
2、查询:
可以查询某个学生的情况(如,输入学生号,查询学生信息时间,学生数量);
3、修改:修改学生信息内容;
4、删除:删除相关学生信息;
5、打印:打印出学生的相关信息;
6、显示结果。
   根据以上功能说明,设计具体的存储结构,要求程序要有一个可供用户选择的简单操作界面。操作前要有简单的提示,设计程序完成功能。


二:概要设计

为实现上述程序功能,应该将程序分成五个模块:
	1、主程序模块:
void main()
{
	输入学生的学号、姓名、分数;
	查找学生的信息;
	更改学生的信息;
        删除学生的信息;
	打印结果;
}
	2、输入学生信息模块:输入学生的相关信息;
	3、 查找信息模块:查找相关学生的信息;
	4、更改信息模块:更改指定学生的信息;
	5、打印模块:在屏幕上输出结果。


三:源程序

#include<iostream.h>
#include<iomanip.h>
#include<string.h>
#include<fstream.h>
class student
{
	int no;                                                                                                                        
	char name[10];
	int score;
public:
	student(){}
	student(int n,char na[],int s)
	{
		no=n;
		strcpy(name,na);
		score=s;
	}
	char *getname()
	{
		return name;
	}
	void creat()
	{
		cout<<"-----------------------"<<endl;
		cout<<"输入新的学号:"<<endl;
		cin>>no;
		cout<<"-----------------------"<<endl;
		cout<<"输入新的姓名:"<<endl;
		cin>>name;
		cout<<"-----------------------"<<endl;
		cout<<"输入新的分数:"<<endl;
		cin>>score;
	}
	void disp()
	{
		cout<<"****************************"<<endl;
		cout<<"学号:          ";
		cout<<no<<endl;
		cout<<"姓名:          ";
		cout<<name<<endl;
		cout<<"分数:          ";
		cout<<score<<endl;
		cout<<"****************************"<<endl;
	}
};
int comp(char s1[],char s2[])
{
	int i=0;
	while(s1[i]!='\0'&&s2[i]!='\0'&&s1[i]==s2[i])
		i++;
	if(s1[i]=='\0'||s2[i]=='\0')
		return 1;
	else
		return 0;
}

void find(student st[])
{
		             char sname[10];
					 int i;
	                  ofstream file("e:\\stud.txt");
	                  for(i=0;i<6;i++)
		              file.write((char *)&st[i],sizeof(student));
	                  cout<<"输入查找姓名:"<<endl;
	                  cin>>sname;
	                  cout<<"学生情况结果:"<<endl;
	                  cout<<setiosflags(ios::left)<<"学号"<<'\t'<<"姓名"<<'\t'<<"分数"<<endl;
                   ifstream infile;
	                  for( i=0;i<6;i++)
					  {
		                      infile.open("e:\\stud.txt");
		                      infile.read((char *)&st[i],sizeof(student));
		                      if(comp(st[i].getname(),sname)==1)
			                     st[i].disp();
					  }
	                        file.close();
	}
	void display(student st[])
	{
            	ifstream infile;
			for(int j=0;j<6;j++)
			{
				infile.open("e:\\stud.txt");
				infile.read((char *)&st[j],sizeof(student));
				st[j].disp();
			}
			infile.close();
	}
	void change(student st[])
	{
                     char sname_m[10];
	                  cout<<"请输入你要更改的姓名:"<<endl;
	                  cout<<"-----------------------------"<<endl;
	                  cin>>sname_m;
				  ofstream file;
	                  for(int i=0;i<6;i++)
					  {
		              file.open("e:\\stud.txt");
		              if(comp(st[i].getname(),sname_m)==1)
                      st[i].creat();
		              file.write((char *)&st[i],sizeof(student));
					  }
					  file.close();
	}

void main()
{  
	cout<<"***************欢迎进入小功能学籍管理系统*****************"<<endl;
	student st[]={ student(1,"xiaoli",89),student(2,"xiaohua",78),
		student(3,"xiaozhang",92),student(4,"xiaowang",65),
		student(5,"xiaopeng",88),student(6,"xiaogang",65)};
     int chorces;
	while(chorces!=0)
	{
		cout<<"------------------------------------"<<endl;
		cout<<"      1  查找        "<<endl;
		cout<<"      2  更改        "<<endl;
		cout<<"      3  全显        "<<endl;
		cout<<"      0  退出        "<<endl;
		cout<<"**************************************"<<endl;
		cout<<"请输入你要的服务项:"<<endl;
		cout<<"**************************"<<endl;
		cin>>chorces;
		cout<<"**************************"<<endl;
		switch(chorces)
		{

	          case 1:       
			          find(st);
	                  break;
              case 2:    
			          change(st);
			           break;
		       case 3:
			           display(st);
			           break;
		}
	}
}


四:用户手册
1、本程序运行环境为DOS 操作系统和C++系统,执行文件为test.exe 
2、进入本程序后,如下图所示
  	***************欢迎进入小功能学籍管理系统*****************
 		1  查找
 		2  更改 
 		3  全显
 		0  退出
	**************************************
		请输入你要服务项:
	**************************************

3、此次程序是直接在屏幕上打印出程序的运行结果,用户将在屏幕上看到程序功能显示的结果。

五:调试、显示
***************欢迎进入小功能学籍管理系统*****************
 		1  查找
 		2  更改 
 		3  全显
 		0  退出
	**************************************
		请输入你要服务项:
	**************************************
1
xiaozhang
学号:3	
姓名:xiaozhang 
分数:92
2
xiaozhang

3
学号:1
姓名:xiaocui
分数:89
学号:2
姓名:xiaosun
分数:92
学号:3
姓名:xiaozhang
分数:92
学号:4
姓名:xiaowang
分数:65
学号:5
姓名:xiaopeng
分数:88
学名:6
姓名:xiaogang
分数:65
六:附录

class student				//创建一个类
void creat()/void disp()		//创建学生信息的函数
void main()				//主函数

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -