职工工资管理系统设计报告2

上传人:飞*** 文档编号:42411559 上传时间:2018-06-02 格式:DOC 页数:12 大小:91.99KB
返回 下载 相关 举报
职工工资管理系统设计报告2_第1页
第1页 / 共12页
职工工资管理系统设计报告2_第2页
第2页 / 共12页
职工工资管理系统设计报告2_第3页
第3页 / 共12页
职工工资管理系统设计报告2_第4页
第4页 / 共12页
职工工资管理系统设计报告2_第5页
第5页 / 共12页
点击查看更多>>
资源描述

《职工工资管理系统设计报告2》由会员分享,可在线阅读,更多相关《职工工资管理系统设计报告2(12页珍藏版)》请在金锄头文库上搜索。

1、课程设计报告课程名称:课程名称:职工工资管理系统课程设计系系 别:别: 计算机系计算机系 专专 业:业: 通信工程 学生姓名学生姓名: : 学学 号号: 1120119124 指导教师指导教师: 目录目录第一章 需求分析1.1 课程设计题目1.2 课程设计任务及要求1.3 课程设计思想1.4 软硬件运行环境及开发工具 第二章 概要设计2.1 设计流程图2.2 主要的数据结构2.3 方法及原理的简要说明 第三章 详细设计3.1 计算机程序框图3.2 自编程序 第四章 调试与操作说明4.1 系统调试4.2 操作使用说明 第五章 课程设计与总结体会5.1 对开发的过程归纳与总结5.2 在过程中遇到的

2、技术难点与解决方法5.3 程序尚存问题5.4 进一步开发的见解与建议5.5 收获与体会 第六章 致谢 第七章 参考文献 第八章 附录第一章 需求分析 1. 课程设计题目 带头结点的单循环链表(职工工资管理系统) 2. 课程设计任务及要求编写一个职工工资管理系统,可以实现对数据的基本处理,要求用带头结 点的单循环链表实现 3. 课程设计思想 首先完成对程序的密码的确认,其次完成数据录入模块,然后实现对已录 入的数据的存储和读入,最后就可以在其基础建立链表完成其余各项操作 4. 软硬件运行环境及开发工具 Turboc2.0,Windows XP,VC+6.0 第二章 概要设计 2.1 设计流程图确

3、认密码主菜单密码修改录入摸块查找摸块插入模块保存模块保存读入统计模块删除模块排序模块图 1 主函数流程图 2.1.1 录入读取建链流程图 建链流程图如图 2 所示图 2 建链流程图2.1.2 考勤基本情况增、删、改数据流程图 操作流程图如图 3 所示 图 3 操作函数流程图2.2 主要的数据结构 2.2.1 链表结构如图 4 所示Head结点 1结点 2用户D1 数据表增加 数据算法用户算法 D1 数据表窗口 展示图 4 链表结构图2.2.2 链表的结点结构如表 1 所示表 1 链表的结点结构Char20Char4IntIntIntInt指针NamSexBamDemInmMonnext*姓名性

4、别基础工资扣除工资补贴工资实际工资下一结点第三章 详细设计 3.1 计算机程序框图 3.1.1 密码确认部分程序图如表 5 所示有是 无否不对对图 5 密码确认部分程序图 3.1.2 确认编号是否存在部分程序图如图 6 所示B=1输入 P 与 R 比 较R!=NUL L R!=HEA D R!=PR=R-NEXTR=NULLB=0B=1输入其他部分开始录入有无密码I=0退出确认密码 码I +主菜单Inext;while(a=1)q=(LNode *)malloc(sizeof(struct node);b=1;while(b=1)/*编码确认部分*/ printf(“输入编号:n“);scan

5、f(“%d“,r=head-next;while(r!=NULLif(r=NULL|r=head)b=0;else printf(“你输入的员工已录入,请重新输入。n“);b=1;printf(“输入姓名:n“);scanf(“%s“,printf(“输入性别:“);scanf(“%s“,printf(“输入基本工资:n“);scanf(“%d“,printf(“输入补贴工资:n“); scanf(“%d“,printf(“输入扣除工资:n“);scanf(“%d“,q-mon=q-bam+q-inm-q-dem; p-next=q;p=q;i+; printf(“是否输入另一个数据?n 输入

6、 1 继续录入,其他键退出“);scanf(“%d“,getchar();if(c=1) q-next=head; continue; else q-next=head; break; printlink(head); getchar(); meau(head); 3.2.2 排序模块的部分代码(起泡法) void paixu1(Link head)Link q,p,t;int m;q=head-next;p=q-next;t=(Link)malloc(sizeof(struct node);while(q-next!=head) while(p!=head)if(q-nump-num) t-

7、num=p-num;strcpy(t-nam,p-nam);strcpy(t-sex,p-sex);t-bam=p-bam;t-inm=p-inm;t-dem=p-dem;t-mon=p-mon;p-num=q-num;strcpy(p-nam,q-nam);strcpy(q-sex,q-sex);p-bam=q-bam;p-inm=q-inm;p-dem=q-dem;p-mon=q-mon;q-num=t-num;strcpy(q-nam,t-nam);strcpy(q-sex,t-sex);q-bam=t-bam;q-inm=t-inm;q-dem=t-dem;q-mon=t-mon; p

8、=p-next;q=q-next;p=q-next; printf(“排序成功!n“);printf(“是否输出数据,输入 1 输出,其他键退出“);scanf(“%d“,if(m=1)printlink(head); getchar(); meau(head); 3.2.3 姓名查找的部分代码 void namesearch(Link head) char y20;char c20=“;char b20=“;Link p;int t;int a=1;p=head-next;printf(“请输入所要查询的姓名:n“);scanf(“%s“,t=strlen(y);strncpy(c,y,t)

9、; while(p!=head) strncpy(b,p-nam,t);if(strcmp(c,b)=0)if(a=1)printf(“编号 姓名 性别 基础工资 扣除工资 补贴工资 实 际工资n“);a=0; printf(“%2d%10s%6s%11d%12d%12d%12dn“,p-num,p- nam,p-sex,p-bam,p-dem,p-inm,p-mon);p=p-next; if(a=1)printf(“没有该学生数据。“); getchar(); meau(head); 第四章 调试与操作说明 4.1 系统调试 经多次调试修改,程序大体上无错误,可以实现基本要求。 4.2 操

10、作使用说明 第一次进系统因无密码文件直接进入界面,请建立新密码。同样因无要处 理 的数据第一次请录入链表,并选择是否保存,保存后的下次使用可以直接读入 保存的数据。 再选择相关函数执行相应的操作,按系统给出的提示使用,程序大体上满 足要求,但可以在某些细节还有不完善之处,若带来不便还请原谅。 第五章 课程设计与总结体会 5.1 对开发的过程归纳与总结 程序的设计调式过程,需要分析总结,画图分析可以相对容易直观的找出 错误。 5.2 在过程中遇到的技术难点与解决方法 1 因为主函数是以 mimaqueren 函数开始现再确认是否进入菜单,所以执行 完每个函数默认返回主函数后都会出现确认密码部分,

11、很不方便 解决方法,要在每个功能函数最末加上 meau 函数,使其不直接返回,而是 跳转到菜单函数。 2 与姓名模糊查询有关的函数,总是显示的无数据 查书知是因为 char 后几位字符不定,循环判定结果一直是无数据,对字符 串初始为空解决。 3 数据录入插入模块中对同号的的判定,起初做时用了不少方法,返回不 行,递归不行,测返回也不行,最后想的办法是把输入编号放入循环里,有同 号继续循环,无同号退出继续往下输入。作完后老师讲了更方便的算法,不过 没有使用。4 还有一部分错误错的很不应该,如在编写程序时,并没有把参数传进, 这 种错误系统并不提示错误位置,浪费不少时间找错纠正。5 最不该的问题,

12、使用 VC 读入时总提示内存出错,检查好久找不出错误, 用 TC 执行却可以,程序不同,结果不同,以后要注意 5.3 程序尚存问题 不能实现对读入和保存路径的输入,某些程序虽然可以完成其功能,但并 不是最优化最有效率的算法,界面太粗糙。排序的算法,每一项都是相似的算 法,若用类的知识,倒是能解决,只是在本环境下不能实现。 5.4 进一步开发的见解与建议 算法不够优化,界面不很美观,功能不很完善。可以在这些方面完善程序, 在某些功能上还不全面,还有优化提升的空间 5.5 收获与体会通过这次的设计,练习熟悉了 C 语言的编译,有更深的体会和了解。对传 值传址更为熟悉,对单链表的相关算法,如键立,插

13、入,删除等也基本掌握, 最基本的单链算法是后期学习的基础,调试程序作分析找错误时,画图细心分 析每步的进程,提高了逻辑能力和思维能力。也经过这次的练习找到自已很多 的不足,好的编程习惯很重要,可以节省不少的调试时间。 对基础的掌握很重要,这样可不不必时时查资料,向同学咨询。计算机编 程要多多练习,这样才可以熟悉,可以加深记忆,提高编程的能力。 在编程的过程中,有时因某些错误难以改正而无奈,可以调试改正好后的 成就感也让人愉悦。 大学的生活很松散,在编程过程中会觉得时间过得很快,专心的做一件事, 也让人充实。 这也是学习计算机的乐趣所在,以后会加深在计算机方面的学习。 设计确实有些辛苦,但苦中也

14、有乐,在如今单一的理论学习中,很少有机 会能有实践的机会,但我们可以,而且设计也是一个团队的任务,一起的工作 可以让我们有说有笑,相互帮助,配合默契,多少人间欢乐在这里洒下,大学 里一年的相处还赶不上这一个月的合作,我感觉我和同学们之间的距离更加近 了;我想说,确实很累,但当我们看到自己所做的成果时,心中也不免产生兴 奋;同时我认为我们的工作是一个团队的工作,团队需要个人,个人也离不开 团队,必须发扬团结协作的精神.在计算机上的工作基本没有一人能完成的,写 程序时只有一个人知道原理是远远不够的,必须让每个合作伙伴都知道,否则 一个人的错误,就有可能导致整个工作失败。团结协作是我们实习成功的一项

15、 非常重要的保证。而这次练习也正好锻炼我们这一点,这也是非常宝贵的。 这也是学习计算机的乐趣所在,以后会加深在计算机方面的学习。通过这 次课程设计使我懂得了理论与实际相结合是很重要的,只有理论知识是远远不 够的,只有把所学的理论知识与实践相结合起来,从理论中得出结论,从而提 高自己的实际动手能力和独立思考的能力。在设计的过程中遇到问题,可以说 得是困难重重,这毕竟第一次做的,难免会遇到过各种各样的问题,同时在设 计的过程中发现了自己的不足之处,对以前所学过的知识理解得不够深刻,掌 握得不够牢固。 计算机是门注重实践的学科,要学好计算机必须要多多的实践。这次练习 让我更明白了这点。通过这次课程设计使我懂得了理论与实际相结合是很重要 的,只有理论知识是远远不够的,只有把所学的理论知识与实践相结合起来, 从理论中得出结论,从而提高自己的实际。 经过这段时间的上机实践学习,使我对 c 语言有了更进一步的认识和了解, 要想学好它要重在实践,要通过不断的上机操作才能更好地学习它,通过实践, 我也发现我的好多不足之处,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 行业资料 > 其它行业文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号