C语言程序设计课程设计报告—宿舍管理系统
C语言课程设计——学生宿舍管理系统(总17页)
C语言课程设计——学生宿舍管理系统(总17页)-CAL-FENGHAI.-(YICAI)-Company One1-CAL-本页仅作为文档封面,使用请直接删除****大学C语言课程设计报告题目:学生宿舍管理系统系部名称:专业名称:班级:学号:学生姓名:指导教师:时间:一、课程设计目的1.?设计一个ubuntu下的学生宿舍管理系统2.?掌握用C语言定义单链表结构,并实现其创建、插入、删除等基本操作。
二、课程设计内容用C语言编写“学生宿舍管理系统”,要求如下:1.创建链表,录入数据。
2.数据的读写操作。
3.数据的更新操作。
4.数据的删除和插入。
5.请你要求对数据进行查找。
6.按要求排序。
7.设计总体菜单界面。
三、实验要求1、录入数据学生的基本信息,包括学号、姓名、性别、年龄、专业、班级等。
宿舍楼的基本信息,包括宿舍楼号、学生所住的房间号和宿舍床位号等。
2、数据存储信息的录入要求用链表,把输入的信息要求存储到指定文件夹中,以便随时查看,也可供程序调用,方便操作人员不用重复输入数据。
3、数据的更新更新包括插入、删除、修改。
删除分根据学号删除和根据学生的楼层信息删除。
5、数据的查询查询可以根据学号和宿舍信息不同方面进行查询,方便操作者使用。
6、数据的排序操作者可以使所输入的信息按学号排序。
7、数据的统计按整体统计,统计所有学生人数,男生人数和女生人数。
四、概要设计1.系统结构图(功能模块图)2.功能模块说明:(1). 数据录入:创建单链表,调用Initnode()函数申请头结点,在调用append(),在调用Write_to_File()函数将信息写入文件中,(2) 插入模块:先将文件信息读出,再调用insert()函数,可以向文件中插入信息。
(3)插入模块:先将文件信息读出,再调用del()函数,可以将输入错误或者需要的信息删除。
(4) 修改模块:先将文件信息读出,再调用modify()函数,将输入错误的信息修改。
c语言课课程设计宿舍管理
c语言课课程设计宿舍管理一、教学目标本节课的学习目标包括以下三个方面:1.知识目标:学生需要掌握C语言的基本语法和编程技巧,了解宿舍管理系统的需求和功能,并能够运用C语言实现简单的宿舍管理系统。
2.技能目标:学生能够运用所学的C语言知识,进行编程实践,培养解决问题的能力和创新思维。
3.情感态度价值观目标:培养学生对计算机科学的兴趣,增强学生自主学习的能力和团队合作意识。
在制定教学目标时,充分考虑了课程性质、学生特点和教学要求,将目标分解为具体的学习成果,以便后续的教学设计和评估。
二、教学内容本节课的教学内容主要包括以下几个部分:1.C语言基本语法和编程技巧,包括变量、数据类型、运算符、控制结构等。
2.宿舍管理系统的需求分析和功能介绍。
3.使用C语言实现宿舍管理系统的基本功能。
教学内容的选择和确保了科学性和系统性,详细的教学大纲明确了教学内容的安排和进度,教材的章节和列举的内容也与教学目标相符合。
三、教学方法为了激发学生的学习兴趣和主动性,本节课将采用多种教学方法,包括:1.讲授法:讲解C语言的基本语法和编程技巧。
2.案例分析法:通过分析宿舍管理系统的需求和功能,引导学生运用C语言进行编程实践。
3.实验法:学生在实验室进行编程实践,培养解决问题的能力和创新思维。
通过多样化的教学方法,使学生能够在实践中掌握C语言的知识和技能。
四、教学资源为了支持教学内容和教学方法的实施,丰富学生的学习体验,本节课将使用以下教学资源:1.教材:C语言编程教程,用于讲解C语言的基本语法和编程技巧。
2.多媒体资料:包括宿舍管理系统的需求分析和功能介绍的PPT,以及相关的编程案例和实验指导书。
3.实验设备:计算机和网络设备,用于学生进行编程实践和实验。
通过以上教学资源的选择和准备,能够有效地支持教学活动的开展,提高学生的学习效果。
五、教学评估为了全面、客观、公正地评估学生的学习成果,本节课将采用以下评估方式:1.平时表现:通过观察学生在课堂上的参与程度、提问回答、小组讨论等表现,评估学生的学习态度和理解程度。
c语言宿舍管理系统课程设计
c语言宿舍管理系统课程设计一、课程目标知识目标:1. 理解C语言在开发宿舍管理系统中的应用,掌握基本的数据类型、语法和结构;2. 学会使用数组、结构体、文件操作等C语言特性进行数据处理和存储;3. 掌握模块化编程思想,理解函数的定义、调用和参数传递。
技能目标:1. 能够运用所学知识,设计并实现一个简单的宿舍管理系统;2. 培养学生分析问题、解决问题的能力,通过编写代码解决宿舍管理中的实际问题;3. 提高学生的团队协作能力,通过小组合作完成课程设计。
情感态度价值观目标:1. 激发学生对编程的兴趣,培养其对计算机科学的热爱;2. 培养学生的耐心和毅力,使其在面对编程困难时保持积极的心态;3. 增强学生的责任感,使其认识到编程在解决实际问题中的重要性。
课程性质:本课程设计属于实践性课程,以培养学生的实际编程能力为目标。
学生特点:学生具备一定的C语言基础,对编程有一定兴趣,但实际操作经验不足。
教学要求:结合学生特点,以实用性为导向,注重培养学生的动手能力和团队协作精神。
通过课程设计,使学生将所学知识应用于实际项目中,提高其解决实际问题的能力。
课程目标分解为具体学习成果,以便于教学设计和评估。
二、教学内容1. C语言基础知识回顾:数据类型、运算符、表达式、控制结构(第二章)- 强化基本语法,为后续编程打下坚实基础。
2. 函数与模块化编程:函数的定义、调用、参数传递(第四章)- 培养学生模块化编程思想,提高代码复用性和可维护性。
3. 数组与字符串:一维数组、二维数组、字符串操作(第三章)- 为处理宿舍信息数据提供有效手段。
4. 结构体与文件操作:结构体定义、结构体数组、文件读写(第五章)- 实现对宿舍信息的存储和读取功能。
5. 宿舍管理系统功能设计:- 登录与权限管理(第六章)- 宿舍基本信息管理(第三章、第五章)- 学生信息管理(第三章、第五章)- 宿舍卫生管理(第三章、第五章)- 数据查询与统计(第四章)6. 项目实践与团队协作:- 将学生分组,每组负责一个模块的开发,提高团队协作能力;- 结合教材内容,按进度完成各个模块的设计与实现。
c语言课程设计报告(宿舍管理系统)
西安郵電大學C语言课程设计报告书学院名称计算机学院学生姓名吴戌睿专业名称网络工程班级1201班学号04122030指导教师陈皓2013年06月03日至时间2013年06月12日实验题目:学生宿舍管理系统一、实验目的通过本课程设计,强化上机动手能力,使学生在理论和实践的基础上进一步巩固《C 语言程序设计》课程学习的内容,掌握工程软件设计的基本方法。
通过这次实习练习,可以更进一步的熟悉所学的知识,还可以加强和巩固知识。
长达两周的上机练习,为我们提供了很好的编程环境。
更好的了解编程的意义,为将来参加实践活动以及以后的毕业设计打下坚实的基础。
二、实验内容我设计的是“车辆管理系统”,主要是针对车辆信息的管理,适用对象主要是需要统一管理的车辆,例如租车公司。
包括车辆的序号,车牌,品牌,车主信息。
在编写过程中主要运用C语言的基本知识有:数据类型(整形、实型、字符型、指针、数组、结构等);运算类型(算术运算、逻辑运算、自增自减运算、赋值运算等);程序结构(顺序结构、判断选择结构、循环结构);大程序的功能分解方法(即函数的调用与使用)等。
三、需求分析该程序是由C语言编写的一个车辆管理查询软件,本程序在Microsoft Visual C++ 6.0下运行,其主要功能是实现对车辆信息的录入、添加、删除、修改、查询、统计。
其中查询可以分别以序号,车牌号为关键字查询车辆信息。
四、概要设计1、方案设计2、数据结构说明程序中数据主要是学生信息,具体属于类型如下:struct car{int num; /*序号*/char chepai[10]; /*车牌号*/ char trademark[10]; /*品牌*/ char name[20]; /*车主姓名*/ char call[20]; /*联系方式*/ struct car *next;};3、模块功能说明第一密码模块:调用mima(),进行初始登陆,管理者的注册与登录操作。
C宿舍管理系统课程设计
C 宿舍管理系统 课程设计一、课程目标知识目标:1. 让学生理解宿舍管理系统的基本概念,掌握其功能模块和操作流程;2. 使学生掌握数据库设计原则,能运用所学知识构建宿舍管理系统数据库;3. 帮助学生掌握C语言编程技巧,实现宿舍管理系统的功能需求。
技能目标:1. 培养学生运用C语言进行编程的能力,能够独立完成宿舍管理系统的功能模块编写;2. 提高学生分析问题、解决问题的能力,使其能够针对宿舍管理中的实际问题提出合理的解决方案;3. 培养学生团队协作能力,能够在小组合作中发挥各自优势,共同完成项目任务。
情感态度价值观目标:1. 激发学生对计算机编程的兴趣,培养其主动学习的态度;2. 培养学生认真负责的工作态度,使其在项目实施过程中注重细节,追求卓越;3. 引导学生关注宿舍管理问题,培养其主人翁意识,提高社会责任感。
课程性质:本课程为实践性较强的课程,旨在让学生通过实际项目开发,将所学知识运用到实际工作中。
学生特点:学生具备一定的C语言基础,对编程有一定了解,但缺乏实际项目经验。
教学要求:注重理论与实践相结合,强调动手实践,培养学生解决实际问题的能力。
在教学过程中,将目标分解为具体的学习成果,以便进行教学设计和评估。
二、教学内容1. 宿舍管理系统概述:介绍宿舍管理系统的基本概念、功能需求及系统架构,关联课本第1章内容。
2. 数据库设计:讲解数据库设计原则,指导学生运用所学知识构建宿舍管理系统数据库,关联课本第3章内容。
- 数据库表设计- 关系映射- 数据库操作3. C语言编程基础:复习C语言基础知识,重点讲解编程技巧,关联课本第2章内容。
- 数据类型与变量- 控制语句- 函数与模块化编程4. 宿舍管理系统功能模块实现:根据需求分析,运用C语言编程实现宿舍管理系统的功能模块,关联课本第4章内容。
- 学生信息管理- 宿舍楼信息管理- 宿舍分配与调整- 费用管理5. 系统测试与优化:教授系统测试方法,引导学生对宿舍管理系统进行测试与优化,关联课本第5章内容。
C宿舍管理系统课程设计
C 宿舍管理系统 课程设计一、课程目标知识目标:1. 学生能够理解宿舍管理系统的基本概念、功能模块及其在实际中的应用。
2. 学生能够掌握使用数据库进行数据存储、检索与管理的基本方法。
3. 学生能够运用结构化编程思想,设计并实现宿舍管理系统的基本功能。
技能目标:1. 学生能够运用所学知识,独立设计并实现一个简易的宿舍管理系统。
2. 学生能够通过实践操作,掌握数据库查询、更新和删除等操作技能。
3. 学生能够运用编程工具,进行系统功能的编码、调试与优化。
情感态度价值观目标:1. 学生通过本课程的学习,培养团队协作、沟通交流的能力,养成良好的合作精神。
2. 学生能够认识到信息技术在现实生活中的重要作用,增强对信息技术的兴趣和认同感。
3. 学生能够遵循法律法规,尊重他人隐私,养成良好的信息伦理素养。
分析课程性质、学生特点和教学要求,本课程旨在帮助学生将理论知识与实际应用相结合,提高学生的动手实践能力和创新能力。
课程目标具体、可衡量,以便学生和教师能够清晰地了解课程的预期成果。
通过本课程的学习,学生将能够独立设计并实现一个宿舍管理系统,为今后的学习和工作打下坚实的基础。
二、教学内容1. 宿舍管理系统概述- 了解宿舍管理系统的概念、发展及应用场景。
- 分析宿舍管理系统的功能模块及其相互关系。
2. 数据库基础- 学习数据库的基本概念、数据模型和关系型数据库的设计方法。
- 掌握SQL语句,进行数据查询、更新、插入和删除等操作。
3. 系统设计- 分析系统需求,明确系统功能。
- 学习结构化分析方法,绘制E-R图、数据流图等设计图。
4. 编程实现- 学习一种编程语言(如Java、C#等),掌握基本语法和编程规范。
- 根据系统设计,编写程序实现各功能模块。
5. 系统测试与优化- 学习测试方法,对系统进行功能测试、性能测试等。
- 分析测试结果,对系统进行优化和改进。
6. 实践项目- 以小组为单位,设计并实现一个简易的宿舍管理系统。
c语言寝室管理系统课程设计
c语言寝室管理系统课程设计一、教学目标本课程旨在通过C语言编程实现一个简单的寝室管理系统,让学生掌握C语言的基本语法、数据结构、文件操作等知识,培养学生的编程能力、逻辑思维能力和问题解决能力。
1.掌握C语言的基本语法和编程技巧。
2.了解数据结构的基本概念,学会使用结构体和数组。
3.掌握文件操作的方法,能编写简单的文件读写程序。
4.能够使用C语言编写简单的程序,实现对寝室信息的增删改查功能。
5.具备良好的编码习惯,能够编写清晰、规范的代码。
6.学会使用调试工具,能够独立排查和解决问题。
情感态度价值观目标:1.培养学生对编程的兴趣,增强自信心,培养克服困难的勇气。
2.培养学生团队合作精神,学会与人沟通和协作。
3.培养学生关注社会问题,提高社会责任感和使命感。
二、教学内容本课程的教学内容主要包括C语言基本语法、数据结构、文件操作等。
1.C语言基本语法:介绍C语言的数据类型、运算符、控制语句、函数等基本知识。
2.数据结构:讲解结构体、数组、链表等基本数据结构的概念和应用。
3.文件操作:讲解文件打开、关闭、读写等基本文件操作方法。
4.寝室管理系统实现:通过实际项目案例,引导学生运用所学知识编写程序,实现对寝室信息的增删改查功能。
三、教学方法本课程采用讲授法、案例分析法、实验法等多种教学方法。
1.讲授法:通过讲解C语言的基本语法、数据结构和文件操作等知识,使学生掌握基本概念和编程方法。
2.案例分析法:通过分析实际项目案例,引导学生运用所学知识解决实际问题。
3.实验法:安排实验室实践环节,让学生动手编写程序,培养学生的实际编程能力和问题解决能力。
四、教学资源1.教材:《C程序设计语言》(K&R)或《C语言入门到精通》等。
2.参考书:《C Primer Plus》、《C语言深度探索》等。
3.多媒体资料:教学PPT、视频教程等。
4.实验设备:计算机、编程调试工具等。
教学资源应根据实际教学需求进行选择和准备,以支持教学内容和教学方法的实施,提高学生的学习体验。
宿舍管理系统课程设计c
宿舍管理系统课程设计c一、课程目标知识目标:1. 让学生理解宿舍管理系统的基本概念,掌握其功能模块和使用方法。
2. 使学生掌握数据库设计原则,能独立完成宿舍管理系统数据库的构建。
3. 让学生掌握C语言编程技巧,能够运用结构体、文件操作等知识实现宿舍管理功能。
技能目标:1. 培养学生运用C语言进行程序设计的能力,提高编程技巧。
2. 培养学生分析问题、解决问题的能力,能够根据实际需求设计并实现宿舍管理系统。
3. 培养学生团队协作能力,学会与他人共同探讨、研究,共同完成项目任务。
情感态度价值观目标:1. 培养学生热爱编程,对计算机科学产生浓厚的兴趣。
2. 培养学生具备良好的学习习惯,严谨、认真、负责的态度。
3. 增强学生的社会责任感,认识到信息技术在生活中的应用和重要性。
分析课程性质、学生特点和教学要求,本课程旨在通过宿舍管理系统课程设计,使学生将所学C语言知识应用于实际项目中,提高编程能力和解决实际问题的能力。
课程目标具体、可衡量,有助于学生和教师在课程结束后清晰地了解预期成果,并为后续教学设计和评估提供依据。
二、教学内容本课程教学内容围绕宿舍管理系统设计,结合课程目标,选择以下内容进行组织:1. 宿舍管理系统概述:介绍系统的功能、模块划分以及应用场景,使学生了解课程设计背景。
2. 数据库设计:讲解数据库设计原则,指导学生完成宿舍管理系统数据库的构建,包括表结构设计、数据完整性约束等。
3. C语言编程基础:复习C语言基础知识,强调结构体、文件操作等在本课程中的应用。
4. 宿舍管理系统功能实现:详细讲解各功能模块的编程实现,包括:- 学生信息管理:涉及学生信息的增加、删除、修改和查询等功能;- 宿舍楼信息管理:包括宿舍楼的增加、删除、修改和查询等功能;- 寝室分配与调整:实现寝室分配、调整以及查询功能;- 缴费管理与查询:完成学生缴费信息的录入、修改、查询等功能。
5. 系统测试与优化:教授测试方法,指导学生进行系统测试,并提出优化方案。
c课程设计寝室管理系统
c 课程设计寝室管理系统一、课程目标知识目标:1. 让学生掌握寝室管理系统的基本概念、功能模块及其运作原理。
2. 了解并掌握数据库、编程语言等基本知识在寝室管理系统中的应用。
3. 学会运用系统分析方法,对寝室管理进行需求分析和系统设计。
技能目标:1. 培养学生运用所学知识,独立设计并实现一个简单的寝室管理系统的能力。
2. 提高学生的编程实践能力,学会使用至少一种编程语言进行系统开发。
3. 培养学生的团队协作能力,学会在项目中进行有效沟通与分工。
情感态度价值观目标:1. 培养学生对信息技术学科的兴趣,激发其探索精神和创新意识。
2. 培养学生具备良好的信息素养,认识到信息技术在现实生活中的重要应用和价值。
3. 增强学生的社会责任感,使其认识到为他人提供便捷服务的重要性。
分析课程性质、学生特点和教学要求,本课程旨在使学生在掌握基本理论知识的基础上,通过实践操作,培养实际应用能力。
课程目标具体、可衡量,以便学生和教师能够清晰地了解课程的预期成果。
通过本课程的学习,学生将能够将所学知识应用于实际项目中,为未来的学习和工作打下坚实基础。
二、教学内容1. 寝室管理系统概述:介绍寝室管理系统的基本概念、功能模块及其在实际生活中的应用。
教材章节:第一章2. 数据库知识:讲解数据库的基本原理,重点掌握SQL语言及其在寝室管理系统中的应用。
教材章节:第二章3. 编程语言:学习并掌握一种编程语言(如Java、Python等),用于开发寝室管理系统。
教材章节:第三章4. 系统分析方法:介绍系统分析方法,如需求分析、系统设计等,并应用于寝室管理系统。
教材章节:第四章5. 寝室管理系统设计与实现:结合前述知识,设计并实现一个简单的寝室管理系统。
教材章节:第五章6. 项目实践:分组进行项目实践,培养学生的团队协作能力和实际操作能力。
教材章节:第六章教学内容按照教学大纲进行安排和进度,保证科学性和系统性。
通过以上六个方面的学习,使学生能够全面掌握寝室管理系统的相关知识,并具备实际应用能力。
学生宿舍管理系统---C语言编程
“学生宿舍管理系统”C语言课程设计报告一、程序功能简介我设计的是“学生宿舍管理系统”,主要是针对住宿学生个人信息的管理,适用对象主要是学校,以方便学校对住宿学生的管理。
包括学生的、学号、性别、专业、班级等等。
在编写过程中主要运用C语言的基本知识有:数据类型(整形、实型、字符型、指针、数组、结构等);运算类型(算术运算、逻辑运算、自增自减运算、赋值运算等);程序结构(顺序结构、判断选择结构、循环结构);大程序的功能分解方法(即函数的调用与使用)等。
二、课程设计要求该程序是由C语言编写的一个学生宿舍管理查询软件,程序在Microsoft Visual C++ 6.0下运行,其主要功能是实现对学生信息的录入、添加、删除、修改、查询、统计。
其中查询可以分别以、学号、宿舍号为关键字查询学生信息。
统计可以分别以学号、宿舍号、性别、班级、专业为关键字进行统计,并且输出信息按学号大小从小到大输出。
三、源程序分析1)结构分析1.方案设计2.数据结构说明程序中数据主要是学生信息,具体属于类型如下:struct st_messagechar name[20]; /*学生*/char dorm[7]; /*宿舍号*/char num[10]; /*学号*/char sex[5]; /*性别*/char age[4]; /*年龄*/char major[20]; /*专业*/char classs[8]; /*班级*/3.模块功能说明第一录入模块:调用input_message(),对住宿学生信息进行录入。
第二添加模块:调用append_message(),对新来学生信息进行添加录入。
第三修改模块:调用revise_message(),对需修改学生的信息进行修改。
第四删除模块:调用delete_message(),对某一学生信息进行删除操作。
第五查询模块:调用find_message(),分别以、学号、宿舍号对学生信息进行查询。
宿舍管理系统课程设计c
宿舍管理系统课程设计c一、教学目标本课程旨在让学生掌握宿舍管理系统的基本概念、设计与实现。
通过本课程的学习,学生应达到以下目标:1.知识目标:–理解宿舍管理系统的需求和功能。
–掌握宿舍管理系统的基本设计原则。
–学会使用相关编程语言实现简单的宿舍管理系统。
2.技能目标:–能够分析宿舍管理系统的业务需求。
–能够使用至少一种编程语言进行宿舍管理系统的开发。
–能够对宿舍管理系统进行测试和调试。
3.情感态度价值观目标:–培养学生的团队协作精神,使其能够与他人共同完成项目。
–培养学生的问题解决能力,使其在面对宿舍管理问题时能够提出有效的解决方案。
–培养学生对编程和计算机科学的兴趣,提高其对技术的热情。
二、教学内容本课程的教学内容主要包括以下几个部分:1.宿舍管理系统的需求分析:了解宿舍管理系统的功能和需求,学习如何进行需求分析。
2.宿舍管理系统的设计:学习宿舍管理系统的设计原则,掌握常用的设计方法。
3.宿舍管理系统的实现:学习使用编程语言实现宿舍管理系统的基本功能。
4.宿舍管理系统的测试与调试:学习如何对宿舍管理系统进行测试和调试,以确保其稳定运行。
三、教学方法为了提高教学效果,本课程将采用以下教学方法:1.讲授法:教师讲解宿舍管理系统的基本概念、设计原则和实现方法。
2.案例分析法:分析实际案例,让学生更好地理解宿舍管理系统的需求和设计。
3.实验法:让学生动手实践,实际操作宿舍管理系统的设计和实现。
4.小组讨论法:分组进行讨论,培养学生的团队协作能力和问题解决能力。
四、教学资源为了支持本课程的教学,我们将准备以下教学资源:1.教材:选用权威、实用的教材,为学生提供宿舍管理系统的基本知识。
2.参考书:提供相关的参考书籍,丰富学生的知识体系。
3.多媒体资料:制作课件、视频等多媒体资料,提高学生的学习兴趣。
4.实验设备:准备计算机、网络设备等实验器材,确保学生能够进行实践操作。
五、教学评估为了全面、客观地评估学生的学习成果,本课程将采用以下评估方式:1.平时表现:评估学生在课堂上的参与程度、提问和回答问题的表现,以及团队合作的表现。
宿舍管理系统c课程设计
宿舍管理系统c课程设计一、课程目标知识目标:1. 理解宿舍管理系统的基本功能需求,掌握系统设计的基本原理;2. 学会运用C语言进行数据结构设计和算法实现,构建宿舍管理系统的功能模块;3. 掌握模块化编程思想,能够对宿舍管理系统进行模块划分和代码编写。
技能目标:1. 能够运用结构体、文件操作等C语言知识编写宿舍管理系统相关功能;2. 培养学生分析问题、解决问题的能力,提高编程实践技能;3. 增强团队协作能力,学会与他人共同完成一个项目。
情感态度价值观目标:1. 培养学生认真负责的工作态度,严谨细致的编程习惯;2. 增强学生对计算机科学与技术专业的兴趣,激发学习热情;3. 培养学生积极向上的团队精神,提高沟通表达能力。
课程性质分析:本课程为计算机科学与技术专业课程,旨在通过宿舍管理系统课程设计,让学生掌握C语言在实际项目中的应用,提高编程实践能力。
学生特点分析:学生已具备一定的C语言基础,但实际项目经验不足,需要通过课程设计培养实践能力和团队协作能力。
教学要求:教师需引导学生分析需求,明确功能模块,并在实践中提供指导,确保学生能够独立或协作完成课程设计任务。
通过课程目标的实现,评估学生在知识、技能和情感态度价值观方面的学习成果。
二、教学内容1. 宿舍管理系统需求分析:介绍宿舍管理系统的功能需求,引导学生明确课程设计的任务目标,对应教材中“系统分析与设计”章节。
2. 数据结构设计:讲解如何运用结构体、链表等数据结构存储宿舍信息,对应教材中“数据结构”章节。
3. 功能模块设计:- 宿舍信息录入与查询:介绍如何实现宿舍信息的添加、删除、修改和查询功能,对应教材中“文件操作”章节;- 学生信息管理:讲解如何实现学生信息的添加、删除、修改和查询功能,对应教材中“结构体与指针”章节;- 宿舍卫生管理:介绍如何实现宿舍卫生情况的记录和查询,对应教材中“函数与模块化编程”章节。
4. 系统测试与优化:教授如何对宿舍管理系统进行测试和优化,提高系统稳定性和性能,对应教材中“程序调试与优化”章节。
学生宿舍管理系统c语言报告
学生宿舍管理系统c语言报告一、引言学生宿舍管理系统是一个用于管理学生宿舍的软件系统。
它能够帮助学校方便地进行学生宿舍的分配、入住、退房、维修等管理工作。
本报告将介绍该系统的设计与实现过程,包括需求分析、系统架构、关键功能与算法等。
二、需求分析2.1 功能需求学生宿舍管理系统需要具备以下主要功能:1. 学生信息管理:包括学生基本信息、联系方式等;2. 宿舍信息管理:包括宿舍楼层、房间号、容纳人数等;3. 入住管理:学生入住、退房、换宿舍等;4. 维修管理:记录宿舍维修情况及维修进度;5. 报表生成:生成各类统计报表,如入住率、维修次数等;6. 用户权限管理:不同用户拥有不同的操作权限。
2.2 性能需求学生宿舍管理系统需要满足以下性能需求:1. 数据处理快速:能够快速响应用户操作,保持系统的高可用性;2. 数据存储安全:对于敏感信息需要进行加密保存,确保数据安全性;3. 界面友好易用:操作界面简洁明了,用户易于操作;4. 扩展性强:系统可以方便地扩展功能,满足学校不同的管理需求。
三、系统架构学生宿舍管理系统采用三层架构进行开发,包括表示层、业务逻辑层和数据访问层。
3.1 表示层表示层是用户与系统交互的界面,这里采用命令行界面来展示系统功能。
用户可以通过输入指令来执行相应的操作,系统会返回相应的结果。
3.2 业务逻辑层业务逻辑层负责处理系统的业务逻辑,将用户的操作请求转发给数据访问层,并对返回结果进行处理后返回给表示层。
同时也包括系统的核心算法的实现。
3.3 数据访问层数据访问层负责与数据库进行交互,处理数据库的读写操作。
它封装了对数据库的操作方法,并提供给业务逻辑层使用。
四、关键功能与算法4.1 学生分配算法学生分配算法是学生宿舍管理系统的核心功能之一。
该算法需考虑学生的性别、年级、特殊需求等因素,确保学生宿舍分配的公平性和合理性。
算法步骤如下:1. 根据学生的性别和年级筛选出符合条件的宿舍楼;2. 根据学生的特殊需求,进一步筛选符合条件的房间;3. 若找到符合条件的房间,则将学生分配到该房间,更新宿舍数量信息;4. 若未找到符合条件的房间,提示学生重新选择或申请特殊宿舍。
C语言程序设计课程设计报告—宿舍管理系统
C语言程序设计课程设计报告—宿舍管理系统IMB standardization office【IMB 5AB- IMBK 08- IMB 2C】西安邮电学院C语言课程设计报告题目:宿舍管理系统院系名称:计算机学院专业名称:网络工程班级:1004学生姓名:李斯良学号(8位):04102109(17)指导教师:刘霞林设计起止时间:2011年6月13日~2011年6月22日一、课程设计目的1..通过本次课程设计,强化上级动手能力,在理论和实践的基础上进一步巩固《C语言程序设计》课程的学习内容,掌握工程软件设计的基本方法。
2.熟悉C语言的基本内容从而掌握C语言的基本知识以及了解C程序的基本编写及运行;3.了解程序的分模块编写并对程序的每个模块进行详细的设计并且能理解一般C语言编写的程序。
4..熟悉C程序设计的开发环境及C程序的调试过程。
二、课程设计内容用所学过的C语言知识(文件,结构体,函数,数组等)编写一个学身份学籍管理系统。
使其有以下功能。
1.通过键盘输入某些学生的学生学籍管理信息。
(包含学生学号、姓名、性别、年龄、出生年月、住址、班级、专业、院系等信息)。
2.输入给定学号,显示出某位学生的学生学籍管理信息。
3.显示出全部学生的学生学籍管理信息。
4.可将某学生信息添加到文件内。
5.给定某位学生的学号,修改该学生信息。
6.给定某位学生的学号,删除该学生信息。
7.给定某个班级号,统计该班级的总人数。
8.按照学生的学号升序对学生信息进行排序。
9.用文件的方式将录入的数据进行存储,并从其中读取数据。
三、概要设计1.功能模块图:2.各模块详细的功能描述:A.输入模块:调用input()函数将学生宿舍信息依次输入到结构体数组中,结束后将保存在制定文件中,在其他模块的函数中可以随时进行调用,结束后可以将修改后的学生宿舍信息再一次保存。
B.添加模块:如果要添加新入住学生信息可以调用append函数将新生信息插入到原有信息的末尾,在保存到文件中。
c语言宿舍管理课程设计
c语言宿舍管理课程设计一、课程目标知识目标:1. 学生能理解并掌握C语言编程基础,包括数据类型、变量、运算符、控制结构等。
2. 学生能够运用C语言编写简单的宿舍管理系统功能,如学生信息录入、查询、修改和删除。
3. 学生理解并掌握文件操作在C语言中的应用,实现对宿舍管理数据的持久化存储。
技能目标:1. 学生通过课程实践,培养解决问题的能力,能够独立设计并实现小型管理系统。
2. 学生掌握程序调试技巧,能够识别并修正程序中的错误。
3. 学生提高逻辑思维能力,能够通过模块化设计优化程序结构。
情感态度价值观目标:1. 学生培养对编程的兴趣,增强对计算机科学的认识和理解。
2. 学生在学习过程中培养合作精神,学会在团队中分工与协作。
3. 学生通过课程学习,认识到编程在现实生活中的应用,激发创新意识,培养实践能力。
课程性质:本课程结合C语言编程与实际应用,注重理论与实践相结合,以项目驱动的形式进行教学。
学生特点:高年级学生,具备一定的C语言基础,对编程有兴趣,有一定的自主学习能力和探究欲望。
教学要求:课程设计需关注学生的个体差异,提供个性化指导,鼓励学生动手实践,注重过程评价与结果评价相结合,确保学生达到预定的学习目标。
二、教学内容本课程教学内容主要包括以下几部分:1. C语言基础知识回顾:数据类型、变量、常量、运算符、表达式、控制结构(包括顺序、选择、循环结构)。
- 教材章节:第1章至第4章2. 函数与模块化设计:函数定义、调用、参数传递、模块化设计方法。
- 教材章节:第5章、第6章3. 文件操作:文件打开、读写、关闭,实现数据的持久化存储。
- 教材章节:第10章4. 宿舍管理系统功能实现:- 学生信息管理:信息录入、查询、修改和删除。
- 教材章节:第7章(字符串处理)、第8章(数组与结构体)- 系统操作界面设计:菜单设计、用户交互。
- 教材章节:第9章(指针与函数进阶)5. 系统测试与优化:测试用例设计、程序调试与优化。
宿舍管理系统c课程设计
宿舍管理系统c课程设计一、课程目标知识目标:1. 让学生掌握C语言的基本语法和编程技巧,并能运用到实际项目中;2. 使学生了解宿舍管理系统的功能需求,掌握其模块划分和设计方法;3. 帮助学生掌握文件操作、数据存储和查询等基本技能。
技能目标:1. 培养学生运用C语言解决实际问题的能力,提高编程实践技能;2. 培养学生分析问题、设计解决方案和编程实现的能力;3. 培养学生团队协作和沟通表达的能力。
情感态度价值观目标:1. 激发学生对计算机编程的兴趣,提高学习主动性和积极性;2. 培养学生严谨、细致、负责的工作态度,养成良好的编程习惯;3. 培养学生面对问题勇于挑战、善于创新的精神。
课程性质:本课程为实践性较强的课程设计,要求学生将所学的C语言知识应用到实际项目中,提高编程能力和解决问题的能力。
学生特点:学生已具备一定的C语言基础,对编程有一定兴趣,但可能缺乏实际项目经验。
教学要求:教师应注重理论与实践相结合,引导学生积极思考、动手实践,关注学生的学习过程,提高其分析问题和解决问题的能力。
通过课程设计,使学生达到预期的学习成果。
二、教学内容1. C语言基础回顾:变量、数据类型、运算符、控制语句、函数等;2. 宿舍管理系统功能分析:学生信息管理、宿舍楼信息管理、宿舍分配与调整、费用管理等;3. 系统模块设计与实现:- 学生信息模块:学生基本信息录入、查询、修改和删除;- 宿舍楼信息模块:宿舍楼基本信息录入、查询、修改和删除;- 宿舍分配与调整模块:实现宿舍分配、调整功能;- 费用管理模块:实现宿舍费用计算、查询和缴纳功能;4. 文件操作与数据存储:文件打开、关闭、读写,数据存储格式设计;5. 系统测试与调试:功能测试、性能测试、异常处理;6. 项目实践与团队协作:分组进行项目实践,培养学生的团队协作和沟通能力。
教学内容安排与进度:第一周:C语言基础回顾;第二周:宿舍管理系统功能分析;第三周:系统模块设计与实现(1);第四周:系统模块设计与实现(2);第五周:文件操作与数据存储;第六周:系统测试与调试;第七周:项目实践与团队协作。
C语言课设报告学生宿舍管理系统
程序设计工程训练报告学生宿舍管理系统课程名称程序设计工程训练姓名院(系)信息科学与技术学院专业班级学号指导教师教务处制目录1 需求分析 (1)2 系统总框图和功能模块说明 (2)2.1 系统总框图。
(2)2.2 功能模块说明 (3)2.3 程序总体框架 (4)3 系统设计 (10)3.1 主要结构体 (10)3.2主要功能函数 (10)4 调试情况 (11)4.1输入密码进入程序 (11)4.2主界面 (11)4.2.1输入学生信息 (11)4.2.2输出学生信息 (12)4.2.3更新学生信息 (12)4.2.4查询学生信息 (13)4.2.5排序 (14)4.2.6统计学生信息 (14)5 设计总结 (15)6 源程序清单 (16)1 需求分析输入正确密码后进入系统,用read_message()函数先读取文件内容,再在do while 循环中用switch语句进行选择(选一进入输入模块;选二进入输出模块;选三进入更新模块,在更新模块中又包含了三个小的模块:删除,修改,插入;选四进入查询模块,在查询模块中可以根据信息中的学号,姓名,宿舍,楼层,楼号来进行查询;选五进入排序模块,在排序模块中可以根据学号,宿舍,楼层,楼号进行排序;选六进入统计模块,可以根据宿舍,楼层,楼号进行统计。
)退出程序时,对信息进行保存,以便下次调用。
2 系统总框图和功能模块说明2.1 系统总框图))())2.2 功能模块说明1.输入函数:用来录入数据和有关信息。
2.输出函数:用来输出录入的相关信息。
3. 读函数:将文件中的数据读入。
4.更新模块:对以存信息进行更新.有以下几个选项:(1)删除函数:用来删除已离校的学生信息。
(2)修改函数:用来修改改变宿舍的学生信息。
(3)插入函数:用来插入新同学的宿舍信息。
5.查询模块:输入一项信息,可以得到存入的整条信息,具体有以下:(1)按姓名查询:输入学生姓名,可得到整条学生信息。
C语言课程设计报告学生宿舍管理系统
《高级语言程序设计》课程设计说明书设计题目:学生宿舍管理系统目录一、总体设计 (3)1.程序的总体设计 (3)2. 函数原型声明 (3)二、用户说明 (4)1、菜单界面 (5)2、入住登记界面 (5)3、删除界面 (5)4、浏览界面 (6)5、查询修改 (6)6、排序界面 (6)7、退出 (6)三、小结 (7)四、参考文献 (7)五、源程序代码 (7)一、总体设计1.程序的总体设计◎确定界面,使用户可选择操作项目(录入,删除,浏览,修改,查询,排序)。
◎录入:使用结构体,要求用户输入楼栋、房号、面积、可住人数、已住人数◎删除:按房号删除以上信息◎查询:按房号查询以上信息◎修改:按房号修改以上信息◎排序:按已住人数排序信息2. 函数原型声明struct room *add(struct room *head);//添加函数struct room *del(struct room *h);//删除函数void show(struct room *h);//信息浏览函数void serh(struct room *h);//查询与修改函数struct room *sort(struct room *head);//排序函数void can();//结束函数二、用户使用说明运行程序后即可按提示模仿以上操作进行。
2、入住登记界面3、删除界面5、查询修改6、排序界面7、退出三、小结通过编写该程序,熟悉了C语言的基本语法,选择,循环等结构,深入练习了函数的调用方法,和文件的读写方法,熟悉了结构体的使用,更加深化了面向过程语言思想,和一些基本算法。
通过对程序的后期调试,熟悉了C常见错误,锻炼了思维的严密性,和完备性。
通过对程序的注释和画流程图,形成了一套自己编程的风格,和清晰地思路,使思维更加条理化,清晰化。
四、参考文献[1]谭浩强.C程序设计(第二版).北京:清华大学出版社,1999[2]邓文新.张宏烈.哈尔滨工业大学出版社[3]百度.五、附件源程序代码#include<stdio.h>#include<malloc.h>#include<string.h>#include <stdlib.h>struct room{int Lnum;int Fnum;int squa;int maxnum;int innum;struct room *next;};struct room *add(struct room *head);//添加函数struct room *del(struct room *h);//删除函数void show(struct room *h);//信息浏览函数void serh(struct room *h);//查询与修改函数struct room *sort(struct room *head);//排序函数//修改点void can();//结束函数void main(){struct room *head;int x,y;head=(struct room *)malloc(sizeof(struct room));head->next=NULL;printf("欢迎使用学生宿舍管理系统!\n");printf("按回车键进入菜单界面\n");getchar();while(1){A: printf("[]--------------------------------------------[]\n");printf("||--------------------------------------------||\n");printf("|| 1.入住登记 ||\n");printf("|| 2.删除信息 ||\n");printf("|| 3.信息浏览 ||\n");printf("|| 4.查询修改 ||\n");printf("|| 5.按入住人数排序 ||\n");printf("|| 6.退出系统 ||\n");printf("||--------------------------------------------||\n");printf("[]--------------------------------------------[]\n");printf("请选择服务项目!\n");flushall();scanf("%d",&x);//菜单选择if(head->next==NULL&&x!=1&&x!=6){printf("系统中无入住信息,请先进行入房登记!\n");goto A;}switch(x){case 1:head=add(head);system("cls");printf("登记完毕!\n");continue;case 2:head=del(head);T: scanf("%d",&y);while(y!=1&&y!=0){printf("输入错误!请重新输入!\n");goto T;}if(y==1){system("cls");continue;}elsecan();goto N;case 3:show(head);printf("是否返回菜单界面进行其他操作?(1/0)\n"); J: scanf("%d",&y);while(y!=1&&y!=0){printf("输入错误!请重新输入!\n");goto J;}if(y==1){system("cls");continue;}else{can();goto N;}case 4:serh(head);system("cls");continue;case 5:head=sort(head);//修改点printf("是否返回菜单界面进行其他操作?(1/0)\n"); scanf("%d",&y);while(y!=1&&y!=0){printf("输入错误!请重新输入!\n");goto J;}if(y==1){system("cls");continue;}else{can();goto N;}continue;case 6:can();goto Q;default:printf("输入错误!请重新输入!\n");}N: if(y==0)break;Q: if(x==6)break;}}struct room *add(struct room *head)//入住登记{struct room *h,*p;int i=0,n;h=head;printf("请输入要登记的入房数:\n");scanf("%d",&n);printf("请输入入住信息:\n楼号房号面积最大入住人数已入住人数\n");printf("数据须按规定顺序输入,不同数据用空格分开。
c语言课程设计宿舍管理系统
c语言课程设计宿舍管理系统一、教学目标本章节的教学目标是使学生掌握C语言编程基础,能够运用C语言设计并实现一个简单的宿舍管理系统。
具体目标如下:1.知识目标:•掌握C语言的基本语法和数据结构;•理解函数的定义和调用;•熟悉常用的输入输出库函数;•了解结构体和文件操作。
2.技能目标:•能够编写简单的C语言程序;•能够运用结构体设计数据模型;•能够实现文件的读写操作;•能够运用C语言实现宿舍管理系统的功能。
3.情感态度价值观目标:•培养学生的编程兴趣和自主学习能力;•培养学生解决问题的能力和团队合作精神;•使学生认识到计算机科学在实际生活中的重要性。
二、教学内容本章节的教学内容主要包括以下几个部分:1.C语言基本语法和数据结构;2.函数的定义和调用;3.常用的输入输出库函数;4.结构体的运用;5.文件的读写操作;6.宿舍管理系统的需求分析和设计。
三、教学方法为了达到本章节的教学目标,将采用以下几种教学方法:1.讲授法:讲解C语言的基本语法、数据结构和函数的定义和调用;2.案例分析法:通过分析实际案例,使学生掌握结构体的运用和文件的读写操作;3.实验法:让学生动手编写宿舍管理系统的程序,巩固所学知识;4.讨论法:分组讨论问题,培养学生的团队合作精神和问题解决能力。
四、教学资源为了支持本章节的教学内容和教学方法的实施,将准备以下教学资源:1.教材:《C语言程序设计》;2.参考书:《C语言 Primer》;3.多媒体资料:PPT课件、教学视频;4.实验设备:计算机、编程环境。
五、教学评估为了全面、客观地评估学生的学习成果,本章节的教学评估将采用以下几种方式:1.平时表现:通过课堂参与、提问、讨论等环节,评估学生的学习态度和积极性;2.作业:布置适量的作业,评估学生的编程能力和对知识的掌握程度;3.考试:进行期中和期末考试,评估学生的综合运用能力和复习效果。
评估标准将根据教学目标和教材内容进行制定,确保评估方式与教学内容相符。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
C语言程序设计课程设计报告—宿舍管理系统IMB standardization office【IMB 5AB- IMBK 08- IMB 2C】西安邮电学院C语言课程设计报告题目:宿舍管理系统院系名称:计算机学院专业名称:网络工程班级:1004学生姓名:李斯良学号(8位):04102109(17)指导教师:刘霞林设计起止时间:2011年6月13日~2011年6月22日一、课程设计目的1..通过本次课程设计,强化上级动手能力,在理论和实践的基础上进一步巩固《C语言程序设计》课程的学习内容,掌握工程软件设计的基本方法。
2.熟悉C语言的基本内容从而掌握C语言的基本知识以及了解C程序的基本编写及运行;3.了解程序的分模块编写并对程序的每个模块进行详细的设计并且能理解一般C语言编写的程序。
4..熟悉C程序设计的开发环境及C程序的调试过程。
二、课程设计内容用所学过的C语言知识(文件,结构体,函数,数组等)编写一个学身份学籍管理系统。
使其有以下功能。
1.通过键盘输入某些学生的学生学籍管理信息。
(包含学生学号、姓名、性别、年龄、出生年月、住址、班级、专业、院系等信息)。
2.输入给定学号,显示出某位学生的学生学籍管理信息。
3.显示出全部学生的学生学籍管理信息。
4.可将某学生信息添加到文件内。
5.给定某位学生的学号,修改该学生信息。
6.给定某位学生的学号,删除该学生信息。
7.给定某个班级号,统计该班级的总人数。
8.按照学生的学号升序对学生信息进行排序。
9.用文件的方式将录入的数据进行存储,并从其中读取数据。
三、概要设计1.功能模块图:2.各模块详细的功能描述:A.输入模块:调用input()函数将学生宿舍信息依次输入到结构体数组中,结束后将保存在制定文件中,在其他模块的函数中可以随时进行调用,结束后可以将修改后的学生宿舍信息再一次保存。
B.添加模块:如果要添加新入住学生信息可以调用append函数将新生信息插入到原有信息的末尾,在保存到文件中。
C.修改模块:修改可以通过输入要修改的学生的学号,对学生的个人信息利用switch选择要修改的内容.修改完毕后,保存到所设定的文件中去。
D.删除模块:删除可以通过输入要删除的学生学号,对学生的所有个人信息进行删除.删除完毕之后保存到文件中去。
E.查询模块:选择输入要查询学生的学号,并将查询的信息显示在屏幕上。
F.统计模块:输入要统计人数的班级号,然后输出此班的总人数。
G.排序模块:按学生学号用冒泡法升序排出学生的信息。
H.打印模块:输出当前文件中所有的学生住宿信息。
四、详细设计:1.流程图:2.重点设计:intread_file(STUDENTSstudents[]){FILE*fp;inti=0;if((fp=fopen("","rt"))==NULL){printf("\n\n*****库存文件不存在!请创建");/*创建文件*/return0;}while((fread(&students[i],sizeof(STUDENTS),1,fp))==1)/*成功创建*/ {i++;}fclose(fp);returni;}voidsave_file(STUDENTSstudents[],intsum)/*保存信息*/{FILE*fp;inti;if((fp=fopen("","wb"))==NULL){printf("读文件错误!\n");return;}五.测试数据及运行结果:三组正常数据:1.2.异常测试数据及运行结果:1.2.六、调试情况,设计技巧及体会:1.设计过程中的体会:在刚开始还没有大体思路,觉得设计不简单。
但当总体构思完成后,对各个功能的实现可以用小程序即模块形式进行实现,比如输入数据,输出数据,修改数据,删除数据等.在一个个小程序中调试,最后各个模块的功能完成比较好后,在将所有的模块都放进main()主函数中进行调试,这样可以避免由整体构思调试引起的调试障碍.但还是没有得到完美的效果,有的模块还是有问题。
而且程序上看没什么问题啊?老师也帮了不少的忙吧。
在此写过老师的帮助。
2.在调试过程中,F5,F10,F11,有了更深的认识,并且可以更灵活的运用。
在编写程序的过程中,有些逻辑不是很清楚,但大部分程序模块还是写出来了。
那些不清楚的就是文件方面的知识,以后要好好研究下文件了。
总体来说,这次课程设计对C语言方面的知识又重新复习了一遍,感觉还行。
3.还有就是原先有想过用密码,构思是想实现一个帐号密码配对使用的方法,但是由于文件的使用不熟练,最后还是以失败告终。
同时程序只能在当前登录过程中输入进入系统,有较大的局限性。
七、参考文献《C语言程序设计》谭浩强清华大学出版社1999年12月C语言程序设计(第二版)王曙燕/主编八.附录:3.完全代码:#include""#include""#include""/*头文件*/#defineMAX100typedefstruct{intyear;intmonth;intday;}DATE;typedefstruct{intnum;/*学号*/charname[20];/*姓名*um);if(students[i].num==0)break;printf("\n学生姓名:");scanf("%s",students[i].name);printf("\n学生性别:");scanf("%s",students[i].sex);printf("\n学生年龄:");scanf("%d",&students[i].age);printf("\n学生出生年月日:");scanf("%d%d%d",&students[i].,&students[i].,&students[i].;printf("\n学生宿舍:");scanf("%s",students[i].sushe);printf("\n学生班级:");scanf("%s",students[i].classes);printf("\n学生专业:");scanf("%s",students[i].zhuanye);printf("\n学生床号:");scanf("%s",students[i].chuanghao);i++;}while(i<t);save_file(students,t);/*保存输入的学生信息*/printf("\n%d个学生信息输入完毕!\n",t);getch();returnt;/*返回输入学生的个数值*/}/*输出模块*/voidoutput(STUDENTSstudents[],intsum){inti;system("cls");printf("numnamesexageyear-month-daysusheclasseszhuanyechuanghao\n");printf("\n");for(i=0;i<sum;i++)/*输出学生的信息*/{printf("%5d%5s%5s%5d%5d%5d%5d%5s%5s%5s%5s\n",students[i].num,students[i].name,students[i].sex,students[i].age,stu dents[i].,students[i].,students[i].,students[i].sushe,students[i].classes,students[i].zhuanye,students[i].chuanghao); printf("\n");}getch();save_file(students,sum);}/*添加信息模块*/intappend(STUDENTSstudents[],intsum){inti=sum,flag=0; /*从已经输入的学生尾部添加*/charchoice ;sum=read_file(students);system("cls");printf("\n\n添加学生信息\n");do{if(i<MAX)/*已经输入的学生个数和要添加的学生个数之和要小于定义的学生个数最大值*/{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",&students[i].age);printf("\n学生出生年月日:");scanf("%d%d%d",&students[i].,&students[i].,&students[i].;printf("\n学生宿舍号:");scanf("%s",students[i].sushe);printf("\n学生班级:");scanf("%s",students[i].classes);printf("\n学生专业:");scanf("%s",students[i].zhuanye);printf("\n床号:");scanf("%s",students[i].chuanghao);i++;}printf("\n继续添加吗(Y/N)");choice=getch();if(choice=='Y'||choice=='y'){flag=1;printf("\n继续!\n");/*是否要继续添加*/}elseflag=0;}while(flag==1);;printf("\n按任意键返回主菜单!");getch();save_file(students,i);/*保存添加的学生信息到原文件*/returni;/*返回文件中学生个数值*/}/*修改信息模块*/voidmodify(STUDENTSstudents[],intsum){um==modify_num){printf("\n学生信息\n");printf("numnamesexageyear-month-dayaddresssushezhuanyechuanghao\n"); printf("\n");printf("%5d%5s%5s%5d%5d%5d%5d%5s%5s%5s%5s\n",students[i].num,students[i].n ame,students[i].sex,students[i].age,students[i].,students[i].,students[i]. ,students[i].sushe,students[i].classes,students[i].zhuanye,students[i].chu anghao);printf("\n要修改哪一项\n");printf("\n1.学生学号\n");printf("\n2.学生姓名\n");printf("\n3.学生性别\n");printf("\n4.学生年龄\n");printf("\n5.学生出生年月日\n");printf("\n6.学生宿舍号\n");printf("\n7.学生班级\n");printf("\n8.学生专业\n");printf("\n9.学生床号\n");printf("\n请选择(1-9):");scanf("%d",&choice);switch(choice){case1:printf("\n输入修改后的学号:");scanf("%d",&students[i].num);break;case2:printf("\n输入修改后的姓名:");scanf("%s",students[i].name);break;case3:printf("\n输入修改后的性别:");scanf("%s",students[i].sex);break;/*选择要修改学生的项目*/case4:printf("\n输入修改后的年龄:");scanf("%d",&students[i].age);break;case5:printf("\n输入修改后的出生年月:");scanf("%d%d%d",&students[i].,&students[i].,&students[i].;break;case6:printf("\n输入修改后的宿舍号:");scanf("%s",students[i].sushe);break;case7:printf("\n输入修改后的班级:");scanf("%s",students[i].classes);break;case8:printf("\n输入修改后的专业:");scanf("%s",students[i].zhuanye);break;case9:printf("\n输入修改后的床号:");scanf("%s",students[i].chuanghao);break;}printf("\n学生信息表\n");printf("numnamesexageyear-month-daysusheclasseszhuanyechuanghao\n"); printf("\n");printf("%5d%5s%5s%5d%5d%5d%5d%5s%5s%5s%5s\n",students[i].num,students[i].name,students[i].sex,students[i].age,stu dents[i].,students[i].,students[i].,students[i].sushe,students[i].classes,students[i].zhuanye,students[i].chuanghao);break;/*输出修改后的学生信息*/}if(i==sum){printf("\n该学生不存在!");getch();}printf("\n\n继续修改吗(Y/N)");choice=getch();if(choice=='Y'||choice=='y'){flag=1;printf("\n继续!\n");}/*是否要继续修改*/elseflag=0;}while(flag==1);printf("\n按任意键返回主菜单!");getch();save_file(students,sum);/*保存修改后的信息*/}/*删除信息模块*/intdel(STUDENTSstudents[],intsum){inti,del_num;printf("请输入要删除的学生学号");scanf("%d",&del_num);/*输入要删除的学生学号*/for(i=0;i<sum;i++){if(del_num==students[i].num){for(;i<sum-1;i++)students[i].num=students[i+1].num;printf("删除成功");}}getch();save_file(students,sum-1);/*保存删除后的学生信息到原文件*/return(sum-1);}/*查询信息模块*/voidinquire(STUDENTSstudents[],intsum){ FILE*fp;inti,choice,flag,inquire_num;sum=read_file(students);/*读文件*/printf("%d\n",sum);do{system("cls");printf("\n输入要查询的学生学号:");scanf("%d",&inquire_num);/*输入要查询的学生学号*/for(i=0;i<sum;i++)if(students[i].num==inquire_num){printf("\n此学生信息为:\n");printf("numnamesexageyear-month-daysusheclasseszhuanyechuanghao\n"); printf("\n");printf("%5d%5s%5s%5d%d%d%d%5s%5s%5s%5s\n",students[i].num,students[i].name,students[i].sex,students[i].age,stu dents[i].,students[i].,students[i].,students[i].sushe,students[i].classes,students[i].zhuanye,students[i].chuanghao);break;/*输出要查询的学生信息*/}if(i==sum){printf("\n无此学生信息\n");getch();}printf("\n\n是否继续(Y/N)");choice=getch();if(choice=='Y'||choice=='y'){flag=1;printf("\n继续!\n");/*是否要继续*/}elseflag=0;}while(flag==1);printf("\n按任意键返回主菜单!");getch();}/*统计信息模块*/voidcount(STUDENTSstudents[],intsum){inti,count=0;chars[10];printf("请输入要统计的班级的学生的班级号!");scanf("%s",s);/*按输入的班级号统计此班的总学生人数*/for(i=0;i<sum;i++)if(strcmp(s,students[i].classes)==0)count++;printf("%s班的总人数为%d人",s,count);getch();save_file(students,sum);}/*排行信息模块*/voidsort(STUDENTSstudents[],intsum){inti,j,t;system("cls");printf("\n学生信息排行\n");printf("\n按学号排行\n");printf("\n");for(i=0;i<sum-1;i++)/*按学号用冒泡法升序排列学生信息*/for(j=i+1;j<sum;j++){if(students[i].num>students[j].num) {t=students[i].num;students[i].num=students[j].num;students[j].num=t;}}printf("\n");printf("numnamesexageyear-month-daysusheclasseszhuanyechuanghao\n");for(i=0;i<sum;i++)printf("%5d%5s%5s%5d%d%d%d%5s%5s%5s%5s\n",students[i].num,students[i].name,students[i].sex,students[i].age,stu dents[i].,students[i].,students[i].,students[i].sushe,students[i].classes,students[i].zhuanye,students[i].chuanghao);/*输出排序后的学生信息*/getch();save_file(students,sum);/*保存排序后的学生信息到文件中*/}voidmima(){charmima;chara[9];inti;printf(" 请输入密码:");for(i=0;i<8;i++){mima=getch();printf("*");a[i]=mima;}a[8]='\0';printf("\n");{system("cls");printf("\n\n\n\n\n\n\n\n\n成功登陆!");}else{system("cls");printf("\n\n\n\n\n\n\n\n\n密码错误,您无权使用该系统!\n\n");exit(1);}}voidmain()/*主函数*/{STUDENTSstudents[MAX];intchoice,sum;mima();sum=read_file(students);if(!sum){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("7.打印学生信息\n\n");printf("0.退出系统\n\n");printf("请选择(0-7):");scanf("%d",&choice);switch(choice)/*用switch选择要调用的各模块函数并执行*/{case1:sum=append(students,sum);break;case2:modify(students,sum);break;case3:sum=del(students,sum);break;case4:inquire(students,sum);break;case5:count(students,sum);break;case6:sort(students,sum);break;case7:output(students,sum);break;case0:break;/*执行完各模块后按0退出系统*/}}while(choice!=0);save_file(students,sum);/*保存执行完各模块后的学生信息*/ }。