




已阅读5页,还剩18页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
_信息工程学院课程设计报告题 目: 幼儿园管理系统 系部名称:专业名称:计算机科学与技术班 级:学号:201503学生姓名 :指导教师: 一、课程设计目的本次课程设计的目的是通过进行一次对软件系统的开发、编写、测试及运行而对本学期所学习的C语言这门课程有更深一步的认识、了解及其使用。通过VC6.0集成开发环境及控制台应用程序进行代码的运行和调试,应用程序完全由C语言进行编写,利用C语言建立链表,结构体和指针等。二、课程设计内容使用VC6.0集成开发环境开发出目标程序“幼儿园管理系统”,生成的应用程序在控制台内运行。本系统包括幼儿园儿童信息的初始化新建,按儿童姓名、班级等查询,对单个儿童进行信息修改,删除,以某个信息为条件进行降序排列等功能。三、软硬件环境及系统所采用的体系结构系统采用标准的语言开发环境代码,运行库作为底层支持。进入系统,首先是系统菜单,有若干选项,包括儿童信息的初始化,单个儿童的信息修改、删除,姓名查询,以儿童身高为条件进行排序。四、需求分析1.功能需求本系统类似于传统的幼儿园信息管理系统,可进行一般的儿童信息新建,修改,查询等功能,第一次使用该程序必须先进行新建儿童信息操作。 2.性能需求本系统可在Windows2000及以上的Windows系列的系统上运行。3.可靠性和可用性需求系统的出错率不超过2%,若大于这个数字,则说明系统该进行维护了。并且在两个月内的出错率不多于2次。4.数据需求系统要求的数据较为宽松,但要指出的是,在用户新建时,用户名必须为字母(大小写均可,大些也视为小写)、下划线、数字均可,但是不包括¥、$之类符号。尤其值得注意的是,在用户名左右输入的空格将被系统自动过滤。五、系统设计1系统结构图(功能模块图) (1) 系统功能图幼儿园管理系统 显示儿童信息插入儿童信息退出系统查询儿童信息更新儿童信息删除儿童信息输入儿童信息 (2)儿童实体E-R图儿童新建查询修改排序浏览六、系统的实施系统的运行环境为microsoft Visual C+运行库, 使用C语言作为开发工具,系统界面如下: 七、系统评价及心得体会 此次系统编写的流程完全按照软件工程学习的开发软件的流程来进行的,基本按照可行性分析,需求分析等步骤严格执行下来,在时间上也是完全暗转进度来执行,使我深切感受了软件开发的过程,虽然系统较小,而且只有我一个人从头进行到尾,但这也为我提供了很多宝贵的项目开发经验。值得考虑的是,在以后开发其他软件系统时,对链表的设计尤其要重视,尤其是链表地址之间的关联,以及链表的建立,这一切不能照搬书本上的内容。要设计出较好的程序,要根据具体情况作出相应的调整。灵活运用各种函数和算法语句才是最高境界。 八、参考文献C语言程序设计项目教程 李迎秋 东软电子出版社 九、附录#include#include#include#define TITLE 幼儿园管理系统#define MAX 10#define MENU_MAIN_COUNT 8#define MENU_SEARCH_COUNT 4void input_record();void show_record();void search_record();void update_record();void delete_record();void insert_record();void save_to_file();void exit_system();void search_by_class();void search_by_name();void search_by_sex();void search_exit();typedef struct studentchar nameMAX;char sexMAX;int weight;int height;char tel15;char wday9;char address30;char class8;char birth9;struct student * next;stu;stu * head=NULL;typedef struct nodeint height;struct node *next;LNode,*LinkList;char menu_main =| |n| 1 输入儿童信息 |n| 2 显示儿童信息 |n| 3 查询儿童信息 |n| 4 更新儿童信息 |n| 5 删除儿童信息 |n| 6 插入儿童信息 |n| 7 保存文件 |n| 8 退出系统 |n| |n;void (* menu_main_func) ()= input_record,show_record,search_record,update_record,delete_record,insert_record,save_to_file,exit_system;char menu_search=| |n| 1 按照班级查询 |n| 2 按照姓名查询 |n| 3 按照性别查询 |n| 4 返回上级菜单 |n| |n;void ( * menu_search_func) () = search_by_class,search_by_name,search_by_sex,search_exit;void main() /*主函数*/void print_menu_main();print_menu_main();void print_menu_main() /*显示主菜单*/void print_menu_title(char * title);int selected = 0;system(cls); print_menu_title(TITLE); printf(menu_main); printf(=n);while (!(selected = 1 & selected 请选择:);scanf(%d,&selected);if(selected = 1 & selected 输入错误!(注:请选择1-%d)n,MENU_MAIN_COUNT);menu_main_funcselected-1 (); void print_menu_title(char * title)printf(=n);printf(| %s |n,title);printf(-n);void input_record() /*输入儿童信息*/void create_stu_by_input(stu * pNewStu);stu * get_last_student(stu * p);void print_menu_main();char continue_input = N;stu * pLastStu=NULL;stu * pNewStu=(stu *)malloc(sizeof(stu);pNewStu-next=NULL;create_stu_by_input(pNewStu);if(head=NULL)head=pNewStu;elsepLastStu=get_last_student(head);pLastStu-next=pNewStu;printf(继续输入儿童信息?(Y 继续, N 返回菜单);getchar();continue_input=getchar();if(continue_input=n | continue_input=N)print_menu_main();elseinput_record();stu * get_last_student(stu * p)if(p-next=NULL)return p;else return get_last_student(p-next);void create_stu_by_input(stu * pNewStu)printf(请输入儿童的信息(注:最大长度是10个字符):n);printf(姓名:);scanf(%s,pNewStu-name);printf(性别:);scanf(%s,pNewStu-sex);printf(出生日期:);scanf(%s,&(pNewStu-birth);printf(入园日期:);scanf(%s,&(pNewStu-wday);printf(身高:);scanf(%d,&(pNewStu-height);printf(体重:);scanf(%d,&(pNewStu-weight);printf(班级:);scanf(%s,pNewStu-class);printf(家庭住址:);scanf(%s,pNewStu-address);printf(电话:);scanf(%s,pNewStu-tel);void show_record() /*显示儿童信息 */void print_table_head();void print_table_row(stu * p);void print_table_buttom();void print_menu_main();stu * p=head;print_table_head();while(p!=NULL)print_table_row(p);p=p-next;print_table_buttom();printf(按任意键返回菜单.n);getchar();getchar();print_menu_main();void print_table_head()printf(+-+-+-+-+-+-+-+-+-+n);printf(|姓名| 性别 | 出生日期 | 入园日期 |身高|体重|班级| 家庭住址 | 电话 |n);printf(+-+-+-+-+-+-+-+-+-+n);void print_table_row(stu * p)printf(|%4s|%6s|%10s|%10s|%4d|%4d|%4s|%13s|%12s|n,p-name,p-sex,p-birth,p-wday,p-height,p-weight,p-class,p-address,p-tel);void print_table_buttom()printf(+-+-+-+-+-+-+-+-+-+n);void search_record() /*查询儿童信息*/void print_menu_title(char * title);int selected=0;system(cls);print_menu_title( 查询儿童信息 );printf(menu_search);printf(=n);while(!(selected=1 & selected请选择);scanf(%d,&selected);if(selected=1 & selected输入错误!(请选择 1-%d)n,MENU_SEARCH_COUNT);menu_search_funcselected-1();void search_by_class() /*按班级查找*/void print_table_head();void print_table_row(stu * p);void print_table_buttom();void search_record() ;char classMAX;char continue_input=N;stu * p=head;int isfound=0;printf(n请输入儿童所在班级:);scanf(%s,class);printf(n查找%s.n,class);print_table_head();while(p!=NULL)if(strcmp(p-class,class)=0)print_table_row(p);isfound=1;break;p=p-next;if(!isfound)printf(n没有找到结果!n);print_table_buttom();printf(继续查找?(Y 继续, N 返回);getchar();continue_input=getchar();if(continue_input=Y | continue_input=y)search_by_class();elsesearch_record();void search_by_name() /*按姓名查找*/void print_table_head();void print_table_row(stu * p);void print_table_buttom();void search_record() ;char nameMAX;char continue_input=N;stu * p=head;int isfound=0;printf(n请输入儿童姓名:);scanf(%s,name);printf(n查找%s.n,name);print_table_head();while(p!=NULL)if(strcmp(p-name,name)=0)print_table_row(p);isfound=1;p=p-next;if(!isfound)printf(n没有找到结果!n);print_table_buttom();printf(继续查找?(Y 继续, N 返回);getchar();continue_input=getchar();if(continue_input=Y | continue_input=y)search_by_name();elsesearch_record();void search_by_sex() /*按性别查找*/void print_table_head();void print_table_row(stu * p);void print_table_buttom();void search_record() ;char sexMAX;char continue_input=N;stu * p=head;int isfound=0;printf(n请输入儿童性别:);scanf(%s,sex);printf(n查找%s.n,sex);print_table_head();while(p!=NULL)if(strcmp(p-sex,sex)=0)print_table_row(p);isfound=1;p=p-next;if(!isfound)printf(n没有找到结果!n);print_table_buttom();printf(继续查找?(Y 继续, N 返回);getchar();continue_input=getchar();if(continue_input=Y | continue_input=y)search_by_sex();elsesearch_record();void search_exit()void print_menu_main();print_menu_main();void update_record() /*更新儿童信息*/void print_menu_main();void create_stu_by_input(stu * pNewStu);stu * p=head;char nameMAX;char continue_input=N;printf(请输入要更新的儿童的姓名:);scanf(%s,name);while(p!=NULL)if(strcmp(p-name,name)=0)break;p-next;if(p=NULL)printf(没有姓名是%s的儿童.,name);elsecreate_stu_by_input(p);printf(继续更新?(Y 继续, N 返回);getchar();continue_input=getchar();if(continue_input=n | continue_input=N)print_menu_main();elseupdate_record();void delete_record() /*删除儿童信息*/void print_menu_main();stu * p=head;stu * pPre=NULL;char nameMAX;char continue_input=N;printf(请输入要删除的儿童姓名:);scanf(%s,name);while(p!=NULL)if(strcmp(p-name,name)=0)break;p=p-next;if(p=NULL)printf(没有姓名是%s的学生.,name);elseprintf(确定要删除姓名为%s的儿童信息吗?(Y 确定,N 取消),p-name);getchar();continue_input=getchar();if(continue_input=Y | continue_input=y)pPre=head;if(pPre=p)head=p-next;free(p);elsewhile(pPre!=NULL)if(pPre-next=p)pPre-next=p-next;free(p);break;pPre=pPre-next;printf(删除成功!n);printf(继续删除吗?(Y 继续, N 返回);getchar();continue_input=getchar();if(continue_input=n | continue_input=N)print_menu_main();elsedelete_record();void insert_record() /*插入儿童信息*/stu * p=head;stu * pPre=NULL;char nameMAX;void create_stu_by_input(stu * pNewStu);stu * get_last_student(stu * p);void print_menu_main();char continue_input = N;stu * pLastStu=NULL;stu * pNewStu=(stu *)malloc(sizeof(stu);pNewStu-next=NULL;create_stu_by_input(pNewStu);if(head=NULL)head=pNewStu;elsepLastStu=get_last_student(head);pLastStu-next=pNewStu;while(p!=NULL)if(strcmp(p-name,name)=0)break;p=p-next;if(p=NULL)printf(插入成功!n);elseprintf(/,p-name);getchar();continue_input=getchar();if(continue_input=Y | contin
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 历史期末专题复习提纲2024-2025学年统编版七年级历史下册
- 交通设备制造业数字化转型中的智能制造与产品生命周期管理实践报告
- 社区心理健康服务在2025年的发展现状与推广策略报告
- 智能信用体系在共享出行平台的应用与推广报告
- 国产医疗器械2025年市场竞争力:技术创新与品牌影响力分析报告
- 装备制造业2025年自主研发与产业链协同创新研究报告
- 生态修复工程2025年生物多样性保护与生态修复项目生态修复生态系统恢复路径研究报告
- 供应链金融如何优化中小企业供应链金融资源配置与风险管理报告
- 2025年养老地产市场需求变化与适老化产品设计趋势分析报告
- 2025年BIM技术在建筑项目全过程管理中的信息化管理与智能决策报告
- 2024-2025年燃气安全生产操作人员及管理人员安全知识考试题库与答案
- 2019北师大版高中英语单词表全7册
- 核技术在安检领域的应用
- 起重吊装演练方案
- 宁夏固原市第六中学2022-2023学年七年级上学期分班考试语文检测卷
- 煤矿综采队液压支架检修和维护管理制度
- 北师大版生物八年级下册23章1节生物的生存依赖一定的环境(44张)课件-课件
- 上海市闵行区2024年五年级数学第二学期期末学业水平测试试题含解析
- NB∕SH∕T 0001-2019 电缆沥青标准规范
- DL∕T 5342-2018 110kV~750kV架空输电线路铁塔组立施工工艺导则
- 2024江苏扬州市高邮市交通产业投资集团有限公司招聘17人笔试备考题库及答案解析
评论
0/150
提交评论