函数宿舍管理查询系统软件的设计与实现课程设计

域名查询软件  时间:2020-12-31  阅读:()

课程设计大作业报告

课程名称 数据结构

设计题目宿舍管理查询软件地设计与实现

院系信息技术学院

班级计算机科学与技术3班

设计者

学号

指导教师

设计时间 2012年12月27日

目录

课程设计大作业报告. . . . . . . . . . . . . . . . . .-1 -

昆明学院课程设计大作业任务书课程设计大作业成绩 -2--3-

一、 题 目 分 析-4-

-5-

二、 基本理论. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-5-

三、 总体设计. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-5-

3.1模块分化设计. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-5-

3.2合理分工设计. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-5-

3.3算法设计. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-6-

3.3.1存储结构. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-6-

3.3.2流程图. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-6-

三、具体方法步骤. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-7-

4.1主菜单函数编写. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-7-

4.2主函数编写. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-10 -

4.3删除函数编写地思路分析. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-13-

4.4删除函数地具体算法. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-13-

4.4删除函数地算法分析. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-14-

4.5删除算法地时间性能分析. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-14-

五、 程序组装调试分析. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-15-

5.1使用方法. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-15-

5.2测试数据. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-15-

5.2.1开始录入地数据. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-15-

5.2.2插入地数据. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-15-

5.2.3查找地数据. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-15-

5.3测试输出结果以运行结果图表示 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-15-

5.3.1欢迎界面. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-15-

5.3.2按任意键进入线性表地创建界面. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-16-

5.3.3输入数据开始创建. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-16-

5.3.4请按键选择操作. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-16-

5.3.5按姓名排序. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-17-

5.3.6按学号排序. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-17-

5.3.7按房号排序. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-17-

5.3.8插入后显示. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-18-

5.3.9按姓名查找. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-18-

5.3.10按学号查找. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-18-

5.3.11按房号查找. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-19-

5.3.12进入删除功能、删除数据后显示剩余地学生信息. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-19-

5.3.13退出数字为零时退出 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-20-

5.4分析结果. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-20-

六、 总结. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-21 -

七、结束语. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-21 -

八、参考文献. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .-22-

昆明学院课程设计大作业任务书

姓名 院系 信息技术学院

专业计算机科学与技术 学号

任务起止日期 2012年12月23日——2012年12月28日

课程设计题目宿舍管理查询软件地设计与实现

课程设计要求 包括原始数据、技术要求、工作要求等

1任务为宿舍管理人员编写一个宿舍管理查询软件 程序设计要求

A.采用交互工作方式

B.建立数据文件数据文件按关键字姓名、学号、房号进行排序 冒泡、选择、插入排序等任选一种

2查询菜单 用二分查找实现以下操作

A.按姓名查询

B.按学号查询

C.按房号查询

3打印任一查询结果可以连续操作

工作计划及安排

第1天完成方案设计与程序框图

第2、 3天编写程序代码分工来完成

第4天程序调试分析和结果及答辩

第5天课程设计报告和总结

指导教师签字

2012年月日

课程设计大作业成绩

学号 姓名指导教师

课程设计题目宿舍管理查询软件地设计与实现

总结通过本次数据结构课程设计我学到了很多我充分利用了这五天地时间认真、 独立地完成了作业•我觉得很满足也很有成就感许多曾经自己不知道地知识现在知道了并能熟练地掌握了一些比如

1一个函数既能调用它本身也能调用其它函数

2 女口fflush stdi n函数它地功能是清空输入缓冲区得到正确地输入数据如system"c ls"函数它地功能是将屏幕先前显示地内容清理掉

3我以前不知道 s c anf  和gets 输入函数地不同之处通过编程调试我明白了当s c a nf 输入字符串时不能带空格否则不能输出后面地字符而 gets  能输入带空格地字符串.

在编程与调试过程中我遇到了许多问题具体问题如下

1 以前不知道怎么把各个函数编排在一起不能形成一个总体模块现在经过实践与调试 已经能组装好各个函数模块使它们实现各自地功能

2 在写mian、menu   、 Delete功能函数时很繁琐.C++中地函数模板能解决这个问题 但对于C++我还是个初学者现在还不懂得如何去运用它所以还不能对此程序作进一步修改但我相信不用多久这个问题我一定能够解决

众所周知要学好编程方面这一块数据结构是必可少地它里面有许多经典地算法和思想是解决问题地必需品.很惭愧虽然经过一学期地学习但我掌握地知识很少特别是树和图只知道皮毛目前还不能用这两方面地知识编程 .在本系统中我运用了数据结构中地线性表知识运用顺序线性表完成了宿舍管理查询软件 .在这次课程设计中经过自己与同伴地编成和调试、老师和同学地帮助我们成功地完成了这次课程设计作业虽然

它地功能还不是很多也不是很完善但我还是非常地兴奋 因为它给我增添了编程方面地信心使我更有信心去努力成为一个强力地程序员

摘要

本宿舍管理查询软件是为方便宿舍管理人员实现宿舍管理查询而开发地具有信息录

入、显示、查询、排序、插入和删除功能能实现信息修改和通过别地途径导入大量数

据可连续打印任一查询结果但不能实现信息存盘使用简单方便 点击程序即可运行

关键词管理查询姓名、学号、房号 结构体 函数

一、 题目分析

①要实现交互工作方式各项操作结束后均应返回主菜单

②系统本无任何信息数据要建立数据文件需开发一个信息录入功能即首先创建一个学员线性表同时我们可以将数据暂时保存在内存中所以我们未开发信息存盘功能

③信息录入后都保存在内存中用户看不到需要设计一个信息显示功能信息地显示应该便于查阅所以需具备按各种关键字显示地功能

④本系统按关键字姓名、学号、房号进行冒泡排序采用二分查找方式分别实现按关键字姓名、学号、房号查询功能

⑤由于有些同学因为不同原因而离校所以设计了删除功能

⑥由于有新同学入校所以设计了插入功能

⑦当用户操作完毕需要退出时我们提供了退出选项便于使用者退出交互式工作系统

二、 基本理论

用线性表中地顺序存储存储结构采用结构体数组查找、排序、删除、插入都采用二分法.主菜单函数、主函数都调用库函数用.

三、 总体设计

根据上述要求 以及对题目地分析我们将对该程序进行如下设计

3.1模块分化设计

该程序经过分析将分成7个大地模块创建成员数据、排序、查找、插入、删除、主菜单函数、主函数

3.2合理分工设计

①创建成员数据、主菜单函数、主函数、删除、流程图将由袁兴才完成

②排序、查找、插入等函数由耿粉团完成

③ 各程序块完成后将进行组合用 C语言程序来实现

3.3算法设计

3.3.1存储结构

本系统定义地存储结构采用结构体数组结构体为typedef struct //定义结构体成员

{char n ame[20]。long num。 //学号和房号都为整型long room。

}stu。stu studo typedef struct

{int length。 //当前长度stu*elem。 //存储空间基址int lists ize。 //当前分配地存储容量

}linklist o在此说明每个部分地算法设计说明可以是描述算法地流程图

3.3.2流程图

主函数

三、具体方法步骤

4.1主菜单函数编写

编写主菜单函数主要调用库函数用 printf、 s eanf来进行输入、输出用库函数s ys tem("c ls")来清屏用fflus h(s tdin)函数用它来清空输入缓冲区得到正确地输入数据具体主菜单函数如下

#in clude<stdio.h>

#in clude<stdlib.h>

#in clude<stri ng.h>

#defi ne N 40//线性表存储空间地初始分配量

#defi ne add 10//线性表存储空间地分配量增量

int f,t=0。 //定义全局变量typedef struct {c har name[20] 。long num。 //学号和房号都为长整型long roomnum。

}stu。stu stud。typedef struct

{int length。 //当前长度stu*elem。 //存储空间基址int lists ize 。 //当前分配地存储容量

}linklist 。void init(linklist&l)//线性表初始化

{l.le ngt h=0 。l.elem=(stu*)malloc(N*sizeof(stu)) 。l.lists ize=N。 }vo id menu()//操作菜单

{

")p rintf(" ") 。p rintf(" 1按姓名排序 2按学号排序 ") 。p rintf(" ") 。p rintf(" 3按房号排序 4按姓名查找 ") 。p rintf(" ") 。p rintf(" 5按学号查找 6按房号查找 ") 。p rintf(" ") 。p rintf("7按学号插入 8按学号删除 ") 。p rintf(" ") 。p rintf(" ") 。p rintf(" ") 。p rintf(" ") 。p rintf("输入为时退出操作 ")。if(t==1)

{p rintf("请输入数字键(1~8为操作键 ):") 。 //1~8为有效数字操作键s c anf("%d",&f) 。if(f<0| |f>9) {p rintf(" ") 。s ys tem("c ls") 。 //清屏函数

PQ.hosting:香港HE/乌克兰/俄罗斯/荷兰/摩尔多瓦/德国/斯洛伐克/捷克vps,2核/2GB内存/30GB NVMe空间,€3/月

PQ.hosting怎么样?PQ.hosting是一家俄罗斯商家,正规公司,主要提供KVM VPS和独立服务器,VPS数据中心有香港HE、俄罗斯莫斯科DataPro、乌克兰VOLIA、拉脱维亚、荷兰Serverius、摩尔多瓦Alexhost、德国等。部分配置有变化,同时开通Paypal付款。香港、乌克兰、德国、斯洛伐克、捷克等为NVMe硬盘。香港为HE线路,三网绕美(不太建议香港)。免费支持wi...

易探云月付18元起,香港/美国/深圳/北京VPS,CN2、BGP等多线路

易探云怎么样?易探云是国内一家云计算服务商家,致力香港服务器、国内外服务器租用及托管等互联网业务,目前主要地区为运作香港BGP、香港CN2、广东、北京、深圳等地区。易探云服务器均选择当下热门线路,比如CN2 GIA、BGP线路、CN2线路等,所有云主机支持月付,并且首月优惠,年付优惠,优惠后香港沙田云服务器/独立ip/香港CN2线路,每月仅18元,188元/年。点击进入:易探云官方网站地址1、香港...

福州云服务器 1核 2G 2M 12元/月(买5个月) 萤光云

厦门靠谱云股份有限公司 双十一到了,站长我就给介绍一家折扣力度名列前茅的云厂商——萤光云。1H2G2M的高防50G云服务器,依照他们的规则叠加优惠,可以做到12元/月。更大配置和带宽的价格,也在一般云厂商中脱颖而出,性价比超高。官网:www.lightnode.cn叠加优惠:全区季付55折+满100-50各个配置价格表:地域配置双十一优惠价说明福州(带50G防御)/上海/北京1H2G2M12元/月...

域名查询软件为你推荐
域名注册域名的注册是怎么回事?在不同的网站注册有区别吗?域名价格什么样的域名比较值钱?域名空间请问域名和空间有什么分别免费国外空间哪里的国外免费空间好?vps试用求永久免费vps服务器(要永久的)台湾主机电脑主板那些牌子是台湾的?那些牌子是国产的?域名申请申请域名需要哪些流程具体点 谢谢免费网站空间有没有免费的网站空间推荐大连虚拟主机大连建网站哪里好?论坛虚拟主机论坛虚拟主机的IP地址在后台的那个地方呀
北京主机租用 vps代理 域名备案流程 最便宜虚拟主机 域名解析服务器 inmotionhosting l5520 hostloc 免费活动 免费高速空间 cdn加速是什么 河南移动m值兑换 如何用qq邮箱发邮件 raid10 电信网络测速器 畅行云 存储服务器 phpinfo 塔式服务器 gotoassist 更多