收藏 分销(赏)

c语言专业课程设计人员标准管理系统.doc

上传人:快乐****生活 文档编号:2864533 上传时间:2024-06-07 格式:DOC 页数:29 大小:182.54KB
下载 相关 举报
c语言专业课程设计人员标准管理系统.doc_第1页
第1页 / 共29页
c语言专业课程设计人员标准管理系统.doc_第2页
第2页 / 共29页
c语言专业课程设计人员标准管理系统.doc_第3页
第3页 / 共29页
c语言专业课程设计人员标准管理系统.doc_第4页
第4页 / 共29页
c语言专业课程设计人员标准管理系统.doc_第5页
第5页 / 共29页
点击查看更多>>
资源描述

1、内蒙古科技大学本科生课程设计说明书题 目:C语言课程设计 人员管理系统学生姓名:武飞学 号:专 业:计算机科学和技术班 级:-3指导老师:王丽颖内蒙古科技大学课程设计任务书课程名称C语言课程设计设计题目 人员管理系统指导老师王丽颖时间.12.31.1.4 一、教学要求1. 巩固和加深学生对C语言课程基础知识了解和掌握2. 掌握C语言编程和程序调试基础技能3. 利用C语言进行基础软件设计4. 掌握书写程序设计说明文档能力5. 提升利用C语言处理实际问题能力二、设计资料及参数每个学生在老师提供课程设计题目中任意选择一题,独立完成,题目选定后不可更换。人员管理系统现有一批人员数椐,要求输入计算机并存

2、放在内存中,然后增加若干个新人员统计,并可输出人员清单,实现文件存盘和读入文件进行修改功效。人员基础信息包含姓名,性别,年纪,身份证号和简历(80个字符以内)。要求设计菜单来调用其各功效模块:v 新建文件、打开文件v 输入统计、输出统计v 查询统计(最少含有两种查询方法,比如以姓名查询和以身份证号查询)v 修改、插入和删除统计v 保留文件、退出三、设计要求及结果1. 分析课程设计题目标功效需求(可选择数组或链表实现,可多人(最多3人)协作完成一个题目)2. 写出具体设计说明(最少包含功效实现分析和模块步骤图)3. 编写程序代码,调试程序使其能正确运行(代码书写要规范,标示符要见名知意,要有必需

3、注释,每人最少3个函数,每人最少200行代码,不包含注释和花括号)4. 设计完成软件要便于操作和使用5. 设计完成后提交课程设计汇报(请严格根据模板进行排版)四、进度安排第一天 选择课程设计题目,分析课题要求第二天 编程第三天 编程及调试第四天 写课程设计汇报第五天 提交课程设计汇报(打印稿及电子稿)五、评分标准1. 依据平时上机考勤、表现和进度,老师将天天点名和检验2. 依据课程设计完成情况,必需有可运行软件。3. 依据课程设计汇报质量,如有雷同,则全部雷同全部些人均判为不及格。目 录内蒙古科技大学课程设计任务书I第一章 需求分析31.1引言31.2任务概述31.3数据描述31.4功效需求3

4、第二章概要设计42.1总体设计42.2数据类型设计(或数据结构设计)42.3接口设计52.4运行界面设计5第三章具体设计63.1输入模块设计63.2输出模块设计73. 3查找模块设计73.4保留及读取模块设计9第四章测试分析114.1测试程序实施情况11第五章用户手册(可选)145.1使用说明145.2运行说明14第六章课程设计总结15附录:程序代码16参考文件24第一章 需求分析1.1 引言伴随管理人数增加,手动管理人员将会显得不方便。这时就需要使用软件来实施人性化管理。1.2 任务概述做一个程序对人员信息实现:新建文件、打开文件、输入统计、输出统计、查询统计、修改、插入和删除统计、保留文件

5、、退出功效1.3 数据描述l 采取结构体来储存人员信息。l 人员信息包含姓名、性别、年纪、身份证号、个人简历。l 姓名长度输入时不能超出10。l 性别输入时只能输入时一个字符w/m。l 身份证长度输入时不能超出20 。l 个人简历长度输入时不能超出120。1.4 功效需求l 新建文件、打开文件l 输入统计、输出统计l 查询统计(最少含有两种查询方法,比如以姓名查询和以身份证号查询)l 修改、插入和删除统计l 保留文件、退出第二章 概要设计2.1 总体设计1.更新人员信息2.身份证号查找3.姓名查找4.修改信息5.插入信息开始6.删除信息7.输出信息8.保留信息9.读取文件0.退出2.2 数据类

6、型设计(或数据结构设计)typedef struct studentchar nameM; /姓名char sex; /性别int year; /年纪char num20; /身份证号char jian120;/个人简历stu; /结构体储存2.3 接口设计 表2.1:函数列表函数名函数格式 函数功效menuint menu(void)用户菜单readint read(stu st)添加人员信息xieruvoid xieru(stu st,int n)写信息到文件duquint duqu(stu st);从文件读取信息printvoid print(stu st,int n)输出信息到屏幕sh

7、enfenzhengvoid shenfenzheng(stu st,int n)按身份证查找信息xingmingvoid xingming(stu st,int n)按姓名查找xiugaivoid xiugai(stu st,int n)修改信息charuint charu(stu st,int n)插入信息shanchuvoid shanchu(stu st,int n)删除信息2.4 运行界面设计第三章 具体设计3.1 输入模块设计开始int read(stu st)输出提醒信息int i=-1;system( cls ); 输入姓名printf(tt*n);printf(tt* 1.更

8、新组员信息 *n);printf(tt*n);Y判定姓名是否小于0。doi+;printf(请输入姓名:n);Nscanf(%s,&sti.name);if(atoi(sti.name)=0)输入性别输入年纪printf(请输入性别(w/m):n);输入身份证号scanf( %c,&sti.sex);输入简历printf(请输入年纪:n);scanf(%d,&sti.year);printf(请输入身份证号:n);scanf(%s,&sti.num);printf(请输入简历:n);结束scanf(%s,&sti.jian);printf(n编号%d数据添加成功!n,i+1);printf(输

9、入姓名为负数结束输入!n);printf(n) ;elsebreak;while(sti.num0);printf(n-n);printf(数据更新成功!n);system(pause); /按任意键继续return i;3.2 输出模块设计void print(stu st,int n)int i;system( cls ); /清屏printf(n-n);printf(编号t姓名t性别t年纪t身份证号tt介绍n);for(i=0;in;i+)printf(%dt%st%ct%dt%-24s%sn,i+1,sti.name,sti.sex,sti.year,sti.num,sti.jian)

10、;开始提醒信息提醒信息3.3 查找模块设计输入身份证输入身份证void shenfenzheng(stu st,int n)N是否符合char x20;int i;Ysystem( cls );输出信息printf(tt*n);printf(tt* 2.身份证号查找 *n);printf(tt*n);结束printf(输入你要查询身份证号:);scanf(%s,x); for(i=0;in;i+)if(strcmp(sti.num,x)=0)printf(姓名t性别t年纪t身份证号tt介绍n);printf(%st%ct%dt%st%sn,sti.name,sti.sex,sti.year,s

11、ti.num,sti.jian);printf(n-n);system(pause);return;printf(未找到!);printf(n-n);system(pause);开始void xingming(stu st,int n)提醒信息char x10;int i;输入姓名system( cls );printf(tt*n);是否符合printf(tt* 3.姓名查找 *n);Nprintf(tt*n);printf(输入你要查询姓名:);Y输出信息scanf(%s,x);f or(i=0;in;i+)if(strcmp(sti.name,x)=0)结束printf(姓名t性别t年纪t

12、身份证号tt介绍n);printf(%st %ct%dt%st%sn,sti.name,sti.sex,sti.year,sti.num,sti.jian);printf(n-n);printf(按键返回!);getchar(); /*按任意健*/getchar();return;printf(未找到!);printf(n-n);system(pause);开始3.4 保留及读取模块设计void xieru(stu st,int n)成功打开FILE *fp;NYif(fp=fopen(ren.txt,w)=NULL)保留文件printf(保留文件失败!n);return; 关闭文件fwrit

13、e(st,sizeof(stu),n,fp);printf(保留成功!n);fclose(fp);返回system(pause); 开始int duqu(stu st)FILE *fp;打开成功int i;if(fp=fopen(ren.txt,r)=NULL)NY读取文件printf(文件不存在!打开失败!n);return 0;关闭文件for(i=0;!feof(fp);i+)返回人数fread(&sti,sizeof(stu),1,fp);fclose(fp);返回printf(读取成功!n);system(pause);return i-1;第四章 测试分析4.1 测试程序实施情况第五

14、章 用户手册(可选)5.1 使用说明运行程序会显示菜单依据菜单输入编号实现对应功效;1.更新人员信息 2.身份证号查找 3.姓名查找4.修改信息 5.插入信息 6.删除信息7.输出信息 8.保留文件 9.读取文件0.退出5.2 运行说明只有退出程序时。保留文件。下次运行按读取。才能读取成功!更新人员信息会覆盖到目前人员信息。需要注意。第六章 课程设计总结全部模块化设计。未定义全局变量做干扰。采取结构体。不足之处,身份证长度未做限定,有些不足。需要改善有数据存放方法。改成链式存可能会更佳。还能够深入优化程序使其实现分级菜单。实现真正意义上新建文件,读取文件。所碰到问题是怎样给每个数据储存文件取不

15、一样名字。怎样把每个文件名读取进来。通这次课程设计,我们对C语言这门课程有了深一步了解。它是计算机程序设计关键理论技术基础,在我们计算机专业学习中占据十分关键地位,同时也使我们知道要学习这门课程,仅学习书本上知识是不够,还要有较高实践能力。因为我们学习知识就是为了实践,而只有实践多编写程序才能愈加好了解和掌握书本上东西。经过本课题,深入熟悉了C语言基础东西。我们还要学会分析题目标已知和未知,学会中合起来考虑问题,在逐步展开思想,尤其是碰到大问题时要细细分解成为很多小问题来处理。同时我还学到了课外知识,碰到难题是不要逃避,而是要迎难而上,反复试验调试结果后,再错基础上做修改。谈到错是成功之母,说

16、明我们在莫一件事上要数次吸收经验教训。这次课程设计,让我对于以往上课不了解、不太清楚问题,经过亲身实践弄懂了很多,同时因为程序是在老师及同学帮主下完成,当中有很多程序全部是多个同学一起讨论出来,让我体会到了集体力量是无限,当然更让我坚定了以后要好好掌握C语言这一门课程决心!附录:程序代码#include#include#include/字符串操作 #define N 30 /人数 #define M 10 /名字长度 typedef struct studentchar nameM;char sex;int year;char num20;char jian120;stu;int menu(v

17、oid);/用户菜单 int read(stu st);/添加人员信息 void xieru(stu st,int n);/写入信息到文件 int duqu(stu st);/从文件读取信息void print(stu st,int n);/输出信息 void shenfenzheng(stu st,int n);/按身份证查找信息void xingming(stu st,int n);/按姓名查找 void xiugai(stu st,int n);/修改信息 int charu(stu st,int n);/插入信息 void shanchu(stu st,int n);/删除信息 mai

18、n()int a,n;stu renN;system(color 0A);/修改颜色 while(1)system( cls );/清屏 printf(n);printf(n);printf(n);printf(t*人员管理系统*n);printf(t* *n);printf(t* 1.更新人员信息 2.身份证号查找 3.姓名查找 *n);printf(t* 4.修改信息 5.插入信息 6.删除信息 *n);printf(t* 7.输出信息 8.保留文件 9.读取文件 *n);printf(t* 0.退出 *n);printf(t*n);a=menu();switch(a)case 1:n=r

19、ead(ren);break;case 2:shenfenzheng(ren,n);break;case 3:xingming(ren,n);break;case 4:xiugai(ren,n);break;case 5:n=charu(ren,n);break;case 6:shanchu(ren,n);n-;break;case 7:print(ren,n);printf(n-n); system(pause);break;case 8:xieru(ren,n);break;case 9:n=duqu(ren);break;case 0: system( cls );printf(nnn)

20、;printf(t*n);printf(t* *n);printf(t* *n);printf(t* 谢谢使用! *n);printf(t* *n);printf(t* *n);printf(t*n);exit(0); /exit(code)当code为0时正常退出。非0时出现某种错误后退 default:printf(输入错误!请输入0-9数字!n);system(pause);break;return 0;int menu(void)/用户菜单 int a;printf(nt输入你选择(0-9): bb);scanf(%d,&a);return a;void xieru(stu st,in

21、t n)FILE *fp;if(fp=fopen(ren.txt,w)=NULL)printf(保留文件失败!n);return; fwrite(st,sizeof(stu),n,fp);printf(保留成功!n);fclose(fp);system(pause); int duqu(stu st)FILE *fp;int i;if(fp=fopen(ren.txt,r)=NULL)printf(文件不存在!打开失败!n);return 0;for(i=0;!feof(fp);i+)fread(&sti,sizeof(stu),1,fp);fclose(fp);printf(读取成功!n);

22、system(pause);return i-1;int read(stu st)int i=-1;system( cls ); printf(tt*n);printf(tt* 1.更新组员信息 *n);printf(tt*n);doi+;printf(请输入姓名:n);scanf(%s,&sti.name);if(atoi(sti.name)=0)printf(请输入性别(w/m):n);scanf( %c,&sti.sex);printf(请输入年纪:n);scanf(%d,&sti.year);printf(请输入身份证号:n);scanf(%s,&sti.num);printf(请输入

23、简历:n);scanf(%s,&sti.jian);printf(n编号%d数据添加成功!n,i+1);printf(输入姓名为负数结束输入!n);printf(n) ;elsebreak;while(sti.num0);printf(n-n);printf(数据更新成功!n);system(pause); return i;void print(stu st,int n)int i;system( cls );printf(n-n);printf(编号t姓名t性别t年纪t身份证号tt介绍n);for(i=0;in;i+)printf(%dt%st%ct%dt%-24s%sn,i+1,sti.

24、name,sti.sex,sti.year,sti.num,sti.jian); void shenfenzheng(stu st,int n)char x20;int i;system( cls );printf(tt*n);printf(tt* 2.身份证号查找 *n);printf(tt*n);printf(输入你要查询身份证号:);scanf(%s,x); for(i=0;in;i+)if(strcmp(sti.num,x)=0)printf(姓名t性别t年纪t身份证号tt介绍n);printf(%st%ct%dt%st%sn,sti.name,sti.sex,sti.year,sti

25、.num,sti.jian);printf(n-n);system(pause);return;printf(未找到!);printf(n-n);system(pause);void xingming(stu st,int n)char x10;int i;system( cls );printf(tt*n);printf(tt* 3.姓名查找 *n);printf(tt*n);printf(输入你要查询姓名:);scanf(%s,x); for(i=0;i=0)printf(请输入性别(w/m):n);scanf( %c,&sti.sex);printf(请输入年纪:n);scanf(%d,

26、&sti.year);printf(请输入身份证号:n);scanf(%s,&sti.num);printf(请输入简历:n);scanf(%s,&sti.jian);printf(n编号%d数据添加成功!n,i+1);printf(输入姓名为负数结束输入!n);printf(n) ;elsebreak;while(sti.num0);printf(n-n);system(pause);return i;void xiugai(stu st,int n)int x;system( cls );printf(tt*n);printf(tt* 4.修改信息 *n);printf(tt*n);pri

27、nt(st,n);printf(n请输入要修改信息编号:); scanf(%d,&x);printf(请输入姓名:n);scanf(%s,&stx-1.name);printf(请输入性别(w/m):n);scanf( %c,&stx-1.sex);printf(请输入年纪:n);scanf(%d,&stx-1.year);printf(请输入身份证号:n);scanf(%s,&stx-1.num);printf(请输入简历:n);scanf(%s,&stx-1.jian);printf(n编号%d数据修改成功!n,x);printf(n-n);system(pause);void shanc

28、hu(stu st,int n)int x,i;system( cls );printf(tt*n);printf(tt* 6.删除信息 *n);printf(tt*n);print(st,n);printf(n请输入要删除信息编号:);scanf(%d,&x);for(i=x-1;in-1;i+)strcpy(stx-1.name,stx.name);stx-1.sex=stx.sex;stx-1.year=stx.year;strcpy(stx-1.num,stx.num);strcpy(stx-1.jian,stx.jian);printf(删除成功!n);printf(n-n);system(pause); 参考文件1. 张跃廷,王小科,帖凌珍. ASP.NET程序开发范例宝典M,北京:人民邮电出版社,2. 马颖华,苏贵洋,袁艺等. ASP.NET 2.0网络编程从基础到实践M,北京:电子工业出版社,3. C语言程序设计,谭浩强,清华大学出版社4. C语言程序设计课程设计,刘振安,机械工业出版社5. C语言程序设计学习指导/苏小红,车万翔,王甜甜编著。-北京:高等教育出版社,.86. C语言程序设计/苏小红,王宇颖,孙志岗等编著。-北京:高等教育出版社,.4

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 学术论文 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服