学生信息管理系统源代码
学生选课系统代码

数据库设计报告数据库名称:学生选课信息系统学院:信息科学与工程学院班级:控制0807班设计人:王文峰学号:09081413目录第一章前沿1.1 背景 (3)1.2 目的 (3)1.3 数据库基本概念 (3)第二章设计思想2.1需求分析 (4)2.2概要设计 (4)第三章详细设计3.1主窗体的创建 (8)3.2 信息查询模块 (9)3.3 信息添加模块 (12)3.4 信息删除模块 (14)3.5 信息修改模块 (16)3.6 本章小结 (21)第四章心得体会4.1数据库学习心得 (21)附录 (22)前沿1.1背景由于电脑时代的到来以及internet的迅速发展,电脑无出不在,当然各种工作效率也大幅提高,那么对于一个学校来说,开发一个好的学生信息管理系统势在必行。
鉴此,特开发此学生信息管理系统,该系统实现了办公无纸化、网络化、信息化、现代化。
随着学校的规模的不断扩大学生数量急剧增长,需要管理的各种信息也就成倍增加。
同时由于计算机和网络技术的普及,建立一个C/S或者B/S结构的教学管理系统之后,学生可以通过网络来选课并管理自己的信息,使得教学管理工作系统化,规范化,自动化,大大提高了教学管理信息的效率.教学信息管理系统是学校信息管理系统的一个重要组成部分。
1.2目的目的:通过实验熟练掌握MS SQL server 2000软件的使用,包括基本表的设计及定义,数据的输入和单表多表的查询。
并应用数据库知识设计开发小型学生管理系统。
1.3数据库的基本概念数据库技术与其他学科的内容相结合,是新一代数据库技术的一个显著特征。
在结合中涌现出各种新型的数据库,例如:数据库技术与分布处理技术相结合,出现了分布式数据库。
数据库技术与并行处理技术相结合,出现了并行数据库。
数据库技术与人工智能相结合,出现了演绎数据库、知识库和主动数据库。
数据库技术与多媒体处理技术相结合,出现了多媒体数据库。
数据库技术与模糊技术相结合,出现了模糊数据库。
12个项目开发完整案例及其源程序

项目开发完整案例及其源程序一、项目背景随着信息技术的快速发展,软件开发行业也日益繁荣。
在这样一个大环境下,很多公司和个人纷纷涉足到软件项目开发当中。
但是,对于初学者来说,缺乏实际项目的经验往往是一个难题。
本文旨在提供一系列完整的项目案例以及其源程序,帮助读者了解实际项目开发的流程和技巧。
二、项目列表1. 学生信息管理系统2. 人事管理系统3. 全球信息站书店4. 购物车系统5. 上线银行系统6. 员工考勤系统7. 论坛全球信息站8. 餐厅点餐系统9. 音乐播放器10. 电影订票系统11. 酒店预订系统12. 生鲜电商评台三、项目详解1. 学生信息管理系统- 这是一个基于Java语言开发的学生信息管理系统,实现了学生信息的添加、查询、修改和删除功能。
- 源程序主要包括学生类、数据库连接类、界面设计类等文件。
2. 人事管理系统- 该系统使用C#语言开发,包括员工信息管理、薪资管理、招聘管理等功能模块。
- 完整的源程序包括数据库设计文件、前端界面代码、后端逻辑处理代码等部分。
3. 全球信息站书店- 这是一个基于PHP和MySQL的全球信息站书店系统,包括图书浏览、购物、用户管理等功能。
- 源程序包含前台页面代码、后台管理代码、数据库设计脚本等部分。
4. 购物车系统- 使用Python语言编写的购物车系统,实现了用户登入、商品添加、购物车管理等功能。
- 包括了前端页面代码、后端逻辑处理代码、数据库设计等内容。
5. 上线银行系统- 基于Java的上线银行系统,包含用户账户管理、转账汇款、交易记录查询等功能。
- 源程序涉及了多个类文件、数据库连接代码、界面设计等内容。
6. 员工考勤系统- 该系统使用C++语言编写,实现了员工签到、请假申请、考勤统计等功能。
- 源程序包括类定义文件、界面代码、数据库操作代码等。
7. 论坛全球信息站- 基于Ruby on R本人ls框架的论坛全球信息站,包括用户注册、发帖、回帖、板块管理等功能。
基本信息管理子系统

学生基本信息管理子系统
本系统主要功能包括:新生信息的录入、转入生信息的录入、信息的组合查询和对相应数据库的高层维护,本系统还为其它各子系统提供相关的基础信息和数据。
进入本系统后,你将面对以下几项选择:
新生信息的录入和维护
新生入学,将有大量有关信息需要录入数据库并维护,这些操作由此模块实现。
新生基本信息主要由省教委和校招生办提供,然后由教务处集中录入。
录入主要是针对学生_基本情况表(XS_JBQKB) 、学生_家庭情况表(XS_JTQKB)和学生_来源表(XS_LYB)进行操作。
以下是这三个表:
•学生_基本信息表(XS_JBQKB)
注:学号是关键字。
班级号隐含年级信息。
如果是留学生,籍贯中应该包含国籍。
•学生_家庭情况表(XS_JTQKB)
学生_来源表(XS_L YB)
4.学生_班级表(XS_BJB)
5.学生_入学成绩表(XS_RXCJB)。
李云祥~-java程序设计

报告题目: 基于j2ee 的学生管理系统 学 院: 计算机科学与技术学院 专 业: 计算机科学与技术 年 级: 11级学 号: 1120020365 学生姓名: 李云祥 指导教师: 曹琳2014年 6月15日基于J2EE 平台的WEB 开发与测试课程设计目录目录 (3)第一章系统需求分析 ............................................................................................................ 21.1 开发环境和软件 ....................................................................................................... 21.2 系统设计与功能分析 ............................................................................................... 21.2.1用户登陆界面 ................................................................................................. 21.2.2 教师管理界面 ................................................................................................ 2第二章数据库设计 ................................................................................................................ 32.1 系统概念结构设计 ................................................................................................... 32.2 系统逻辑结构设计 ................................................................................................... 42.3 数据库实现 ............................................................................................................... 62.3.1 数据库关系图 ................................................................................................ 62.3.2 SQL语句实现................................................................................................. 6第三章系统模块详细设计 .................................................................................................... 93.1 用户登录模块 ........................................................................................................... 93.2 各用户操作模块 ....................................................................................................... 93.2.1 教师操作模块 .............................................................................................. 93.2.2学生操作模块 ............................................................................................. 10第四章系统运行与测试 .................................................................................................... 104.1 教师登录 ............................................................................................................... 104.2 学生登录 ............................................................................................................. 12第五章课程设计总结 ........................................................................................................ 13第六章源代码 .................................................................................................................... 141第一章系统需求分析1.1 开发环境和软件(1)操作系统:Windows 7。
学生信息管理系统任务书

毕业设计任务书学院、系:电子与计算机科学技术系专业:计算机科学与技术学生姓名:学号:设计题目:基于学生信息管理系统的开发起迄日期:指导教师:系主任:发任务书日期:年3月17日任务书填写要求1.毕业设计任务书由指导教师根据各课题的具体情况填写,经学生所在系的负责人审查、签字后生效。
此任务书应在毕业设计开始前一周内填好并发给学生;2.任务书内容必须用黑笔工整书写或按教务处统一设计的电子文档标准格式(可从教务处网页上下载)打印,不得随便涂改或潦草书写,禁止打印在其它纸上后剪贴;3.任务书内填写的内容,必须和学生毕业设计完成的情况相一致,若有变更,应当经过所在专业及系主管领导审批后方可重新填写;4.任务书内有关“学院、系”、“专业”等名称的填写,应写中文全称,不能写数字代码。
学生的“学号”要写全号(如02011401X02),不能只写最后2位或1位数字;5.有关年月日等日期的填写,应当按照国标GB/T 7408—94《数据元和交换格式、信息交换、日期和时间表示法》规定的要求,一律用阿拉伯数字书写。
如“2004年3月15日”或“2004-03-15”。
毕业设计任务书1.毕业设计的任务和要求:毕业设计任务1.设计一个学生信息管理系统2.要求对学生的信息能够进行添加,修改,删除3.要求能对学生所学的课程进行添加,修改,删除4.要求对学生成绩进行管理2.毕业设计的具体工作内容:1、熟悉C#,,HTML等编程语言;2、熟悉SQL数据库技术;3、编程实现学生信息管理,并对其进行有效的管理;4、软件界面友好;5、毕业设计过程中,态度认真,勤于思考,注意积累资料;6、独立撰写毕业设计说明书,文字通顺,不少于15000字;7、完成毕业论文相关资料的整理,规范装订.毕业设计任务书3.对毕业设计成果的要求:1.程序设计完全按照软件工程中指导顺序进行。
2.程序易于使用、操作简便,要求对用户的输入进行验证、异常处理机制完善。
3.提交程序源代码。
学生宿舍管理系统.ppt

•}
增加界面源代码:
• import javax.swing.*;
• import java.awt.*;
• import java.awt.event.ActionEvent;
• import java.awt.event.ActionListener;
• public class Add extends JFrame implements ActionListener{
•
dialog.setSize(500, 400);// 设置对话框大小
•
dialog.setLocationByPlatform(true);// 由系统平台布置窗体位置
•
dialog.setTitle("请输入要增加学生的信息");// 对话框标题
•
dialog.setLocation(100, 100);
•
this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
•
JMT1.addActionListener(this);
•
JMT2.addActionListener(this);
•
JMT3.addActionListener(this);
•
JMT4.addActionListener(this);
• public zhujiemian(){
•
super("欢迎进入学生宿舍管理系统操作界面");
•
setJMenuBar(jmb);
•
jmb.add(JM1);
•
JM1.add(JMT1);
•
JM1.add(JMT2);
学生信息管理系统 数据库课程设计
目录第一章系统概述 (1)1.1 系统开发的背景 (1)1。
2系统开发的意义 (1)第二章系统需求分析 (2)2.1系统功能要求 (2)2。
2 需求分析概述 (2)2。
3 系统层次划分 (3)2.4 系统数据流图 (3)2。
5 数据字典 (4)第三章系统总体设计目标 (11)3.1 系统总体设计目标 (11)3。
2 系统概念设计 (12)3.2.1 概念模式(E—R 图) (12)3.2.2 关系模式 (14)3。
2.3 关系模式规范化说明 (15)3。
2.4 系统数据库表结构 (15)第四章数据库系统实现 (18)4.1系统实现工具简介 (18)4.2 学生信息管理系统数据库实现 (19)结束语 (32)参考文献 (33)第一章系统概述1.1 系统开发的背景随着学校规模的不断扩大,学生数量急剧增加,有关学生的各种信息也成倍增加。
面对庞大的信息量,传统的人工方式管理会导致学生信息管理上的混乱,人力与物力过多浪费,管理费用的增加,从而使学校管理人员的负担过重,影响整个学校的运作和控制管理,因此,必须制定一套合理、有效,规范和实用的学生信息管理系统,对学生信息进行集中统一的管理。
通过这样的系统,可以做到信息的规范管理、科学统计和快速的查询,从而减少管理方面的工作量。
另一方面,IT产业和Internet获得了飞速发展,计算机应用已渗透到了各个领域,引起信息管理的革命,实现了信息的自动化处理,提高了处理的及时性和正确性.提高学生信息管理的工作效率,作到信息的规范管理,科学统计和快速查询,让该系统更好的为学校,社会服务。
1。
2系统开发的意义学生信息管理作为计算机应用的一个分支,有着手工管理无法比拟的优点,如检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。
这些优点能够极大地提高学生信息管理的效率.因此,开发一套能够为用户提供充足的信息和快捷的查询手段的学生信息管理系统,将是非常必要的,也是十分及时的。
人员信息管理系统源代码
#include<stdio.h>/*人员信息管理系统*/#include<string.h>#include<malloc.h>#include<stdlib.h>#define Max 10000typedef struct Node{int NO; // 编号char name[30]; // 姓名char sex[10]; // 性别int age; // 年龄char ZhiWu[30]; // 职务char Zhicheng[30]; //职称char ZZMM[30]; // 政治面貌char XueLi[30]; // 最高学历int OnTime; // 任职时间int CTime; // 来院时间char RenLB[30]; // 人员类别}Worker;Worker Q[Max];int top;int cnt = 0;int Insert() //输入人员信息{Worker *q;if( ( q = (Worker *)malloc( sizeof( Worker) ) ) == NULL )exit(0); printf( "请依次输入:编号,姓名,性别,年龄,职务,职称,政治面貌,最高学历,任职时间,来院时间,人员类别\n" );scanf( "%d %s %s %d %s %s %s %s %d %d %s", &(q->NO), q->name, q->sex, &(q->age), q->ZhiWu, q->Zhicheng, q->ZZMM, q->XueLi, &(q->OnTime), &(q->CTime), q->RenLB );Q[top++] = (*q);printf( "已加入\n" );return top;}int Delete() //按编号删除人员信息{int NO;int i, j, ok = 0;printf( "请依次输入: 编号\n" );scanf( "%d", &NO );for( i = 0; i < top; i++ ){if( Q[i].NO ==NO ){for( j = i+1; j < top; j++ ){Q[j-1] = Q[j];}top--;ok = 1;break;}}if( ok == 0 )printf( "无此人\n" );else printf( "已删除\n" );return top;}void Search() //搜索人员信息{int NO;char name[30];int i, ok = 0;Worker *q;printf( "请依次输入: 编号和姓名\n" );scanf( "%d %s", &NO, name );for( i = 0; i < top; i++ ){if( Q[i].NO ==NO && strcmp( Q[i].name, name ) == 0 ) {ok = 1;break;}}q = &(Q[i]);if( ok == 0 )printf( "无此人\n" );else{printf( "该人信息为:\n" );printf( "%d %s %s %d %s %s %s %s %d %d %s\n", (q->NO), q->name, q->sex, (q->age), q->ZhiWu, q->Zhicheng, q->ZZMM, q->XueLi,(q->OnTime), (q->CTime), q->RenLB );}}void Sort(Worker *Q) //按要求进行排序分类{int way,i,j,flag=1;Worker temp;printf( "输入按什么排序:1 --- 年龄; 2 ---- 来院时间\n" );scanf( "%d", &way );if( way == 1 ){for(i=1;i<top&&flag==1;i++){flag=0;for(j=0;j<top-i;j++){if(Q[j].age>Q[j+1].age){flag=1;temp=Q[j];Q[j]=Q[j+1];Q[j+1]=temp;}}for(i=0;i<cnt;i++)printf( "%d %s %s %d %s %s %s %s %d %d %s\n", (Q[i].NO),Q[i].name, Q[i].sex, (Q[i].age),Q[i].ZhiWu, Q[i].Zhicheng, Q[i].ZZMM, Q[i].XueLi, (Q[i].OnTime), (Q[i].CTime), Q[i].RenLB );}}else if( way == 2 ){for(i=1;i<top&&flag==1;i++){flag=0;for(j=0;j<top-i;j++){if(Q[j].CTime>Q[j+1].CTime){flag=1;temp=Q[j];Q[j]=Q[j+1];Q[j+1]=temp;}}for(i=0;i<cnt;i++)printf( "%d %s %s %d %s %s %s %s %d %d %s\n", (Q[i].NO),Q[i].name, Q[i].sex, (Q[i].age),Q[i].ZhiWu, Q[i].Zhicheng, Q[i].ZZMM, Q[i].XueLi, (Q[i].OnTime), (Q[i].CTime), Q[i].RenLB );}for(i=0;i<cnt;i++)printf( "%d %s %s %d %s %s %s %s %d %d %s\n", (Q[i].NO),Q[i].name, Q[i].sex, (Q[i].age),Q[i].ZhiWu, Q[i].Zhicheng, Q[i].ZZMM, Q[i].XueLi, (Q[i].OnTime), (Q[i].CTime), Q[i].RenLB );}}void COUNT_1() //统计在职人数{int i;for( i = 0; i < top; i++ ){if( strcmp( Q[i].RenLB, "退休人员" ) != 0 &&strcmp( Q[i].RenLB, "临时工" ) != 0 ){Worker *q;q = &(Q[i]);cnt++;printf( "%d %s %s %d %s %s %s %s %d %d %s\n", (q->NO), q->name, q->sex, (q->age), q->ZhiWu, q->Zhicheng, q->ZZMM, q->XueLi, (q->OnTime), (q->CTime), q->RenLB );}}printf( "共有%d 在职人数\n", cnt );}void COUNT_2() //统计党员人数{int i;for( i = 0; i < top; i++ ){if( strcmp( Q[i].ZZMM, "党员" ) == 0 ){Worker *q;q = &(Q[i]);cnt++;printf( "%d %s %s %d %s %s %s %s %d %d %s\n", (q->NO), q->name, q->sex, (q->age), q->ZhiWu, q->Zhicheng, q->ZZMM, q->XueLi, (q->OnTime), (q->CTime), q->RenLB );}}printf( "共有%d 党员\n", cnt );}void COUNT_3() // 统计女工人数{int i;for( i = 0; i < top; i++ ){if( strcmp( Q[i].sex, "女" ) == 0 ){Worker *q;q = &(Q[i]);cnt++;printf( "%d %s %s %d %s %s %s %s %d %d %s\n", (q->NO), q->name, q->sex, (q->age), q->ZhiWu, q->Zhicheng, q->ZZMM, q->XueLi, (q->OnTime), (q->CTime), q->RenLB );}}printf( "共有%d 女性员工\n", cnt );}void COUNT_4() //统计高学历人数{int i;for( i = 0; i < top; i++ ){if( strcmp( Q[i].XueLi, "研究生" ) == 0|| strcmp( Q[i].XueLi, "副教授" ) == 0|| strcmp( Q[i].XueLi, "教授" ) == 0|| strcmp( Q[i].XueLi, "院士" ) == 0|| strcmp( Q[i].XueLi, "博士" ) == 0|| strcmp( Q[i].XueLi, "博士后" ) == 0|| strcmp( Q[i].XueLi, "助理教授" ) == 0 ){Worker *q;q = &(Q[i]);cnt++;printf( "%d %s %s %d %s %s %s %s %d %d %s\n", (q->NO), q->name, q->sex, (q->age), q->ZhiWu, q->Zhicheng, q->ZZMM, q->XueLi, (q->OnTime), (q->CTime), q->RenLB );}printf( "共有%d 高学历员工\n", cnt );}void Count() //统计函数{int way;printf( "输入按什么统计:1 --- 在职人数; 2 --- 党员人数;3 --- 女工人数;4 --- 高学历高职称人数: \n" );printf( "输入统计关键字:" );scanf( "%d", &way );switch( way ){case 1: COUNT_1(); break;case 2: COUNT_2(); break;case 3: COUNT_3(); break;case 4: COUNT_4(); break;}}void Edit() // 编辑存储功能{}int main(){int way;top = 0;printf( "\n\n" );printf( "****************************************************************** **\n" );printf( " * 1:添加人员,输入人员相关信息*\n" );printf( " * 2: 删除人员,提供职工号*\n" );printf( " * 3: 查询提供编号和姓名*\n" );printf( " * 4: 统计提供相应方式对应输入*\n" );printf( " * 5: 排序,按程序要求提供相应的关键字*\n" );printf( " * 6: 编辑存储*\n" );printf( "****************************************************************** **\n" );while( 1 ){printf( "输入需要操作:way = " ); // 选择功能if( scanf( "%d", &way ) == EOF )break; // 以 ctrl + Z 结束输入switch(way){case 1: Insert(); break;case 2: Delete(); break;case 3: Search(); break;case 4: Count(); break;case 5: Sort(Q); break;case 6: Edit(); break;}}return 0;}。
河北省中小学学籍管理系统学生基本信息模板表
居民身份证
否
健康或良好 群众 130726200208145522 农业户口
居民身份证 居民身份证
否
健康或良好 群众 13063020020106004X 非农业户口
否
健康或良好 群众 13063020010622005X 农业户口
户口所在地行政区划 130630000000
074300
否
是
非留守儿童
否
否
074300
否
是
非留守儿童
否
否
是否孤儿 否
是否烈士或优抚子女 上下学距离 上下学方式 是否需要乘坐校车 曾用名 身份证件有效期 否
否
否
血型
特长 学籍辅号 班内学号 学生来源 电子信箱 主页地址 残疾类型 是否由政府购买学位
随班就读
成员1姓名 成员1关系 成员1关系说明 涞成源员县1现中住心址路 成员1户口所在地行政区划
130630000000
班号 入学年月 入学方式 就读方式 涞现源住县址联 通涞信源地 县中址 家涞庭源地县中址 联15系933电12话4
2009101 200909 就近入学 走读
合关 心路189 心路189 520
2009101 2009101 2009101 2009101 就近入学
走读
涞源县涞 涞源县涞
是
成员2姓名 成员2关系 成员2关系说明 涞成源员县2现中住心址路 成员2户口所在地行政区划 成员2联系电话
董文彦
母亲
189号7门
130630000000
15933124520
成员2是否监护人 成员2身份证件类型 成员2身份证件号 成员2民族 成员2工作单位 成员2职务 是
python人员信息管理系统源代码
Python人员信息管理系统源代码一、介绍人员信息管理系统是一种用于管理和存储人员信息的软件系统。
它可以帮助组织和企业更好地管理员工、学生或其他成员的个人信息。
本文将介绍一个使用Python 编写的人员信息管理系统的源代码。
二、系统功能人员信息管理系统通常具有以下功能:1.添加人员信息:可以输入人员的姓名、性别、年龄、联系方式等基本信息,并将其保存到系统中。
2.删除人员信息:可以根据人员的姓名或其他标识符删除系统中的人员信息。
3.修改人员信息:可以修改已有人员的信息,如联系方式、年龄等。
4.查询人员信息:可以根据人员的姓名或其他标识符查询系统中的人员信息。
5.显示所有人员信息:可以将系统中的所有人员信息以列表或表格的形式展示出来。
三、源代码实现以下是一个使用Python编写的人员信息管理系统的源代码示例:class Person:def __init__(self, name, gender, age, contact): = nameself.gender = genderself.age = ageself.contact = contactclass PersonManagementSystem:def __init__(self):self.persons = []def add_person(self, person):self.persons.append(person)def delete_person(self, name):for person in self.persons:if == name:self.persons.remove(person)breakdef modify_person(self, name, new_contact):for person in self.persons:if == name:person.contact = new_contactbreakdef search_person(self, name):for person in self.persons:if == name:return persondef display_all_persons(self):for person in self.persons:print("Name:", )print("Gender:", person.gender)print("Age:", person.age)print("Contact:", person.contact)print("")# 示例用法system = PersonManagementSystem()person1=Person("Alice","Female",25,"*****************") person2=Person("Bob","Male",30,"***************")system.add_person(person1)system.add_person(person2)system.display_all_persons()system.modify_person("Alice","********************")person = system.search_person("Bob")if person:print("Name:", )print("Gender:", person.gender)print("Age:", person.age)print("Contact:", person.contact)else:print("Person not found.")system.delete_person("Alice")system.display_all_persons()四、系统使用示例以下是一个使用该人员信息管理系统的示例:1.添加人员信息:Name: AliceGender: FemaleAge: 25Contact:*****************Name: BobGender: MaleAge: 30Contact:***************2.修改人员信息:Name: AliceGender: FemaleAge: 25Contact:********************3.查询人员信息:Name: BobGender: MaleAge: 30Contact:***************4.删除人员信息:Name: BobGender: MaleAge: 30Contact:***************五、总结通过编写这个人员信息管理系统的源代码,我们可以更好地理解和应用面向对象编程的概念和技巧。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
#include "conio.h"#include <stdio.h>#include<stdlib.h>#define MAX 30/*日期结构体类型*/typedef struct{int year;int month;int day;}DATE;/*学生结构体类型*/typedef struct{int num;char name[10];char sex[10];DATE birthday;int score ;}STU;int read_file(STU students[]){ FILE*fp;int i=0;if((fp=fopen("lab.txt","rt"))==NULL) {printf("\n\n*****库文件不存在!请重建");return 0;}while(feof(fp)!=1){fread(&students[i],sizeof(STU),1,fp);if(students[i].num==0)break;elsei++;}fclose(fp);return i;}void save_file(STU students[],int sum){ FILE *fp;int i;if((fp=fopen("lab.txt","wb"))==NULL) { printf("读文件错误!\n");return;}for(i=0;i<sum;i++)if(fwrite(&students[i],sizeof(STU),1,fp)!=1) printf("写文件错误!\n");fclose(fp);}/*输入模块*/int input(STU students[]){int i=0,sum;system("cls");printf("\n\n 录入学生个数\n\n");scanf("%d",&sum);printf("\n\n 录入学生信息\n",MAX);printf("\n\n ----------------------\n") ;for(i=0;i<sum;i++){ printf("\n第%d个人",i+1) ;printf("\n\n 学号");scanf("%d",&students[i].num) ;printf("\n\n 姓名") ;scanf("%s",&students[i].name);printf("\n\n 性别");scanf("%s",&students[i].sex);printf("\n\n 出生日期") ;printf("\n\n 年");scanf("%d",&students[i].birthday.year);printf("\n\n 月");scanf("%d",&students[i].birthday.month);printf("\n\n 日");scanf("%d",&students[i].birthday.day);printf("\n\n 成绩");scanf("%d",&students[i].score );}printf("\n---%d个学生信息输入完毕---\n",i);printf("---按任意键返回主菜单---") ;return i;}/*输出模块*/void output(STU students[],int sum){system("cls");{ int i=0;for(i=0;i<sum;i++){printf("\n -------学生信息------- \n");printf("学号姓名性别出生日期成绩\n");printf("------------------------------- \n");printf("%4d %10s %8s %15d-%2d-%2d %3d\n",students[i].num,students[i].name,students[i].sex,students[i].birthday.year,students[i].birthday.month,students[i].birthday.day,students[i].score );}}printf("按任意键返回主菜单\n");getch();}/*添加模块*/int append(STU students[],int sum){ system("cls");{int i,j;printf("请输入要添加的学生数量:\n");scanf("%d",&j);for(i=sum;i<sum+j;i++){ printf("---按格式输入提示内容:\n");printf("请输入学号:\n");scanf("%d",&students[i].num);printf("请输入姓名:\n");scanf("%s", &students[i].name );printf("请输入性别:\n");scanf("%s",&students[i].sex);printf("请输入出生日期:\n");scanf("%d-%d-%d",&students[i].birthday.year,&students[i].birthday.month,&students[i].birthday.day);printf("请输入成绩:\n") ;scanf ("%d",students[i].score );}printf("%d本信息输入完毕",i);printf("学号姓名性别出生日期成绩\n");printf("------------------------------- \n");printf("%4d %10s %8s %15d-%2d-%2d %3d\n",students[i].num,students[i].name,students[i].sex,students[i].birthday.year,students[i].birthday.month,students[i].birthday.day,students[i].score );printf("按任意键返回主菜单\n");sum=sum+j;return(sum);}}/*修改模块*/void modify(STU students[],int sum){ int i=0,choice,modify_num,flag;do{system("cls") ;printf("\n输入要修改的学生学号\n") ;scanf("%d",&modify_num);for(i=0;i<sum;i++)if(students[i].num==modify_num){printf("\n -------学生信息------- \n");printf("学号姓名性别出生日期成绩\n");printf("------------------------------- \n");printf("%4d %6s %4s %10d-%2d-%2d %6d\n",students[i].num,students[i].name,students[i].sex,students[i].birthday.year,students[i].birthday.month,students[i].birthday.day,students[i].score );printf(" \n 您要修改那一项\n ");printf(" \n 1 学号\n ");printf(" \n 2 姓名\n ");printf(" \n 3 性别\n ");printf(" \n 4 出生日期\n ");printf(" \n 5 成绩\n ");printf(" \n 请选择(1-4): \n ");scanf ("%d",&choice);switch(choice){case 1:printf("\n 输入修改后的学号:");scanf("%d",&students[i].num); break;case 2:printf("\n 输入修改后的姓名:");scanf("%s",&students[i].name); break;case 3:printf("\n 输入修改后的性别:");scanf("%s",&students[i].sex); break;case 4:printf("\n 输入修改后的出生日期");scanf("%d-%d-%d",&students[i].birthday.year,&students[i].birthday.month,&students[i].birthday.day); break;case 5:printf("\n 输入修改后的成绩:");scanf("%d",&students[i].score); break;}printf("\n -------该学生信息------- \n");printf("学号姓名性别出生日期成绩\n");printf("------------------------------- \n");printf("%4d %6s %4s %10d-%2d-%2d %6d\n",students[i].num,students[i].name,students[i].sex,students[i].birthday.year,students[i].birthday.month,students[i].birthday.day,students[i].score );break;}if(i==sum){printf("\n 该学号不存在" );// bioskey(0);}printf("\n\n 继续修改吗?(Y/N) ");choice=getch();if(choice=='Y'||choice=='y'){flag=1;printf("\n 继续!\n");}else flag=0;}while(flag==1);printf("\n---按任意键返回主菜单---\n");//bioskey(0);}/*删除模块*/void del(STU students[],int sum){int i;int j;int del_num;system("cls") ;printf("\n输入要删除的学生学号\n") ;scanf("%d",&del_num);for(i=0;i<sum;i++)if(students[i].num==del_num) break;for(j=i;j<sum;j++)students[j] =students[j+1];}/*查询模块*/void inquire(STU students[],int sum){ int i=0,choice,inquire_num,flag;do{ system("cls") ;printf("\n输入要查询的学生学号\n") ;scanf("%d",&inquire_num);for(i=0;i<sum;i++)if(students[i].num==inquire_num){ printf("\n -------该学生信息------- \n");printf("学号姓名性别出生日期成绩\n");printf("------------------------------- \n");printf("%4d %6s %4s %10d-%2d-%2d %6d\n",students[i].num,students[i].name,students[i].sex,students[i].birthday.year,students[i].birthday.month,students[i].birthday.day,students[i].score ); break;}if(i==sum){printf("\n 该学号不存在" );//bioskey(0);}printf("\n\n 继续查询吗?(Y/N) ");choice=getch();if(choice=='Y'||choice=='y'){flag=1;printf("\n 继续!\n");}else flag=0;}while(flag==1);printf("\n---按任意键返回主菜单---\n");//bioskey(0);}/*排序模块*/void sort(STU students[],int sum){STU t;int i,j,k;system("cls") ;printf("\n------------------库行排名--------------------------\n");printf("\n----------------------------------------------------\n");printf("\n 排名学号姓名性别出生日期\n ") ;for(i=0;i<sum;i++){ k=i;for(j=i+1;j<sum;j++)if (students[i].score>students[j].score) k=j;if (k!=i){t=students[i];students[i]=students[k];students[k]=t;}}output(students, sum);//bioskey(0);}void main(){ STU students[MAX];int choice,sum;sum=read_file(students);if(sum==0){ printf("****并录入基本库存信息!****\n");getch();sum=input(students);}do{system("cls");printf("\n\n\n ****学生管理系统*****\n\n") ; printf(" 1 添加学生信息\n\n") ;printf(" 2 修改学生信息\n\n") ;printf(" 3 删除学生信息\n\n") ;printf(" 4 打印学生信息\n\n") ;printf(" 5 查询学生信息\n\n") ;printf(" 6 排序学生信息\n\n") ;printf(" 0 退出系统\n\n\n") ;printf(" 请选择(0-6):") ;scanf("%d",&choice) ;switch (choice){case 1:sum=append(students,sum); break;case 2:modify(students,sum); break;case 3:del(students,sum); break;case 4:output(students,sum); break;case 5:inquire(students,sum);break;case 6:sort(students,sum); break;case 0: break;}}while(choice!=0);save_file(students,sum);}。