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

域名查询软件  时间: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") 。 //清屏函数

RAKsmart 2021新年新增韩国服务器及香港美国日本VPS半价

RAKsmart 商家我们肯定不算陌生,目前主要的营销客户群肯定是我们。于是在去年的时候有新增很多很多的机房,比如也有测试过的日本、香港、美国机房,这不今年有新增韩国机房(记得去年是不是也有增加过)。且如果没有记错的话,之前VPS主机也有一次磁盘故障的问题。 这不今天有看到商家新增韩国服务器产品,当然目前我还不清楚商家韩国服务器的线路和速度情况,后面我搞一台测试机进行...

NameCheap域名转入优惠再次来袭 搜罗今年到期域名续费

在上个月的时候也有记录到 NameCheap 域名注册商有发布域名转入促销活动的,那时候我也有帮助自己和公司的客户通过域名转入到NC服务商这样可以实现省钱续费的目的。上个月续费转入的时候是选择9月和10月份到期的域名,这不还有几个域名年底到期的,正好看到NameCheap商家再次发布转入优惠,所以打算把剩下的还有几个看看一并转入进来。活动截止到9月20日,如果我们需要转入域名的话可以准备起来。 N...

舍利云:海外云服务器,6核16G超大带宽vps;支持全球范围,原价516,折后价200元/月!

舍利云怎么样?舍利云推出了6核16G超大带宽316G高性能SSD和CPU,支持全球范围,原价516,折后价200元一月。原价80美元,现价30美元,支持地区:日本,新加坡,荷兰,法国,英国,澳大利亚,加拿大,韩国,美国纽约,美国硅谷,美国洛杉矶,美国亚特兰大,美国迈阿密州,美国西雅图,美国芝加哥,美国达拉斯。舍利云是vps云服务器的销售商家,其产品主要的特色是适合seo和建站,性价比方面非常不错,...

域名查询软件为你推荐
免费国外空间国外免费空间有哪些好用?网站域名怎么知道一个网站域名是什么啊!国内免费空间国内哪里有免费的空间?虚拟空间哪个好国内哪个空间商(虚拟主机)最好asp虚拟空间怎样在一个虚拟空间里放上一个ASP和一个PHP的网站apache虚拟主机linux apache虚拟主机有几种方式淘宝虚拟主机我想在淘宝买虚拟主机不知道哪家好?想找长期合作稳定的虚拟主机测评虚拟主机怎么看好坏!!!!新加坡虚拟主机请问新网的虚拟主机靠谱吗?新加坡虚拟主机新加坡虚拟主机无法访问,Godaddy回邮件说是域名的问题?
vps试用 长沙服务器租用 vps推荐 域名备案批量查询 bluevm debian6 美国php空间 cdn加速原理 网络空间租赁 33456 登陆空间 江苏双线 七牛云存储 北京主机托管 wordpress空间 xshell5注册码 hosting24 cdn加速技术 美国十大啦 windowsserver2012 更多