学生信息管理系统课程设计报告实验报告
学生管理系统 实验报告
![学生管理系统 实验报告](https://img.taocdn.com/s3/m/7120817fef06eff9aef8941ea76e58fafbb0457f.png)
学生管理系统实验报告1. 实验目的本次实验的目的是设计并实现一个学生管理系统,通过该系统能够对学生的信息进行管理和操作,包括添加、删除、查询和修改学生的基本信息。
2. 实验环境与工具- 操作系统:Windows 10- 开发工具:Visual Studio Code- 编程语言:Python3. 实验内容及方法3.1 设计思路根据需求,学生管理系统需要能够对学生的基本信息进行增删改查的操作,因此我们设计了以下几个功能模块:- 添加学生信息:通过输入学生的姓名、学号、性别和年龄等信息,将学生信息添加到系统中。
- 删除学生信息:根据输入的学号,删除系统中对应的学生信息。
- 查询学生信息:根据学号或姓名进行查询,得到学生的基本信息。
- 修改学生信息:根据学号选择要修改的学生信息,然后逐项修改学生的基本信息。
3.2 实现方法学生管理系统的设计与实现主要包括以下几个模块:- 主程序入口:通过命令行菜单的方式,接受用户的选择并调用相应的功能模块。
- 添加学生信息:通过输入学生的基本信息,将信息存储到系统的数据结构中。
- 删除学生信息:根据输入的学号,在数据结构中找到对应的学生信息并删除。
- 查询学生信息:根据学号或姓名,在数据结构中查找对应的学生信息并返回。
- 修改学生信息:根据学号选择要修改的学生信息,并逐项修改学生的基本信息。
以上模块通过编写相应的函数并在主程序入口进行调用,最终实现学生管理系统。
4. 实验结果及分析通过输入指定的命令,学生管理系统能够正确地完成相应的功能,包括添加学生信息、删除学生信息、查询学生信息和修改学生信息。
系统能够正确地将学生的基本信息存储到数据结构中,并可以根据学号或姓名进行快速查找。
同时,系统允许对学生信息进行修改和删除操作,保证了信息的完整性和准确性。
在实际使用中,学生管理系统可以应用于学校的学籍管理、班级管理和成绩管理等方面。
通过该系统,可以方便、高效地管理学生的基本信息,提高学校管理工作的效率。
学生信息管理系统实验报告
![学生信息管理系统实验报告](https://img.taocdn.com/s3/m/99a2cd0da9114431b90d6c85ec3a87c240288a97.png)
西安郵電學院数据库原理及应用设计报告题目:学生信息管理系统院系名称:理学院专业名称:信息与计算科学班级:学生姓名:学号(8位):****:***设计起止时间:2011年12月19日~2011年12月30日一. 设计目的学生管理系统是高校管理工作中一项非常重要的组成部分。
用户的需求具体体现在各种信息的提供、保存、更新和查询方面,这就要求数据库结构能充分满足各种信息的输出和输入。
收集基本数据、入。
收集基本数据、数据结构以及数据处理的流程,为后面的设计打下基础。
本系统是针对数据结构以及数据处理的流程,为后面的设计打下基础。
本系统是针对高等院校的学生信息管理,高等院校的学生信息管理,因此学生信息管理系统的用户包括系统管理员、因此学生信息管理系统的用户包括系统管理员、因此学生信息管理系统的用户包括系统管理员、教师和学生。
教师和学生。
主要涉及学生信息、课程信息以及选课记录和成绩等数据信息。
要涉及学生信息、课程信息以及选课记录和成绩等数据信息。
二 设计内容学生管理信息系统的功能总结起来,共需要以下几个方面。
学生管理信息系统的功能总结起来,共需要以下几个方面。
1、管理学生信息、管理学生信息管理所有学生的基本信息,包括添加、修改、删除等;可以根据各种条件查询出需管理所有学生的基本信息,包括添加、修改、删除等;可以根据各种条件查询出需 要的信息。
要的信息。
2、管理课程信息、管理课程信息 管理所有学生的基本信息,包括添加、修改、删除等;可以根据各种条件查询出需要的信息。
要的信息。
3、管理选课与成绩、管理选课与成绩根据学号进行选课,登记所选课程的成绩;可以根据学号查询出选课信息与成绩。
根据学号进行选课,登记所选课程的成绩;可以根据学号查询出选课信息与成绩。
三.概要设计管理员负责对学生信息,课程信息,成绩信息的输入。
学生可以完成查询和选课的功能。
1.功能模块图;(1)系统管理模块,进入系统后,可以选择退出系统)系统管理模块,进入系统后,可以选择退出系统学生信息管理学生信息管理学生学生 管理员管理员选课 操作 信息查询 学生管理 课程管理 成绩管理 信息查询(2)学生管理模块,包括学生信息添加,删除,修改。
学生信息管理系统课程设计实验报告
![学生信息管理系统课程设计实验报告](https://img.taocdn.com/s3/m/457418f9b0717fd5360cdce7.png)
WORD格式*********大学课程设计报告课程名称高级语言程序设计设计题目学生信息管理系统专业计算机科学与技术班级学号姓名完成日期课程设计任务书设计题目:学生信息管理系统设计设计内容与要求:内容:对学生信息进行管理,学生信息包括学号、姓名、性别、年龄、学历、学号、住址、电话等(学号不重复)。
要求:(1)系统以菜单方式工作(2)学生信息录入功能(学生信息用文件保存)。
(3)输出学生信息、浏览学生信息功能。
(4)查询和排序功能:(至少一种查询方式),如按学号查询、按学历查询等。
(5)学生信息删除、修改功能(任选项)。
指导教师:_______________年月日课程设计评语成绩:指导教师:_______________年月日【问题描述】学生信息管理软件设计。
对学生信息进行管理,学生信息包括:学号,姓名,年龄,性别,出生年月,地址,电话,E-mail等。
试设计一个学生信息管理软件。
【基本要求】一、输入的形式和输入值的范围形式:用scanf输入学生的学号,姓名,年龄,性别,出生年月,地址,电话,E-mail。
输入一个学生信息一个回车。
用输入的学号p1->num来控制输入,当输入的学号为0时,用break跳出循环。
即if(p1->num==0)break。
输入值的范围:学号、年龄为整型longnum;intage;姓名为字符串型15个字节charname[15];性别为字符串型,10个字节charsex[10];出生为字符串型,20个字节charchushen[20];地址为字符串型,30个字节chardizhi[30];邮箱为字符串型,输入11位数字charemail[11]。
二、输出的形式输出是以表格的形式输出,即表格的每一行都能显示第一个学生的信息,第二行是显示第二个学生的信息。
三、程序所能达到的功能对学生信息进行管理,学生信息包括职学号,姓名,年龄,性别,出生年月,地址,电话,E-mail。
学生信息管理系统实验报告
![学生信息管理系统实验报告](https://img.taocdn.com/s3/m/fa6176fcb1717fd5360cba1aa8114431b90d8eac.png)
一、实验目的1. 熟悉学生信息管理系统的基本功能和操作流程。
2. 掌握数据库设计的基本方法,能够根据需求设计合理的数据库结构。
3. 熟悉编程语言和开发工具,能够编写简单的数据库应用程序。
4. 提高团队合作能力和沟通能力。
二、实验环境1. 操作系统:Windows 102. 开发工具:Visual Studio 20193. 数据库:MySQL 5.74. 编程语言:C#三、实验内容1. 需求分析学生信息管理系统主要用于对学生信息进行管理,包括学生基本信息、成绩、课程、班级等。
系统应具备以下功能:(1)学生信息管理:增加、删除、修改、查询学生信息。
(2)成绩管理:录入、修改、查询学生成绩。
(3)课程管理:增加、删除、修改、查询课程信息。
(4)班级管理:增加、删除、修改、查询班级信息。
(5)统计分析:对学生成绩、课程等进行统计分析。
2. 数据库设计根据需求分析,设计如下数据库表:(1)学生信息表(student)字段名 | 数据类型 | 说明--- | --- | ---id | int | 学生编号(主键)name | varchar(50) | 学生姓名gender | varchar(10) | 性别age | int | 年龄class_id | int | 班级编号(外键)(2)成绩表(score)字段名 | 数据类型 | 说明--- | --- | ---id | int | 成绩编号(主键)student_id | int | 学生编号(外键)course_id | int | 课程编号(外键)score | float | 成绩(3)课程表(course)字段名 | 数据类型 | 说明--- | --- | ---id | int | 课程编号(主键)name | varchar(50) | 课程名称credit | int | 学分(4)班级表(class)字段名 | 数据类型 | 说明--- | --- | ---id | int | 班级编号(主键)name | varchar(50) | 班级名称3. 系统设计(1)界面设计采用Windows窗体应用程序,界面包括以下部分:- 主界面:展示系统功能菜单。
学生信息管理系统实验报告
![学生信息管理系统实验报告](https://img.taocdn.com/s3/m/f1f8742a7f21af45b307e87101f69e314232fa50.png)
学生信息管理系统实验报告学生信息管理系统实验报告一、引言学生信息管理系统是一种用于管理学生个人信息和学籍信息的软件系统。
本实验旨在通过设计和实现一个简单的学生信息管理系统,来提高学生信息管理的效率和准确性。
二、系统设计1. 系统功能学生信息管理系统主要包括以下功能:- 学生信息录入:管理员可以录入学生的个人信息,包括姓名、性别、年龄、联系方式等。
- 学籍信息管理:管理员可以管理学生的学籍信息,包括学号、班级、学院、专业等。
- 学生信息查询:管理员和教师可以根据学生的姓名、学号等关键字进行查询。
- 学生信息修改:管理员可以对学生的个人信息和学籍信息进行修改。
- 学生信息统计:系统可以生成学生的各种统计报表,如按性别统计、按年级统计等。
2. 系统架构学生信息管理系统采用B/S架构,即浏览器/服务器架构。
前端使用HTML、CSS和JavaScript实现,后端使用PHP和MySQL进行数据存储和处理。
三、系统实现1. 前端界面设计系统的前端界面采用简洁、直观的设计风格,以提高用户的使用体验。
界面包括登录页面、主页和各个功能模块页面。
2. 后端数据处理系统的后端采用PHP作为服务器端脚本语言,通过与前端的交互,实现数据的存储和处理。
使用MySQL作为数据库,存储学生的个人信息和学籍信息。
3. 功能实现系统的各个功能模块通过编写相应的PHP脚本来实现。
例如,学生信息录入功能通过表单的方式获取用户输入的数据,并将数据存储到数据库中;学生信息查询功能通过SQL语句查询数据库,并将查询结果返回给前端。
四、系统测试与评估为了验证系统的功能和性能,我们进行了一系列的测试和评估。
1. 功能测试通过模拟用户的操作场景,测试系统的各个功能是否正常运行。
例如,测试学生信息录入功能是否能够正确地将数据存储到数据库中,测试学生信息查询功能是否能够准确地返回查询结果等。
2. 性能测试通过模拟多个用户同时访问系统,测试系统的并发性能和响应时间。
数据库学生信息管理系统实验报告
![数据库学生信息管理系统实验报告](https://img.taocdn.com/s3/m/1ebe6b365bcfa1c7aa00b52acfc789eb162d9e68.png)
数据库学生信息管理系统实验报告一、实验目的本次实验的目的是设计并实现一个基于数据库的学生信息管理系统,通过该系统可以对学生的基本信息进行增删改查等操作,方便高效地管理学生信息。
二、实验内容1. 创建数据库:首先,在MySQL中创建一个名为"student_info"的数据库,用于存储学生信息的表。
2. 创建表结构:在数据库中创建一个名为"student"的表,用于存储学生的基本信息,包括学号、姓名、性别、年龄、班级等字段。
3. 实现增加学生信息的功能:设计一个界面,在界面上输入学生的基本信息,然后将这些信息插入到数据库的"student"表中。
4. 实现删除学生信息的功能:设计一个界面,在界面上输入要删除的学生的学号,然后根据学号将该学生的信息从数据库的"student"表中删除。
5. 实现修改学生信息的功能:设计一个界面,在界面上输入要修改的学生的学号和需要修改的字段信息,然后根据学号将该学生的相应字段信息更新到数据库的"student"表中。
6. 实现查询学生信息的功能:设计一个界面,在界面上输入要查询的学生的学号,然后根据学号从数据库的"student"表中查询相应学生的信息并显示在界面上。
三、实验过程1. 创建数据库:在MySQL中执行以下指令创建名为"student_info"的数据库:CREATE DATABASE student_info;2. 创建表结构:在"student_info"数据库中执行以下指令创建名为"student"的表:CREATE TABLE studentid INT PRIMARY KEY AUTO_INCREMENT,student_id VARCHAR(20) NOT NULL,name VARCHAR(20) NOT NULL,gender VARCHAR(4) NOT NULL,age INT NOT NULL,class VARCHAR(20) NOT NULL3. 实现增加学生信息的功能:使用Java编写一个程序,通过JDBC 连接到MySQL数据库,然后通过用户界面输入学生的基本信息,将这些信息插入到"student"表中。
学生信息管理系统设计实训报告
![学生信息管理系统设计实训报告](https://img.taocdn.com/s3/m/7c6675fee2bd960591c67758.png)
目录1 总体设计与算法分析 (1)课题需求分析 (1)1.1.1设计要求 (1)1.1.2模块划分 (2)1.1.3性能需求 (2)数据结构设计 (2)关键算法分析与设计 (3)1.3.1函数入口说明 (3)1.3.2调用关系 (4)1.3.3参数说明 (4)1.3.4主函数 (5)1.3.5录入、添加信息 (5)1.3.6查询:按姓名 (7)1.3.7修改学生信息的函数 (8)2 程序流程图与函数说明 (10)程序设计组成框图 (10)流程图 (11)3 测试数据与测试过程记录 (13) (17)4 遇到的问题及解决方法 (18)5 课程设计小结 (19)参考文献 (20)1 总体设计与算法分析随着科学技术的发展,计算机领域不断取得新的研究成果。
计算机在代替和延伸脑力劳动方面发挥越来越重要的作用,不仅在商业、企业、银行等起着重要作用,而且在日常生活重也越来越离不开计算机。
就像在大学,有很多学生的信息需要处理、保存,一集提供优质服务,此时计算机显得尤为重要。
随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识。
作为计算机应用的一部分,使用计算机对学生信息进行管理,有着手工管理所无法比拟的优点。
所以,现今绝大部分大学都使用了计算机来规划整个学生的信息、提供选课、网络教学等。
学生管理系统能方便用户迅速、准确处理学生的成绩,得到想要的数据并能将学生的信息以文档保存,以供使用时调出。
本文介绍了简易学生管理系统在Microsoft Visual C++ 环境下的实现过程:系统的分析、功能模块的设计、系统的调试和测试。
此系统的主要信息有:学号,姓名,年龄,性别,出生年月,地址,电话,E-mail等。
本系统的主要功能有:系统以菜单方式工作、学生信息录入功能、学生信息浏览功能、查询和排序功能、学生信息删除和修改功能。
课题需求分析系统针对学校学生信息的特点以及管理中实际需要而设计,能够有效地实现学生信息管理的信息化,减轻管理人员的工作负担,高效率、规范化地管理大量的学生信息,并避免人为操作的错误和不规范行为。
学生信息管理系统课程设计报告
![学生信息管理系统课程设计报告](https://img.taocdn.com/s3/m/e49a4d07793e0912a21614791711cc7930b77846.png)
学生信息管理系统课程设计报告一、引言随着信息技术的不断发展,学生信息管理在学校的日常管理工作中变得越来越重要。
为了提高学生信息管理的效率和准确性,开发一个高效、实用的学生信息管理系统成为了必然的需求。
本课程设计旨在设计并实现一个功能齐全、操作简便的学生信息管理系统,以满足学校对学生信息管理的需求。
二、系统需求分析(一)功能需求1、学生信息的录入、修改、删除和查询功能。
2、课程信息的管理,包括课程的添加、修改、删除和查询。
3、成绩管理功能,能够录入、修改学生的课程成绩,并进行统计分析。
4、能够生成学生的个人成绩单和班级成绩汇总表。
5、具备用户管理功能,包括添加用户、修改用户信息和设置用户权限。
(二)性能需求1、系统响应时间要短,保证用户操作的流畅性。
2、数据存储要安全可靠,防止数据丢失或损坏。
3、系统要具备良好的稳定性,能够长时间稳定运行。
(三)界面需求1、系统界面要简洁、美观,操作方便。
2、提供清晰的导航和提示信息,方便用户使用。
三、系统设计(一)总体设计1、系统采用 B/S 架构,方便用户通过浏览器进行访问。
2、分为前端页面展示和后端数据处理两部分。
(二)数据库设计1、设计了学生表、课程表、成绩表、用户表等相关数据表。
2、确定了表之间的关联关系,以保证数据的一致性和完整性。
(三)功能模块设计1、学生信息管理模块,实现学生信息的增删改查。
2、课程管理模块,负责课程的相关操作。
3、成绩管理模块,处理学生成绩的录入、修改和统计。
4、用户管理模块,管理系统用户的信息和权限。
四、系统实现(一)开发工具和技术1、使用 Python 作为主要开发语言。
2、采用 Django 框架进行 Web 开发。
3、数据库选择 MySQL。
(二)关键代码实现1、学生信息录入功能的代码实现。
2、成绩统计分析功能的算法实现。
(三)系统测试1、进行了功能测试,确保各项功能正常运行。
2、进行了性能测试,对系统的响应时间和稳定性进行评估。
学生管理系统实验报告
![学生管理系统实验报告](https://img.taocdn.com/s3/m/67ee9616814d2b160b4e767f5acfa1c7ab00825e.png)
学生管理系统实验报告实验目的本次实验的目的是设计并实现一个学生管理系统,以便管理教师对学生的基本信息、课程成绩等重要数据进行记录、查询和修改。
通过该实验,我们可以学习和掌握数据库的设计与应用,以及如何利用编程语言实现对数据库的操作。
实验环境本次实验使用的开发环境为Windows操作系统,数据库管理系统采用MySQL,编程语言为Java。
实验内容与步骤1. 数据库设计首先,我们需要进行数据库的设计。
根据实际需求,设计了以下几个表:- 学生表(Student):包含学生的学号、姓名、性别、出生日期等基本信息。
- 课程表(Course):包含课程的课程号、课程名、学分等信息。
- 成绩表(Score):包含学生的学号、课程号和成绩等信息。
2. 数据库连接使用Java编程语言,我们需要编写代码来连接MySQL数据库。
首先引入相关的数据库连接库,在代码中设置数据库的连接信息,如数据库URL、用户名和密码。
3. 数据库操作接下来,我们需要编写代码来实现对数据库的操作,包括插入、查询和修改等功能。
- 插入数据:通过执行SQL语句,将学生的基本信息、课程信息和成绩信息插入到相应的表中。
- 查询数据:根据学生学号或课程号,执行查询语句,并将结果以表格的形式展示出来。
- 修改数据:对于某个学生或某门课程的成绩,可以根据学号或课程号来修改其对应的成绩。
4. 用户界面设计为了方便教师使用学生管理系统,我们设计了一个简洁美观的用户界面。
通过该界面,教师可以方便地进行数据库的操作。
实验结果与分析经过运行实验代码,成功地实现了学生管理系统的设计与实现。
教师可以通过该系统对学生的信息进行录入、查询和修改,从而实现了对学生的有效管理。
界面设计方便了教师的操作,使其能够直观地进行各项功能的实现。
实验总结通过本次学生管理系统实验,我对数据库的设计与应用有了更深入的理解。
实验中,我掌握了数据库的基本操作和编程语言对数据库的操作方法,同时也提高了编程能力和逻辑思维能力。
学生管理系统_实验报告
![学生管理系统_实验报告](https://img.taocdn.com/s3/m/71b731c86aec0975f46527d3240c844768eaa002.png)
一、实验目的1. 熟悉并掌握数据库的基本操作,包括创建数据库、创建表、插入数据、查询数据等。
2. 熟悉并掌握Java编程语言的基本语法和面向对象编程思想。
3. 通过实际编程,提高学生的编程能力和问题解决能力。
二、实验环境1. 操作系统:Windows 102. 数据库:MySQL 5.73. 开发工具:Eclipse4. 编程语言:Java三、实验内容1. 数据库设计2. 系统功能设计3. 系统实现四、实验步骤1. 数据库设计(1)创建数据库```sqlCREATE DATABASE StudentManagementSystem;```(2)创建表```sql-- 创建学生信息表CREATE TABLE student_info (student_id INT PRIMARY KEY AUTO_INCREMENT, student_name VARCHAR(50) NOT NULL,gender CHAR(1) NOT NULL,class_id INT NOT NULL,age INT NOT NULL,phone VARCHAR(20));-- 创建班级信息表CREATE TABLE class_info (class_id INT PRIMARY KEY AUTO_INCREMENT, class_name VARCHAR(50) NOT NULL);```2. 系统功能设计(1)学生信息管理- 添加学生信息- 删除学生信息- 修改学生信息- 查询学生信息(2)班级信息管理- 添加班级信息- 删除班级信息- 修改班级信息- 查询班级信息3. 系统实现(1)创建Java项目- 使用Eclipse创建一个名为“StudentManagementSystem”的Java项目。
(2)创建实体类- 创建Student类,包含学生信息字段,如:student_id、student_name、gender、class_id、age、phone等。
学生管理系统实验报告
![学生管理系统实验报告](https://img.taocdn.com/s3/m/5b0669710a4c2e3f5727a5e9856a561252d32130.png)
学生管理系统实验报告一、引言学生管理系统是一种用于管理学生信息和学校相关资源的软件系统。
通过学生管理系统,可以实现学生信息的录入、查询、修改和删除等功能,方便学校管理学生信息和课程安排。
本实验旨在设计和实现一个简单的学生管理系统,并通过测试评估其功能和性能。
二、系统设计1.需求分析学生管理系统应包括以下基本功能:- 学生信息的录入:包括学生姓名、学号、性别、年龄、班级等基本信息。
- 学生信息的查询:根据学号或姓名查询学生的详细信息。
- 学生信息的修改:可以修改学生的基本信息。
- 学生信息的删除:可以删除学生的信息。
- 学生课程的安排:可以为学生安排课程并进行管理。
- 成绩录入和查询:可以录入学生课程成绩并查询学生成绩。
2.系统流程设计根据需求分析,学生管理系统可以划分为以下模块:- 学生信息管理模块:负责学生信息的录入、查询、修改和删除等功能。
- 课程管理模块:负责课程的录入和安排等功能。
- 成绩管理模块:负责学生成绩的录入和查询等功能。
3.系统数据库设计学生管理系统需要使用数据库来存储学生信息、课程信息和成绩信息等数据。
数据库可以使用关系型数据库如MySQL或非关系型数据库如MongoDB等。
4.系统界面设计学生管理系统的界面设计应简洁美观,易于操作。
可以采用图形界面和命令行界面等形式,根据实际需求灵活选择。
三、系统实现根据系统设计,我们选择使用MySQL数据库和Java编程语言来实现学生管理系统。
1.数据库设计首先创建一个名为"student"的数据库,在该数据库中创建三个表:- 学生信息表(student_info):包括学生ID、姓名、性别、年龄、班级等字段。
- 课程信息表(course_info):包括课程ID、课程名称、授课教师等字段。
- 成绩信息表(score_info):包括学生ID、课程ID、成绩等字段。
2.系统实现代码首先进行数据库连接,然后实现各个功能对应的代码,包括学生信息的录入、查询、修改和删除,课程信息的录入和安排,成绩的录入和查询等。
学生信息管理系统实验报告
![学生信息管理系统实验报告](https://img.taocdn.com/s3/m/7be5d01a302b3169a45177232f60ddccda38e628.png)
学生信息管理系统实验报告一、实验目的。
本实验旨在通过学生信息管理系统的设计与实现,加深对数据库管理系统的理解,提高数据库设计与编程的能力。
二、实验内容。
1. 设计学生信息管理系统的数据库结构,包括学生信息、课程信息、成绩信息等;2. 使用SQL语句创建数据库表,并插入测试数据;3. 利用编程语言(如Python、Java等)实现学生信息管理系统的增删改查功能;4. 进行系统功能测试,验证系统的稳定性和准确性。
三、实验步骤。
1. 数据库设计。
根据学生信息管理系统的需求,设计数据库结构,包括学生表(学号、姓名、性别、年龄等字段)、课程表(课程号、课程名称、学分等字段)、成绩表(学号、课程号、成绩等字段)等。
2. 数据库创建与数据插入。
使用SQL语句创建数据库表,并插入测试数据,以验证数据库结构的正确性和完整性。
3. 系统实现。
利用编程语言实现学生信息管理系统的增删改查功能,包括学生信息的录入、修改、删除,成绩的查询和统计等。
4. 系统测试。
对系统进行功能测试,验证系统的稳定性和准确性,包括对数据的增删改查操作进行测试,确保系统能够正确地处理各种情况。
四、实验结果与分析。
经过实验,我们成功设计并实现了学生信息管理系统,系统能够准确地记录学生信息、课程信息和成绩信息,能够进行各种操作,并且在测试中表现稳定可靠。
五、实验总结。
通过本次实验,我们深入理解了数据库设计与编程的重要性,掌握了数据库表的设计与创建、SQL语句的使用、编程语言的应用等技能。
同时,也提高了对学生信息管理系统的整体把握能力,为今后的数据库管理与系统开发打下了坚实的基础。
六、实验心得。
通过本次实验,我们不仅学到了知识,更重要的是提高了动手能力和解决问题的能力,这对我们未来的学习和工作都有着重要的意义。
七、参考文献。
[1] 《数据库系统概论》。
[2] 《Python编程从入门到实践》。
[3] 《Java程序设计》。
以上就是学生信息管理系统实验报告的全部内容,希望能对大家有所帮助。
管理信息系统实习报告3篇
![管理信息系统实习报告3篇](https://img.taocdn.com/s3/m/61a9cc226ad97f192279168884868762caaebb8b.png)
管理信息系统实习报告3篇管理信息系统实习报告篇1(1141字)这个学期我学习了管理信息系统设计这门学科,感觉受益不浅。
众所周知,管理信息系统是为了适应现代化管理的需要,在管理科学、系统科学、信息科学和计算机科学等学科的基础上形成的一门科学,它研究管理系统中信息处理和决策的整个过程,并探讨计算机的实现方法。
它是一个由人、计算机、通信设备等硬件和软件组成的,能进行管理信息的收集、加工、存储、传输、维护和使用的系统。
管理信息系统可促使企业向信息化方向发展,使企业处于一个信息灵敏、管理科学、决策准确的良性循环之中,为企业带来更高的经济效益。
所以,管理信息系统是企业现代化的重要标志,是企业发展的一条必由之路。
在开始做实验时,通过老师的帮助我会熟练的使用Microsoft Office Visio 绘制流程图了,在分析了系统开发的背景、意义,目标以及可行性分析与需求分析后,用它绘制了系统的管理信息系统结构功能图,业务流程图,数据流程图,编制了相应的数据字典。
在同学们的耐心的帮助下,我对VB的基本操作比较熟悉了,发现这是一个很好用的`开发工具,界面设计是所见即所得的效果,以后我会努力学习它,达到熟练运用的程度。
另外更熟练的运用了SQL数据库,通过编代码的方式来建立表格,实现增删改的操作,并把数据导入到VB中,实现相关的操作。
最近做管理信息系统的实验指导时,发现这些实验内容对动手实践的能力要求比较严格,我们每位同学努力操作了都不一定会顺利做出来,我们一定要在了解学习地基础上去模拟这样的操作流程,才有利于更好地掌握这样的开发流程。
学习不能是被动的,更需要自己积极主动的获取知识,就尽可能的掌握与专业相关的知识和技能,这样才不会临场慌乱。
而我也坚信,这些都必定会对我以后的学习方式产生重大的影响。
我们小组在开发系统的这个过程中,我们在更深入的学习和运用理论课的同时,还必须要完成各项上机的实验报告,尽管比较繁琐,我们还是需要好好地完成自己的任务的。
c#学生信息管理系统实验报告
![c#学生信息管理系统实验报告](https://img.taocdn.com/s3/m/09f8d0fbbb4cf7ec4bfed00e.png)
《c#》课程设计 实验报告书安徽工业大学计算机学院摘 要本文描述的是基于Windows 环境的学生信息管理系统,主要功能模块包括:姓 名岳耀闯专 业 计算机科学与技术班 级 计134班 学 号 139074137 指导教师邰伟鹏学生信查询,学生信息管理,学生成绩录入,主要工具Microsoft Visual Studio 2005 设计窗体, SQL server2005建立数据库,实现学校信息管理的各个功能。
本程序提供了管理员权限和用户权限,其中管理员可以对信息进行管理,而用户只可以对信息进行查询,以确保程序的安全性。
一、需求分析1系统目标1 学生信息、课程信息、成绩信息的增加、删除、修改、查询2 分别设置管理员权限和用户权限2功能需求分析本系统的功能需求分析如下:(1)学生信息查询:学生可以根据学号、姓名等进行模糊查询.(2)学生信息管理:主要是用于学生信息更新、插入、删除;(3)学生成绩录入:用于学生成绩管理,录入学生成绩,也可以更新;3性能需求分析(1)登录、用户界面需求:简洁、易懂、易用、友好的用户界面。
(2)安全保密性需求:只有凭借用户名和密码登陆系统,才能进行信息的管理等。
二总体设计1设计概述根据需求把整个系统分化成不同的模块,每个模块完成一个特定的子功能。
把这些模块结合起来组成一个整体。
逐一实现各个功能。
2系统数据库的设计1.所用到的数据库中的表信息:adminmsg(管理员表)列名字段类型长度主/外键对应中文名Userid int4编号Username Nvarchar50姓名Password Nvarchar50密码user(用户表)列名字段类型长度主/外键对应中文名Userid int4编号Username Nvarchar50姓名Password Nvarchar50密码Studentmsg(学生信息表)列名字段类型长度主/外键对应中文名Studentid int4Y 学号Studentname Nvarchar 50 姓名Sex Byte 1 性别department Nvarchar 50 所在系speciality Nvarchar50专业Coursemsg(课程信息表)列名字段类型长度主/外键对应中文名courseid int4Y 课程号coursename Nvarchar 50 课程名称required Nvarchar 10 性质credit int 4 学分Scoremsg(成绩表)列名字段类型长度主/外键对应中文名Studentno int4Y 学号courseid int 4 Y 课程号score int 4 成绩3.用户登录安全性检查系统设计了登录界面,每个合法用户有用户名及一个密码,在输入后系统会对相应的表进行匹配检查,只有当用户输入正确的用户名及密码组合后才能够进入相应的界面。
学生信息管理系统课程设计实验报告
![学生信息管理系统课程设计实验报告](https://img.taocdn.com/s3/m/0f04784d14791711cc791774.png)
学生信息管理系统课程设计实验报告结构化程序课程设计报告设计名称_ 学生信息管理系统指导教师__ ____ ______ _ _班级_ 1 2计算机卓越班学生姓名刘宝王庆华徐廷政汪俊杰李昱凡完成日期安庆师范学院计算机与信息学院一、实验课题题目:学生信息管理系统创建一个学生信息管理系统。
假设系统中每个学生记录只包括学号、姓名、电话号码等信息。
1、系统功能的基本要求:(1)创建信息管理系统。
(2)显示信息管理系统;(3)查询信息管理系统;(4)修改信息管理系统;(5)删除信息管理系统;(6)排序信息管理系统;(7)退出信息管理系统;二、需求分析使用链式结构,定义链表结构,使用文件储存学生信息#ifndef COMMON_H#define COMMON_H/*注:此处是为了后面可能要对学生添加其他属性而预留的typedef struct others{}*POTH,OTHE;*/typedef struct student{char num[10]; //学号学号唯一,且不能改,作为用户登录账号char psw[20]; //密码每人一个密码,默认学号后四位,可以自己登录修改int root; //权限分管理员和用户,1代表管理员,0代表用户char nam[10]; //姓名char sex[4]; //性别char dom[10]; //寝室char cls[40]; //班级char clg[40]; //学院char mbp[20]; //手机// OTHE other; //其他使用结构体嵌套,方便添加其他属性struct student *next;}*PSTU,STU;#endif三、流程图设计大致流程设计如下:主函数调用登录函数void login(PSTU pHead),进入登录界面登录函数调用读取函数PSTU read(void),将学生信息从文件中读入内存登录界面下输入用户和密码,通过与学生信息匹配,判断是管理员还是用户如果是管理员则进入管理员界面,反则进入用户界面管理员拥有比用户更多的权限,可以进行行新增、查询、修改等操作相比较管理员,用户的权限少了很多。
学生管理系统 实验报告
![学生管理系统 实验报告](https://img.taocdn.com/s3/m/1709114303020740be1e650e52ea551810a6c93c.png)
学生管理系统实验报告学生管理系统实验报告引言:学生管理系统是一种用于学校或教育机构管理学生信息和学业进展的工具。
它可以帮助学校管理学生的个人信息、课程安排、考试成绩、出勤记录等,提高学校管理效率和学生学习体验。
本实验报告将介绍我们设计和开发的学生管理系统,并对其功能和效果进行评估。
一、系统设计与功能1.1 系统设计我们的学生管理系统采用了分层结构的设计,包括用户界面层、业务逻辑层和数据访问层。
用户界面层提供了友好的界面供学生、教师和管理员使用;业务逻辑层负责处理用户请求并进行相应的操作;数据访问层负责与数据库进行数据交互。
1.2 功能介绍学生管理系统具有多项功能,包括学生信息管理、课程管理、成绩管理、考勤管理等。
学生可以通过系统查看个人信息、选课、查询成绩和考勤情况;教师可以录入学生成绩、进行课程安排和考勤记录;管理员可以管理学生信息、教师信息和课程信息等。
二、系统开发与实施2.1 系统开发我们的学生管理系统采用了Java语言进行开发,使用了MySQL数据库进行数据存储。
我们使用了Eclipse作为开发工具,采用了MVC(模型-视图-控制器)的设计模式,使系统的各个模块之间解耦合,易于维护和扩展。
2.2 实施过程在系统实施过程中,我们首先进行了需求分析,明确了系统的功能和性能要求。
然后进行了系统设计和数据库设计,确定了系统的结构和数据模型。
接着进行了编码和单元测试,确保系统的各个功能模块能够正常运行。
最后进行了系统集成测试和用户验收测试,确保系统能够满足用户需求。
三、系统评估与改进3.1 系统评估我们对学生管理系统进行了功能测试、性能测试和用户满意度调查。
在功能测试中,系统能够正常完成各项功能,并且用户界面友好易用;在性能测试中,系统能够在较大并发量下保持稳定运行;用户满意度调查结果显示,用户对系统的功能和性能都给予了较高评价。
3.2 系统改进根据用户反馈和测试结果,我们对学生管理系统进行了一些改进。
学生系统实验报告
![学生系统实验报告](https://img.taocdn.com/s3/m/0542490eac02de80d4d8d15abe23482fb4da0237.png)
实验名称:学生信息管理系统实验日期:2021年10月15日实验地点:计算机实验室一、实验目的1. 了解学生信息管理系统的基本功能和操作流程。
2. 掌握数据库设计、数据录入、查询、修改和删除等基本操作。
3. 提高数据库应用能力,培养实际操作技能。
二、实验内容1. 系统功能模块设计2. 数据库设计3. 系统实现4. 系统测试三、实验步骤1. 系统功能模块设计(1)用户登录模块:实现用户身份验证,确保系统安全。
(2)学生信息管理模块:实现学生信息的录入、查询、修改和删除等功能。
(3)成绩管理模块:实现学生成绩的录入、查询、修改和删除等功能。
(4)系统设置模块:实现系统参数的设置和修改。
2. 数据库设计(1)学生信息表(student):包含学号、姓名、性别、年龄、班级、联系电话等字段。
(2)成绩表(score):包含学号、课程名称、分数等字段。
3. 系统实现(1)用户登录模块实现:- 用户输入用户名和密码;- 系统验证用户名和密码是否正确;- 若正确,则进入系统;若错误,则提示用户重新输入。
(2)学生信息管理模块实现:- 添加学生信息:输入学生信息,保存到数据库;- 查询学生信息:根据学号或姓名查询学生信息;- 修改学生信息:根据学号修改学生信息;- 删除学生信息:根据学号删除学生信息。
(3)成绩管理模块实现:- 添加成绩:输入学生学号、课程名称、分数,保存到数据库;- 查询成绩:根据学号或课程名称查询成绩;- 修改成绩:根据学号和课程名称修改成绩;- 删除成绩:根据学号和课程名称删除成绩。
(4)系统设置模块实现:- 设置系统参数:如系统标题、默认密码等;- 修改系统参数:对已设置的参数进行修改。
4. 系统测试(1)功能测试:测试系统各个功能模块是否正常运行;(2)性能测试:测试系统在处理大量数据时的响应速度和稳定性;(3)安全性测试:测试系统在用户登录、数据录入、修改和删除等操作过程中的安全性。
四、实验结果与分析1. 实验结果(1)系统功能模块设计合理,实现了预期的功能;(2)数据库设计符合实际需求,数据结构清晰;(3)系统实现过程中,遵循了良好的编程规范,代码质量较高;(4)系统测试结果显示,系统性能稳定,安全性良好。
学生管理系统实验报告
![学生管理系统实验报告](https://img.taocdn.com/s3/m/c23c430c777f5acfa1c7aa00b52acfc789eb9f3c.png)
学生管理系统实验报告学生管理系统实验报告一、引言随着教育信息化的发展,学生管理系统在学校管理中起着越来越重要的作用。
本次实验旨在设计和实现一个学生管理系统,以提高学校管理的效率和准确性。
本文将介绍实验的目的、设计思路、系统功能和实验结果。
二、实验目的学生管理系统是为了方便学校管理者对学生信息进行统一管理和查询,提高学校管理的效率和准确性。
本次实验的目的是设计一个功能完善、操作简便的学生管理系统,并验证其在实际应用中的可行性和效果。
三、设计思路1.需求分析在设计学生管理系统之前,我们首先进行了需求分析。
通过与学校管理者的沟通和调研,我们确定了系统的基本功能,包括学生信息录入、查询、修改和删除等。
2.系统架构基于需求分析的结果,我们设计了学生管理系统的系统架构。
系统由前端页面、后端数据库和中间的业务逻辑层组成。
前端页面负责与用户的交互,后端数据库用于存储学生信息,业务逻辑层负责处理用户请求并与数据库进行交互。
3.数据库设计为了存储学生信息,我们设计了一个学生信息表。
该表包括学生ID、姓名、性别、年龄、班级等字段。
通过合理的表结构设计和索引的建立,可以提高数据库的查询效率和数据的完整性。
4.系统功能设计根据需求分析的结果,我们设计了系统的各个功能模块。
其中,学生信息录入模块负责将学生的基本信息录入系统;学生信息查询模块可以根据学生ID或姓名进行查询,并显示查询结果;学生信息修改模块可以对学生信息进行修改;学生信息删除模块可以删除学生的信息。
四、系统功能1.学生信息录入学生管理系统提供了一个简单易用的界面,用户可以通过该界面录入学生的基本信息,包括学生ID、姓名、性别、年龄和班级等。
2.学生信息查询学生管理系统支持根据学生ID或姓名进行查询。
用户可以输入学生ID或姓名,系统将根据用户的输入进行模糊匹配,并显示查询结果。
3.学生信息修改学生管理系统允许用户对学生的基本信息进行修改。
用户可以选择需要修改的学生,然后修改学生的姓名、性别、年龄和班级等信息。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
*********大学课程设计报告课程名称高级语言程序设计设计题目学生信息管理系统专业计算机科学与技术班级学号姓名完成日期【问题描述】学生信息管理软件设计。
对学生信息进行管理,学生信息包括:学号,姓名,年龄,性别,出生年月,地址,,E-mail等。
试设计一个学生信息管理软件。
【基本要求】一、输入的形式和输入值的围形式:用scanf输入学生的学号,姓名,年龄,性别,出生年月,地址,,E-mail。
输入一个学生信息一个回车。
用输入的学号p1->num来控制输入,当输入的学号为0时,用break跳出循环。
即if(p1->num==0)break。
输入值的围:学号、年龄为整型long num; int age;姓名为字符串型15个字节char name[15];性别为字符串型,10个字节char sex[10];出生为字符串型,20个字节char chushen[20];地址为字符串型,30个字节char dizhi[30];为字符串型,输入11位数字char email[11]。
二、输出的形式输出是以表格的形式输出,即表格的每一行都能显示第一个学生的信息,第二行是显示第二个学生的信息。
三、程序所能达到的功能对学生信息进行管理,学生信息包括职学号,姓名,年龄,性别,出生年月,地址,,E-mail。
(1)系统以菜单式工作(2)学生信息录入功能。
(3)输出学生信息、浏览学生信息功能。
(4)查询和排序功能:(至少一种查询式),如按学号查询、按姓名查询等。
(5)学生信息删除、修改功能(任选项)。
(6)添加学生信息。
【测试数据】输入:设输入四个学生信息,以最后一个学生的学号为0来结束输入,学号是整型。
预期的输出结果:预期的输出结果请参见程序后的运行结果。
【数据结构】排序记录的数据元素表采用一维数组存储结构,每个元素包含8个关键字段,其类型描述为:#include<stdio.h>#include<malloc.h> //分配size字节的存储区#include<string.h> //包含字符串处理函数的头文件,可以直接调用现有的字符串处理的一系列函数#define len sizeof(struct student) //宏定义求字节运算符#include<stdlib.h> //清屏功能struct student //声明一个结构体类型struct student{long num; //定义学号为long型数据char name[15]; //定义姓名int age; //定义年龄char sex[3]; //定义性别char chushen[10]; //定义出生char dizhi[20]; //定义出生地址char phone[11]; //定义char email[20]; //定义struct student *next; //next是指针变量,指向结构体变量【算法思想】利用一维结构体存放所有学生的信息,输入后,在输出时要对学生按学号的高低排序,然后可以执行按学号查询学生信息,输入学号,删除学生信息,输入学号可以找出该学生信息,然后选择修改学生信息,如果来了新学生,还可以添加学生信息。
【总体设计】主菜单包括:输入函数、学号排序、浏览函数、删除函数、修改函数、添加函数。
图1-1学生管理总体设计【模块划分】一、主函数:main()显示系统工作菜单,显示该系统的所有功能。
告诉使用者所有将会调用的被调函数,再运用选择函数switch即可根据使用者所输入的学号进入对应的功能程序。
并且对菜单做了一个循环,进行完一个选择后,按回车键可进行清屏功能,把屏幕上除了主菜单以外都清空,然后可以继续选择那些可以使用的功能,这样可以便使用者使用,并且每一步都很清晰。
以8退出系统。
二、输入函数:struct student *creat()在该程序的前面已经定义了一个结构体struct student用来储存学生的所有信息,(学号、年龄、姓名、性别、出生日期、地址、、)。
定义p1和p2,struct student *p1,*p2;p1,p2是指向struct student类型数据的指针变量。
定义一个n=0,n是输入的个数,主要作用是:如果输入一个学生信息,首地址指向p1,head=p1;否则p2的下一个地址指向p1,p2指向p1. p2->next=p1;p2=p1;学号控制循环。
三、排序函数:void paixu(struct student *head)用一个for语句做循环,不是NULL的话,指针指向下一个,按学生学号高低排序。
整形直接交换,字符型用strcpy交换,类型相当于两个数据之间的交换。
四、输出函数:void printlist(struct student *head)在主函数里边用while控制循环,输出学生信息,然后指针指向下一个。
五、查询函数:void findList_num(struct student *head) 和void findList_num(struct student *head)输入一个学号或姓名,做一个for循环,即指针pt指向第一个地址,再定义一个指针p1,让它等于pt,他是紧跟着pt后面的一个指针,让p1->next不等于NULL,pt指向下一个地址。
这样就能修改最后一个学生信息了。
如果要查询的学生的学号在学生里,就输出该学生信息,否则,就输出查询的学生信息不存在。
六、删除函数:int shanchu(struct student *head)输入一个学号,先找到这个学生的信息。
如果输入的学号在学生信息中,就进行以下循环:如果输入的是第一个学生的话,就head等于第二个学生信息;如果输入的学生信息是最后一个,就让倒数第二个等于NULL;否则的话,就让下一个学生信息覆盖前一个。
如果输入的学号不在学生信息中,输出“此学生信息不存在”。
七、修改函数:struct student *delList(struct student *head,long del_num)输入要修改的学号,找到该学生并且输出该学生的信息。
然后屏幕上会出现学生信息的所有项目,用switch进行选择修改的项目。
选择后输入新的学生信息,用它来覆盖原来的学生信息。
八、添加函数:void insert(struct student *head)用一个while语句while(p2->next!=NULL)控制循环,p2的指针指向下一个地址,即p2=p2->next;这是找到最后一个地址,然后开辟动态存储区,p1=(struct student *)malloc(len);输入要添加的学号,用学号为0来终止循环,如果不为0,就继续输入学生信息。
【源程序】#include<stdio.h>#include<malloc.h> //分配size字节的存储区#include<string.h> //包含字符串处理函数的头文件,可以直接调用现有的字符串处理的一系列函数#define len sizeof(struct student) //求字节运算符#include<stdlib.h> //清屏功能FILE *fp;struct student //声明一个结构体类型struct student{int num; //学号为整型char name[20]; //姓名为字符串char genter[10]; //性别为字符串int age; //年龄为整型char xueli[20]; //学历为字符串int gongzi; //学号为整型char address[30]; //地址为字符串char phone[11]; //为字符串struct student *next; //next是指针变量,指向结构体变量};void menu(){printf("===========学生信息管理系统==========\n\n");printf(" 1、录入学生信息\n");printf(" 2、浏览学生信息\n");printf(" 3、查询学生信息\n");printf(" 4、删除学生信息\n");printf(" 5、插入学生信息\n");printf(" 6、修改学生信息\n");printf(" 7、排序学生信息\n");printf(" 8、退出管理系统\n");printf("=====================================\n" );}struct student *creat() //录入学生信息{int n;struct student *head;struct student *p1,*p2;n=0;p1=p2=(struct student *) malloc(len);scanf("%d\t%d\t%s\t%s\t%s\t%s\t%s\t%s",&p1->num,&p1->age,p1->name,p1 ->sex,p1->chushen,p1->dizhi,p1->phone,p1->email);head=NULL;while(p1->num!=0){n=n+1;if(n==1) head=p1;else p2->next=p1;p2=p1;p1=(struct student *)malloc(len);scanf("%d\t%d\t%s\t%s\t%s\t%s\t%s\t%s",&p1->num,&p1->age,p1->nam e,p1->sex,p1->chushen,p1->dizhi,p1->phone,p1->email);}p2->next=NULL;return(head);}void insert(struct student *head) //插入学生信息{int search_num;struct student *p,*q,*s;p=head;printf("在哪个学生前插入请输入学号:\n");scanf("%d",&search_num);while((p!=NULL)&&(p->num!=search_num)){q=p;p=p->next;}s=(struct student *)malloc(len);q->next=s;system("cls");printf("请输入学生信息:\n");printf("学号\t年龄\t姓名\t性别\t出生\t地址\t\te-mail\n");scanf("%d\t%d\t%s\t%s\t%s\t%s\t%s\t%s",&s->num,&s->age,s->name,s->sex, s->chushen,s->dizhi,s->phone,s->email);s->next=p;}void printList(struct student *head) //浏览全部学生信息{struct student *p;p=head;if(head==NULL)printf("没有学生信息!!\n");else{do{fread(p,len,1,fp);printf("%d\t%d\t%s\t%s\t%s\t%s\t%s\t%s\n",p->num,p->age,p->name,p->se x,p->chushen,p->dizhi,p->phone,p->email);p=p->next;}while(p!=NULL);}}void findList_num(struct student *head,long search_num) //按学号查找{struct student *p;p=head;while((p!=NULL)&&(p->num!=search_num))p=p->next;if(p!=NULL)printf("%d\t%d\t%s\t%s\t%s\t%s\t%s\t%s\n",p->num,p->age,p->name,p->se x,p->chushen,p->dizhi,p->phone,p->email);elseprintf("没有该学生信息!!\n");}void findList_name(struct student *head,char *search_name) //按姓名查找{struct student *p;int cmp1=0,cmp=0;p=head;while(p!=NULL)if(strcmp(p->name,search_name)!=0){p=p->next;cmp++;}else{printf("%d\t%d\t%s\t%s\t%s\t%s\t%s\t%s\n",p->num,p->age,p->name,p->se x,p->chushen,p->dizhi,p->phone,p->email);p=p->next;cmp1=1;}if(cmp!=0&&cmp1==0)printf("没有该学生信息!!\n");}void xiugai(struct student *p1,long xiu_num) //修改学生信息{struct student *p2;p2=p1;while((p2!=NULL)&&(p2->num!=xiu_num))p2=p2->next;if(p2!=NULL){scanf("%d\t%d\t%s\t%s\t%s\t%s\t%s\t%s",&p2->num,&p2->age,p2->na me,p2->sex,p2->chushen,p2->dizhi,p2->phone,p2->email);}elseprintf("没有该学生信息!!\n");}struct student *delList(struct student *head,long del_num) // 删除学生信息{struct student *p,*q;p=head;q=head;while(p &&(p->num != del_num)){q=p;p=p->next;}if(p==NULL)printf("无此学号!\n");else{if(p == head){head = p->next;free(p);}else{q->next = p->next;free(p);}}return head;}void paixu(struct student *head) //按学号排序{struct student *p,*f,*t;char ch[100];int i;t=f=p=head;for(p=head;p->next!=NULL;p=p->next){for(t=head,f=t->next;t->next!=NULL;t=t->next,f=f->next){if(t->num>f->num>0){i=t->num;t->num=f->num;f->num=i;i=t->age;t->age=f->age;f->age=i;strcpy(ch,t->name);strcpy(t->name,f->name);strcpy(f->name,ch);strcpy(ch,t->sex);strcpy(t->sex,f->sex);strcpy(f->sex,ch);strcpy(ch,t->chushen);strcpy(t->chushen,f->chushen);strcpy(f->chushen,ch);strcpy(ch,t->dizhi);strcpy(t->dizhi,f->dizhi);strcpy(f->dizhi,ch);strcpy(ch,t->phone);strcpy(t->phone,f->phone);strcpy(f->phone,ch);strcpy(ch,t->email);strcpy(t->email,f->email);strcpy(f->email,ch);}}}// return head;}void save(struct student *head) //保存为磁盘文件{struct student *p;if((fp=fopen("keshe","w"))==NULL) //打开一个文件{printf("cannot open this file\n");exit(0);}p=head;while(p!=NULL){fprintf(fp,"%d\n",p->num);fprintf(fp,"%d\n",p->age);fprintf(fp,"%s\n",p->name);fprintf(fp,"%s\n",p->sex);fprintf(fp,"%s\n",p->chushen);fprintf(fp,"%s\n",p->dizhi);fprintf(fp,"%s\n",p->phone);fprintf(fp,"%s\n",p->email);p=p->next;}fclose(fp);}struct student *read() //从磁盘读取文件{struct student *head=NULL;struct student *p=NULL;struct student *t=NULL;int a;// fp=fopen("keshe","r");if((fp=fopen("keshe","r"))==NULL) //打开一个文件{printf("cannot open this file\n");exit(0);}while(1){t=(struct student *)malloc(len);a=fscanf(fp,"%d\t%d\t%s\t%s\t%s\t%s\t%s\t%s",&t->num,&t->age,t->na me,t->sex,t->chushen,t->dizhi,t->phone,t->email);if(a==0||a==-1)return head;t->next=NULL;if(p==NULL){p=t;head=t;}else{p->next=t;p=p->next;p->next=NULL;}}fclose(fp);}void main() //主函数{int code=0;struct student *pt = NULL;for(code=1;;code++) //控制循环{menu(); //调用菜单函数printf("请输入序号:\n"); //提示输入序号scanf("%d",&code);system("cls"); //清屏(下边也是这样的功能)switch(code) //选择序号进行功能选择{case 1:{system("cls");printf("===========================输入学生信息==============================\n");printf("---------------------------------------------------------------------\n");printf("学号\t年龄\t姓名\t性别\t出生\t地址\t\te-mail\n");pt=creat(); //调用输入函数save(pt); //将数据存储到磁盘中system("cls");printf("===========================输入学生信息==============================\n");printf("---------------------------------------------------------------------\n");printf("************成功输入学生信息***********!!\n\n");printf("按回车键返回主菜单\n");getchar();getchar(); //按回车键返回system("cls");};break;case 2:{system("cls");printf("===========================学生信息表================================\n");printf("---------------------------------------------------------------------\n");printf("学号\t年龄\t姓名\t性别\t出生\t地址\t\te-mail\n");printList(read()); //调用输出函数(是从磁盘中读出的)printf("=====================================================================\n") ;printf("---------------------------------------------------------------------\n");printf("\n按回车键返回主菜单\n");getchar();getchar();system("cls");};break;case 3:{int search=0;system("cls");printf("===========================查询学生信息==============================\n");printf("---------------------------------------------------------------------\n");while(search!=3) //进入查询功能函数{printf("1、按学号查询\n2、按姓名查询\n3、退出查询\n");scanf("%d",&search); //插入查找的式switch(search){case 1: //选择学号查询{long search_num;system("cls");printf("请输入学生学号\n");scanf("%d",&search_num);system("cls");printf("===========================查询结果==================================\n");printf("---------------------------------------------------------------------\n");printf("学号\t年龄\t姓名\t性别\t出生\t地址\t\te-mail\n");findList_num(read(),search_num); //调用查找函数,将数据从磁盘中读出printf("===================================================================== \n");printf("---------------------------------------------------------------------\n");printf("\n按回车键返回查询菜单\n");getchar();getchar();system("cls");};break;case 2: //按姓名查找{char search_name[15];system("cls");printf("请输入学生姓名\n");scanf("%s",search_name); //输入要查找的学生的姓名system("cls");printf("===========================查询结果==================================\n");printf("---------------------------------------------------------------------\n");printf("学号\t年龄\t姓名\t性别\t出生\t地址\t\te-mail\n");findList_name(read(),search_name); //调用姓名查找函数printf("====================================== ===============================\n");printf("---------------------------------------------------------------------\n");printf("\n按回车键返回查询菜单\n");getchar();getchar();system("cls");};}}system("cls");};break;case 4: //删除学生信息{long del_num;system("cls");printf("===========================删除学生信息==============================\n");printf("---------------------------------------------------------------------\n");printf("请输入要删除学生信息的学号:\n");scanf("%d",&del_num); //输入要删除的学号system("cls");pt=delList(read(),del_num); //调用删除函数save(pt);printf("=========================删除结果================================\n");printf("-------------------------------------------------------------------\n");printf("学号为%d的学生信息成功删除\n",del_num);printf("\n按回车键返回主菜单\n");getchar();getchar();system("cls");};break;case 5: //插入函数{system("cls");printf("===========================插入学生信息==============================\n");printf("---------------------------------------------------------------------\n");insert(pt); //调用输入函数save(pt); //保存到磁盘中system("cls");printf("===========================插入学生信息==============================\n");printf("---------------------------------------------------------------------\n");printf("****插入学生信息成功***!!\n\n");printf("按回车键返回主菜单\n");getchar();getchar();system("cls");}break;case 6: //修改函数{long search_num;system("cls");printf("请输入要修改的学生学号:\n");scanf("%d",&search_num); //输入要修改的学生学号system("cls");printf("===========================修改学生信息==================================\n");printf("-------------------------------------------------------------------------\n");printf("学号\t年龄\t姓名\t性别\t出生\t地址\t\te-mail\n");findList_num(read(),search_num); //调用查找函数printf("\n");printf("请输入修改信息:\n");printf("学号\t年龄\t姓名\t性别\t出生\t地址\t\te-mail\n");pt=read();xiugai(pt,search_num); //调用修改函数save(pt); //保存printf("==================================== =================================\n");printf("---------------------------------------------------------------------\n");printf("****修改学生信息成功***!!\n\n");printf("\n按回车键返回查询菜单\n");getchar();getchar();system("cls");};break;case 7: //排序函数{system("cls");printf(" 按学号从小到大排序\n\n");printf("===========================学生信息表================================\n");printf("---------------------------------------------------------------------\n");printf("学号\t年龄\t姓名\t性别\t出生\t地址\t\te-mail\n");pt=read();paixu(pt); //调用排序函数printList(pt); //调用显示函数save(pt);printf("====================================== ===============================\n");printf("---------------------------------------------------------------------\n");printf("\n按回车键返回主菜单\n");getchar();getchar();system("cls");};break;case 8:read();break; //返回函数}}【测试情况】1.打开程序,进入主菜单,“学生信息管理系统”,包括七项功能,(1)输入学生信息,以输入学号位0结束;(2)浏览学生信息;(3)按学生好号或姓名查询学生信息;(4)按学号删除学生信息;(5)按学号找出要修改的学生信息,再修改该学生信息;(6)添加学生信息;(8)退出系统。