本科毕业设计-教师信息管理系统(c语言—课程设计)

合集下载

毕业设计c语言课程设计

毕业设计c语言课程设计

毕业设计c语言课程设计一、课程目标知识目标:1. 理解C语言在毕业设计中的应用场景,掌握C语言的基本语法和编程技巧。

2. 学会使用C语言进行数据结构的设计与实现,如链表、树、图等。

3. 掌握C语言在嵌入式系统、算法竞赛等领域的实际应用。

技能目标:1. 能够运用C语言编写具有实际意义的程序,解决实际问题。

2. 能够分析并优化C语言程序的运行效率,提高编程质量。

3. 培养良好的编程习惯,编写规范、易读、高质量的C语言代码。

情感态度价值观目标:1. 培养学生积极主动探索新知识的精神,提高学生的自主学习能力。

2. 增强学生的团队协作意识,培养良好的沟通与协作能力。

3. 使学生认识到C语言在计算机科学领域的重要地位,激发学生对编程的兴趣。

分析课程性质、学生特点和教学要求:1. 课程性质:本课程为毕业设计前的预备课程,旨在帮助学生掌握C语言编程技能,为毕业设计奠定基础。

2. 学生特点:学生已具备一定的计算机基础,了解编程基本概念,但实际编程能力较弱,需要加强实践操作。

3. 教学要求:注重理论与实践相结合,强调实际编程能力的培养,以项目驱动教学,提高学生的实践操作能力。

1. 独立完成C语言基础语法的学习,并能运用所学知识编写简单程序。

2. 掌握常见数据结构在C语言中的实现与应用,能够解决实际问题。

3. 编写具有一定规模的C语言项目,具备初步的软件设计能力。

4. 养成良好的编程习惯,具备团队协作能力和沟通能力。

二、教学内容1. C语言基础语法:变量定义、数据类型、运算符、表达式、控制语句(顺序、选择、循环)、函数、数组、指针。

2. 常见数据结构:链表、栈、队列、树(二叉树、查找树)、图(邻接矩阵、邻接表)。

3. 编程技巧与优化:算法复杂度分析、递归与迭代、内存管理、程序调试与优化。

4. C语言项目实践:学生信息管理系统、简易计算器、文件压缩与解压缩、小型游戏等。

5. 教学内容安排与进度:- 第一周:C语言概述、基础语法、数据类型与运算符。

c语言毕业设计课程设计

c语言毕业设计课程设计

c语言毕业设计课程设计一、课程目标知识目标:1. 学生能够掌握C语言的基本语法和程序结构,理解指针、数组、函数等核心概念。

2. 学生能够运用C语言进行数据结构的设计与实现,如链表、树、图等。

3. 学生能够运用C语言编写具有一定复杂度的程序,解决实际问题。

技能目标:1. 学生能够独立设计并完成一个小型的C语言项目,包括需求分析、设计、编码、测试等过程。

2. 学生能够运用所学知识,分析并解决项目中遇到的问题,提高编程能力和问题解决能力。

3. 学生能够通过课程学习,掌握C语言项目开发的基本方法和技巧,为毕业设计做好准备。

情感态度价值观目标:1. 学生在学习过程中,培养良好的编程习惯,注重代码规范和注释,提高代码质量。

2. 学生能够主动探究问题,发挥团队协作精神,共同解决项目中的难题。

3. 学生通过课程学习,认识到编程在现实生活中的应用价值,激发对计算机科学的兴趣和热情。

课程性质:本课程为毕业设计前的专业实践课程,旨在帮助学生巩固C语言知识,提高编程能力,为毕业设计奠定基础。

学生特点:学生已具备一定的C语言基础,具有一定的编程能力和问题解决能力。

教学要求:教师需结合实际项目案例,引导学生主动学习,注重理论与实践相结合,培养学生的编程兴趣和动手能力。

在教学过程中,关注学生的个体差异,给予个性化指导,确保学生能够达到课程目标。

通过课程学习,使学生具备独立完成毕业设计的能力。

二、教学内容1. C语言基础语法复习:包括数据类型、运算符、控制语句、函数等基本概念,参考教材相关章节,巩固学生基础知识。

2. 数据结构实现:教授学生运用C语言实现常见的数据结构,如链表、栈、队列、二叉树等,结合教材相关内容,讲解数据结构在实际项目中的应用。

3. 指针与数组:深入讲解指针的概念及其运用,数组与指针的关系,提高学生运用指针解决问题的能力。

4. 文件操作:介绍C语言文件操作的基本方法,包括文件的打开、读写、关闭等,结合实际案例,让学生掌握文件操作技巧。

教师信息管理c语言程序设计

教师信息管理c语言程序设计

教师信息管理c语言程序设计教师信息管理是一件非常重要的事情,一个好的教师信息管理系统可以有效地帮助学校管理教师的信息,包括基本信息、工作情况、任职情况等等。

本篇文章将介绍如何用C 语言设计一个教师信息管理系统。

首先,我们需要定义一些数据结构来存储教师的信息。

这些数据结构可以包括结构体和数组。

例如,我们可以定义一个教师的结构体:typedef struct{char name[20]; //教师姓名char gender; //性别int age; //年龄char department[20]; //教师所在院系char position[20]; //职称int salary; //工资} Teacher;然后我们可以用一个数组来存储多个教师的信息:Teacher teachers[100];这样,我们就可以存储100个教师的信息了。

接下来,我们需要设计一些函数来实现教师信息的增加、删除、修改和查询。

这些函数可以包括:1. void add_teacher():用于添加教师信息。

void add_teacher(){Teacher teacher;printf("请输入教师姓名:");scanf("%s", );printf("请输入教师性别:");scanf(" %c", &teacher.gender);printf("请输入教师年龄:");scanf("%d", &teacher.age);printf("请输入教师所在院系:");scanf("%s", teacher.department);printf("请输入教师职称:");scanf("%s", teacher.position);printf("请输入教师工资:");scanf("%d", &teacher.salary);teachers[count++] = teacher; //将教师信息添加到数组中}至此,我们已经完成了一个基本的教师信息管理系统。

c语言毕业设计

c语言毕业设计

c语言毕业设计C语言毕业设计在计算机科学与技术专业中,毕业设计是一个重要的环节,它是对学生在大学期间所学知识的综合运用和实践能力的体现。

对于学习C语言的学生而言,C语言毕业设计是一个重要的任务,它要求学生能够独立设计和完成一个具有实际意义的项目。

C语言作为一种通用的高级编程语言,被广泛应用于各个领域,包括操作系统、嵌入式系统、游戏开发等。

因此,选择一个合适的C语言毕业设计项目对于学生的职业发展具有重要意义。

首先,选择一个合适的C语言毕业设计项目需要考虑到自己的兴趣和专业方向。

如果你对嵌入式系统感兴趣,可以选择设计一个简单的嵌入式系统,如温度监测系统或智能家居系统。

如果你对游戏开发感兴趣,可以选择设计一个简单的游戏,如俄罗斯方块或打飞机游戏。

选择一个自己感兴趣的项目,不仅可以提高学习的积极性,还能够更好地展示自己的能力和潜力。

其次,C语言毕业设计项目应具有一定的实际意义。

一个好的毕业设计项目应该能够解决实际问题或满足实际需求。

例如,你可以设计一个简单的学生成绩管理系统,用于学校教务管理;或者设计一个简单的图书管理系统,用于图书馆的图书管理。

这样的项目不仅能够锻炼自己的编程能力,还能够为实际工作或学习提供一定的帮助。

此外,C语言毕业设计项目还应该有一定的难度和挑战性。

一个太简单的项目可能无法充分展示学生的能力和水平,而一个太难的项目可能会让学生感到无从下手。

因此,选择一个既有一定难度又能够完成的项目是非常重要的。

可以通过与指导教师的交流和讨论,确定一个合适的项目。

在进行C语言毕业设计时,学生应该遵循一定的设计原则和方法。

首先,要有良好的设计思路和结构,明确项目的目标和需求。

其次,要注重代码的可读性和可维护性,编写规范的代码和注释,方便他人阅读和修改。

此外,要进行充分的测试和调试,确保项目的正常运行和稳定性。

最后,C语言毕业设计不仅是对学生知识和能力的考验,也是一个展示自己的机会。

在设计和完成毕业设计项目的过程中,学生可以充分展示自己的创造力、解决问题的能力和团队合作精神。

c语言教师信息管理系统设计

c语言教师信息管理系统设计

c语言教师信息管理系统设计C语言教师信息管理系统设计,是一项对于教师信息进行管理的系统设计,目的在于提高教师工作的效率和管理的准确性。

该系统的开发主要涉及软件工程、信息管理以及数据库等多方面知识,下面将从以下几个方面进行详细阐述。

1.需求分析系统的需求分析是系统设计中必不可少的一部分。

系统需求的分析包括对所需的功能和性能进行系统性及完整性的描述和定义,主要是围绕教师信息管理所需的功能模块展开,包括教师个人信息、考勤管理、课表管理、教学资源、工资管理等方面,并根据需求分析结果,进一步确定系统设计方向与需求。

2.系统设计在需求分析的基础上,可进行系统设计。

系统设计包含了以下几个方面,包括架构设计、数据设计、接口设计、编码实现等,具体涉及到0号架构、界面设计、算法设计、数据库设计等,不断优化并改善系统架构,以提高系统的灵活性与可维护性。

3.数据库管理数据库管理是系统设计的重要部分。

设计一个合理的数据库,是提高系统运行效率和智能管理的基础。

在教师信息的管理中,数据的存储和查询是一个必要的环节,并且数据中应包括教师姓名、年龄、身份证号码、工资情况等。

因此,在进行数据库管理时,可采用MySQL 等数据库,并通过SQL语句进行数据的增删改查。

4.系统测试系统测试主要是对已经开发的系统进行测试,以验证系统设计和编码是否达到预期要求,并排除系统开发中可能出现的错误和漏洞,保证系统的功能完整性和稳定性。

系统测试主要包括单元测试、集成测试、系统测试等多个环节,同时也应该依据不同的设备和基础环境进行测试,确保系统能够适应不同的运行环境。

综上,C语言教师信息管理系统设计,是一项系统性的工程,要想做好这项工作,需要多专业知识的综合运用,并不断进行系统优化和改进,以满足教学管理的需要。

同时,还需要注意系统的安全性和保密性问题,确保系统开发过程中,教师个人的信息被保护得当。

c语言方面毕业设计选题

c语言方面毕业设计选题

c语言方面毕业设计选题篇一:C语言课程设计选题C语言课程设计一、设计要求与设计报告设计要求1、任意选定以下一个题目,限3人选的题目可由1-3人完成(用*表示)2、模块化程序设计3、锯齿型程序书写格式4、必须上机调试通过所有题目必须要用到链表,能将生成的文件存储于外部存储器上,并且从外部存储器上可以读写该文件的功能。

设计报告格式:1、设计目的2、总体设计(程序设计组成框图、流程图)3、详细设计(模块功能说明(如函数功能、入口及出口参数说明,函数调用关系描述等)4、调试与测试:调试方法,测试结果的分析与讨论,测试过程中遇到的主要问题及采取的解决措施5、源程序清单和执行结果:清单中应有足够的注释6、体会。

二、检查要求:1、每个人必须有程序运行结果2、每个人必须交《C语言课程设计报告》和设计程序清单3、课程设计任务必须由个人独立完成,禁止相互抄袭,如有发现,严肃处理三、打分标准:1、根据程序运行结果2、根据《C语言课程设计报告》,学生能对自己的程序面对教师提问并能熟练地解释清楚,以上二项缺一不可3、由于课程设计各题目的难度不一,所以成绩的评定将根据各人完成题目的难度和完成情况的不同,分别评定成绩,如未能完成任何题目,则以不及格计算四、提交时间课程设计任务完成时间(以安排为准),届时上交课程设计报告和程序。

课设题目*题目一:职工信息管理系统设计试设计一职工信息管理系统,使之能提供以下功能:1、系统以菜单方式工作2、职工信息录入功能(职工信息用文件保存)--输入3、职工信息浏览功能--输出4、查询或排序功能:(至少一种查询方式)——算法,按工资查询,按学历查询等5、系统进入画面(静态或动画)6、职工信息删除、修改功能(可选项)创新要求在基本要求达到后,可进行创新设计,如对菜单进行美化。

信息描述职工信息包括职工号、姓名、性别、出生年月、学历、职务、工资、住址、电话等(职工号不重复)。

功能描述1. 录入职工信息并保存2. 显示所有职工信息(以一定的格式)3. 查询职工信息(以一种或多种方式)4. 修改职工信息并保存5. 删除职工信息*题目二:图书信息管理系统设计图书信息包括:登录号、书名、作者名、分类号、出版单位、出版时间、价格等。

c语言课程设计信息管理

c语言课程设计信息管理一、教学目标本节课的教学目标是让学生掌握C语言在信息管理方面的基本概念和应用,包括数据结构、算法和程序设计等方面的知识。

具体来说,知识目标要求学生了解C语言的基本语法、数据类型、运算符、控制语句和函数等;技能目标要求学生能够使用C语言编写简单的信息管理程序,如员工信息管理系统、图书管理系统等;情感态度价值观目标要求学生培养对编程的兴趣和热情,提高自主学习和解决问题的能力。

二、教学内容本节课的教学内容主要包括C语言的基本语法、数据类型、运算符、控制语句和函数等。

具体安排如下:1.引言:介绍C语言的发展历程、特点和应用领域。

2.数据类型和变量:讲解整型、浮点型、字符型等数据类型,以及变量的声明和使用。

3.运算符:介绍算术运算符、关系运算符、逻辑运算符等,并通过示例演示其用法。

4.控制语句:讲解顺序结构、分支结构和循环结构,以及相应的控制语句。

5.函数:介绍函数的定义、声明和调用,讲解函数的参数传递和返回值。

6.实例讲解:通过实际案例,演示如何使用C语言编写简单的信息管理程序。

三、教学方法为了激发学生的学习兴趣和主动性,本节课将采用多种教学方法,如讲授法、讨论法、案例分析法和实验法等。

具体安排如下:1.讲授法:讲解C语言的基本语法、数据类型、运算符、控制语句和函数等知识点。

2.讨论法:学生进行小组讨论,分享学习心得和编程经验。

3.案例分析法:分析实际案例,让学生了解C语言在信息管理方面的应用。

4.实验法:安排课后的编程实践,让学生动手编写简单的信息管理程序。

四、教学资源为了支持教学内容和教学方法的实施,本节课将准备以下教学资源:1.教材:《C语言程序设计》等相关教材,为学生提供理论知识的学习材料。

2.参考书:提供一些拓展阅读的资料,帮助学生深入了解C语言的编程技巧。

3.多媒体资料:制作PPT课件,展示C语言的基本语法和示例代码。

4.实验设备:为学生提供计算机和编程环境,让他们能够实际操作和实践。

C++教师信息管理系统

一、课程设计问题描述学院教学信息管理系统是高等学校教务管理的重要组成部分,其内容较多,为了简化计论,要求设计的管理系统能够完成以下功能:(1)输入:输入每一位教师记录,将其信息写入文件中;(2)显示:显示每位教师记录;(3)排序:按职工号或教学效果综合评分进行排序,并显示;(4)查找:完成按姓名或课程查找教师的相关记录,并显示;(5)创建:创建新的纪录,输入数位教师记录,显示在屏幕上并保存;二、课程设计目的和要求:经过一个学期的《C++面向对象实用教程》课程的学习,已经有了一定地程序设计基础,但是要学好C++程序设计,不仅要认真阅读课本知识和从事课堂学习,更重要的是要进行上机实践,通过上机实践才能增强和巩固知识。

三、系统设计(算法分析)1、整体结构整个程序定义四个类(1)CPerson类:包含数据成员name,age,sex,记录姓名,年龄,性别这些信息,并包含构造函数及其他成员函数(定义CPerson类以后若有需要,可再通过继承派生其他类);(2)CTeacher:共有继承CPerson类,包含数据成员title,teano,course,score,分别记录职称,职工号,3门课程和教学效果综合评分等信息,另有其他成员函数;(3)CNode类:节点类,包含2个数据成员,CTeacher类对象p和CNode类指针对象next,作为构建链表的单位;(4)CList类:链表类,声明为CNode类的友元类,数据成员有头结点head,尾节点tail,记录当前节点的p和当前节点前一节点的pre,链表相关的输入,显示,排序,查找,创建全部设为成员函数。

总体流程为先打开文件,读取文件中的记录来创建链表,然后对链表进行操作,最后保存至文件中3、各函数的功能和实现学院教学信息管理系统的相关功能由对应的函数来实现. (1)输入教师信息并显示void Append()通过提示一步步输入信息,由程序构建新节点并加入链表(2)显示所有记录void Print()(3)按职工号或教学效果综合评分排序并显示int SortMenu()void SortMenuControl()void InsertByTeano(CNode *newp)void SortByTeano()void InsertByScore(CNode *newp)void SortByScore()(4)按姓名或课程查找教师记录并显示int SearchMenu()void SearchMenuControl()void SearchByName()void SearchByCourse()四、程序源代码#include ”stdafx.h”#include 〈iostream〉#include <fstream>#include <vector>#include <algorithm〉#include 〈cstring>#include <string>using namespace std;class CPerson{private:string name;int age;char sex;public:CPerson(){}CPerson(string name,int age=0,char sex='M'){this->name=name;this—〉age=age;this—>sex=sex;}void SetAge(int age=0){this—>age=age;}void SetNameAndSex(string name,char sex){this->name=name;this-〉sex=sex;}void ShowInfo(){cout<<name<〈"\t"〈〈age〈<"\t"〈<(sex==’M’?"男”:"女")〈〈endl;}string GetName(){return name;}int GetAge(){return age;}char GetSex(){return sex;};class CTeacher:public CPerson{private:string title;//职称string teano;//职工号vector〈string〉course;//教授课程float score;//教学效果综合评分public:CTeacher(){}CTeacher(string name,int age=0,char sex='M'):CPerson(name,age,sex){}void SetData(string title,string teano){this—>title=title;this->teano=teano;}void SetCourse(string c1,string c2,string c3){course。

教师管理系统c语言课程设计

教师管理系统c语言课程设计一、教学目标本课程的目标是让学生掌握教师管理系统的设计与实现,具备运用C语言进行程序设计的能力。

具体目标如下:1.知识目标:学生需掌握C语言的基本语法、数据类型、运算符、控制结构、函数、数组、指针等基本概念。

2.技能目标:学生能够运用C语言编写简单的程序,解决实际问题。

通过本课程的学习,使学生具备教师管理系统的设计与实现能力。

3.情感态度价值观目标:培养学生对计算机科学的兴趣,提高学生独立思考、创新解决问题的能力,培养学生的团队协作精神。

二、教学内容本课程的教学内容主要包括C语言的基本语法、数据类型、运算符、控制结构、函数、数组、指针等基本概念,以及教师管理系统的设计与实现。

具体安排如下:1.C语言基本语法与数据类型2.运算符与控制结构3.函数与数组4.指针与字符串5.文件操作6.教师管理系统设计与实现三、教学方法本课程采用讲授法、案例分析法、实验法等多种教学方法,以激发学生的学习兴趣和主动性。

1.讲授法:用于讲解C语言的基本语法、数据类型、运算符、控制结构、函数、数组、指针等基本概念。

2.案例分析法:通过分析实际案例,使学生更好地理解教师管理系统的设计与实现。

3.实验法:让学生亲自动手编写程序,解决实际问题,提高学生的实践能力。

四、教学资源本课程所需教学资源包括教材、参考书、多媒体资料、实验设备等。

1.教材:选用权威、实用的C语言教材,为学生提供系统、全面的学习资料。

2.参考书:提供丰富的课外阅读资料,帮助学生拓展知识面。

3.多媒体资料:制作精美的课件,生动形象地展示课程内容。

4.实验设备:为学生提供充足的计算机设备,确保实验教学的顺利进行。

五、教学评估本课程的评估方式包括平时表现、作业、考试等。

评估方式应客观、公正,能够全面反映学生的学习成果。

1.平时表现:评估学生在课堂上的参与程度、提问回答等情况,以了解学生的学习状态。

2.作业:布置适量作业,评估学生的知识掌握程度和实际编程能力。

教师系统管理c语言课设概要设计

教师系统管理c语言课设概要设计
概要设计主要包括以下几个方面:系统需求分析、系统结构设计、功能模块设计和数据库设计。

系统需求分析:
1. 了解教师系统的基本需求,如教师信息管理、课程信息管理、学生信息管理等。

2. 了解系统所需的技术要求,如使用C语言作为开发语言,使用MySQL数据库等。

系统结构设计:
1. 系统采用客户端-服务器模式。

2. 客户端部分包括用户界面和业务处理模块,服务器部分负责数据存储和管理。

功能模块设计:
1. 教师信息管理模块:包括教师个人信息的增删改查功能。

2. 课程信息管理模块:包括课程的增删改查功能。

3. 学生信息管理模块:包括学生信息的增删改查功能。

4. 成绩管理模块:包括成绩的录入和查询功能。

5. 数据统计模块:包括课程平均成绩、学生平均成绩等数据的统计功能。

数据库设计:
1. 设计数据库表结构,包括教师表、课程表、学生表和成绩表等。

2. 设计表之间的关系,如教师与课程之间为一对多关系,学生与成绩之间为一对多关系。

以上为教师系统的概要设计,具体的实施细节可以根据实际情况进行调整和完善。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

课程设计任务书
计算机科学与技术专业2010 年级一班陈金利
一、设计题目
教师信息管理系统设计
二、主要内容
教师信息包括教师号、姓名、性别、年龄、学历、职称、工资、住址、电话等(教师号不重复)。

试设计一教师信息管理系统,使之能提供以下功能:
(1)系统以菜单方式工作
(2)教师信息录入功能输入
(3)教师信息删除功能
(4)教师信息浏览功能输出
(5)查询和排序功能:(至少一种查询方式)一一算法按教师号查询
按职称查询等
三、具体要求
围绕课程设计的目的和意义,基本要求如下:
1、认真阅读《C语言课程设计》指导书,明确课程设计的目的、意义和要求;
2、快速总结C程序设计语言的精髓,如:函数的概念、函数的设计和函数的调用;
3、快速熟悉Tuber C或C++的上机环境。

能熟练进行高级编辑操作
(特别是字块操作);熟悉步进式、断点跟踪的程序调试方法,提高工作效率。

4、根据“课程设计题目”,采用结构化的程序设计思想,确定系统的总体设计方案、确"定时间进度。

如果是多人共一题,则要首先完成小组内的人员分工及安排,不允许重题现象。

5•学习并了解良好的程序设计风格。

按质、按量、并按时间完成课程设计的任务。

6 •提供可运行的课程设计系统,参加上机面试答辩。

本次课程设计的重点是:学会设计并编写函数,掌握好各函数之间的调用关系;利用文件操作函数,建立数据库并完成对数据库的各种操作;掌握几种典型算法的应用(如:冒泡法、选择排序法和折半查找法)。

同时锻炼学生根据题目进行分析、设计、编码、调试程序和书写必要文档的综合处理能力,从实践中学习并体会程序设计的结构化思想和设计方法。

四、进度安排
依照教学计划,课程设计时间为3周。

按照软件工程的思想,软件系统的分析设计至关重要,并要充分重视书写“文档”。

避免甚至杜绝“拿到题目就编码”的现象。

建议将时间分为三个阶段:
第一阶段,根据题目要求,拿出系统的总体设计方案:即构思各程序模块的算法,并画出相应的N-S图,同时编写相应的文档;
第二阶段,根据N-S图编写程序代码并单独调试,再将调试通过的各个子模块进行集成调试;
第三阶段,归纳文档资料,按要求填写在《课程设计说明书》上,并参
加答辩
三个阶段时间分配的大概比例是:35: 45: 20。

五、完成后应上交的材料
1 •课程设计的题目、系统的总功能和各子模块的功能;
2•题目的设计思想(或算法)简述;
3 •主要程序的框图(要求用N-S图);
4•源程序代码(要求在关键的位置有注释,从而增加程序的可读性);
5•课程设计的总结报告,主要包括以下内容:
(1)课程设计中遇到的主要问题和解决方法;
(2)你的创新和得意之处;
(3)设计中存在的不足及改进的设想;
(4)本次课程设计的感想和心得体会。

以上完成的源程序及相关文档,填写在《课程设计说明书》上,要求干净整洁,符合课程设计的要求和规范。

六、总评成绩
.题目设计思想简述
如上图所示,该教师信息管理系统主要是一个以动态链表的应用为基础来实现对教师信息的录入,查询,删除等功能。

.程序的N—S图
2.1总程序的N—S图
说明:各功能都是通过调用子函数来实现的。

2.2各子函数的N —S图
子函数主要包括教师信息录入,教师信息浏览,教师信息删除,教师信息查询和教师信息排序等5个。

在退出系统时调用了一个保存信息到文件中的函数,该函数只是简单的应用了文件的读写功能,在
此不写出其N—S图。

2.2.1教师信息录入函数
说明:p仁(struct teacher *)malloc(LEN)中LEN是在程序开头的宏
定义(#define LEN sizeof(struct teacher)。

其中n为全局变量,用来统计链表的结点数,以下出现的n都是同一个。

2.2.2教师信息浏览函数
p=head
链表头为空^---------------------- -----
显示“还输出p所指向的位置中的教师的所有信息
未录入
过信息”p=p->n ext
直到p为空
说明:实际程序中在链表头为空是提供了可以浏览之前保存在文件中的信息的功能,当选择该功能时就调用了一个读取文件的函数。

该函数只是对文件读写的简单应用,详细请看后面第三部分代码,这里不写出其N-S图。

2.2.4教师信息查询的函数
在查询方面程序为用户提供了4种不同方式的查询,每一种方式的查询为一个子函数,此时也是采用一个菜单栏函数进行选择查询方式并调用该种方式的函数。

菜单栏函数跟主程序菜单栏的算法一样,








当i!=p1->num
pj「>next 为
空?
------------ -----------

退出p2=p1
循环
p1=p1- >n ext
i!=p1->num?,
J
一-----------
------------
_____
head=p1- >n ext p2->n ext=p1- >next
n=n-1
p仁
head
1为链表
输出“已录入
的教师信息中
没有该教师
号”
T F
此处只给出查询函数的N—S图
说明:该N—S图是对应姓名,教师号,职称,年龄四种查找方式的函数的。

当选择教师号查找时,输入i的即为教师号,与i做比较的为p中的教师号,选择其他查找方式时类似。

2.2.5教师信息排序函数
i=1
当i 小于n 时
j=0
当j 小于n-i 时
、\p!中的对应
一i"
p3=p1
为链表头
head=p2
p3->n ext=p2
p 仁p2
p4=p2->n ext p2->n ext=p1
p1- >n ext=p4
p2=p2- >n ext
p3=p2 p2=p4
p 仁head p2=p1- >n ext
输出“还未录入过教师信息”并退出函数
第二个结点为空? -------- ——■
F
p 仁head
p2=head->n ext
排序也跟查询一样给出多种排序方式并采用菜单栏函数,此处也只
给出排序函数的N — S 图
说明:p1,p2指向的结点用来比较,p3, p4是用来记录结点的,当选用的排序方式不同, p1,p2用来比较的信息为所选方式的信息。

相关文档
最新文档