课程设计报告(本科)课程:高级语言课程设计学号:姓名:班级:教师:时间:计算机科学与技术系功能上有对职工信息的增加,删除,浏览,查询,修改等简单的功能. 使用说明及运行实例1.运行程序,进入职工信息管理系统的主菜单:图1:进入主菜单界2.输入数字“1”进行录入职工信息:图2:录入职工信息3.输入“y”返回主菜单(界面同图1)。
4.输入“2”浏览职工信息:图3:浏览职工信息5.输入“y”后继续,输入“3”进行查询职工信息:图4:按职工号查询职工信息5:按学历查询职工信息图6:按电话号码查询职工信息6.进入主菜单,输入“4”进行删除职工信息:图7:按姓名删除职工信息图8:按职工号删除职工信息7.进入主菜单输入“5”进行添加职工信息:图9:添加职工信息8.进入主菜单输入“6”进行修改职工信息:图10:按姓名修改职工信息图11:按职工号修改职工信息9.进入主菜单输入”7”退出职工信息管理系统:图12:退出系统优点是:基本实现了程序的多功能,对与查询职工信息提供了三种方法,对与修改和删除职工信息提供了两种方法,功能多种多样。
旗帜变量的使用也是优点之一;这个程序用到了的结构体,整个程序简单,易懂。
缺点是:保存职工信息有限,程序段比较臃长。
设计体会与建议:通过这次的课程设计,我更加了解C语言,学会更好的使用C语言函数调用和结构体等,把学过的知识运用于实践中,而不仅仅停留于对课本的单纯理解;这次设计也让我知道我懂的太少,要学习的东西还有很多。
想完成一项功能就要用很复杂的语句去实现,所以整个程序变的很长,复杂,但是结构体,数组,指针等的灵活运用又可使程序变的易懂。
另外,团队的合作也是成功的一部分!在编写代码时一开始没有运用有意义的函数名和变量,结果找起来和修改好麻烦,也使别人看不懂。
在整个课程设计中,我认为最重要的就是耐心和细心。
细心,就是在编写过程中注意拼写,仔细编写程序;耐心,就是程序编译中出现很多错误的时候能够耐心去修改,只有这样,才能很好的完成程序。
虽然在整个过程中出现了不少错误,但最终还是圆满完成了,此次程序设计的经历让我学到了太多,以前好多不懂的也都理解了。
也学会了作为大学生我们也应该学会不仅从课堂上学习知识,还应该学会自学。
附录:<> 标准输入输出函数库<> 字符串函数库<>{; 职工号[20]; 姓名; 性别; 年龄[30]; 学历; 工资[30]; 家庭住址[20]; 联系电话}[100]; 定义一个结构体() 函数主体{(); 菜单函数(); 录入函数( m); 保存文件函数(); 浏览函数(); 删除函数(); 按姓名删除函数(); 按职工号删除函数(); 添加函数(); 查询函数(); 按职工号码查询函数(); 按学历查询函数(); 按号码查询函数(); 修改函数(); 按员工号修改函数(); 按姓名修改函数;a;();("请选择你需要操作的步骤(17):\n");("");{(n>=1<=7){1;;}{0;("您输入有误,请重新选择!");}}(0);(1){(n){1(" ◆◆◆输入职工信息◆◆◆\n")("\n")();2(" ◆◆◆浏览职工信息◆◆◆\n")("\n")();3(" ◆◆◆查询职工信息◆◆◆\n")("\n")();4(" ◆◆◆删除职工信息◆◆◆\n")("\n");del();5(" ◆◆◆添加职工信息◆◆◆\n")("\n")();6(" ◆◆◆修改职工信息◆◆◆\n")("\n")();7(0);;}();("\n");("是否继续进行(y n):\n");("");('y'){1;(""); 清屏(); 调用菜单函数("请再次选择你需要操作的步骤(17):\n");("");("\n");}(0);}}() 菜单函数{(" ************欢迎进入职工信息管理系统**********\n"); (" 1.录入职工信息");(" 2.浏览职工信息\n");(" 3.查询职工信息");(" 4.删除职工信息\n");(" 5.添加职工信息");(" 6.修改职工信息\n");(" 7.退出\n");(" ********************谢谢使用******************\n"); ("\n");("\n");}() 录入函数{;("请输入需要创建信息的职工人数(1100):\n");("");(0<){("请输入职工号:");(""[i]);("请输入姓名: ");(""[i]);();("请输入性别(女男): ");(""[i]);("请输入年龄: ");(""[i]);("请输入学历: ");(""[i]);("请输入工资: ");(""[i]);("请输入住址: ");(""[i]);("请输入电话: ");(""[i]);("\n");}("\n创建完毕!\n");(m);( m) 保存文件函数{i;*;((("",""))){(" \n");(0);}(0<) 将内存中职工的信息输出到磁盘文件中去(([i]( ),1)1)(" \n");();}() 导入函数{*;0;((("",""))){(" \n");(0);}{{([i]( ),1);;}(()0);}();(1)循环过程中跳出循环时i自动加一,所以要减去一}() 浏览函数{();(" 职工号姓名性别年龄学历工资住址电话\n");(0<) 为输入部分的职工人数(" \n"[i][i][i],[i][i][i][i][i]);}() 删除函数{;{("\n按职工号删除请按1; 按姓名删除请按2; 进入主函数请按3\n");("");(t>=1<=3){1;;}{0;("您输入有误,请重新选择!");}}(0);(1){(t){1("按职工号删除\n")();2("按姓名删除\n")();3();;}}}() 按姓名删除函数{;[20];("\n 原来的职工信息:\n");(); 调用浏览函数("\n");("请输入要删除的职工的姓名:\n");("");(10<){(([i])0){("\n已找到此人,原始记录为:\n");(" 职工号姓名性别年龄学历工资住址电话\n");(" \n"[i][i][i],[i][i][i][i][i]);("\n确实要删除此人信息请按1,不删除请按0\n");("");(1){(<1){([j][1])(12)把2指向的字符串复制到1中去[j][1];[j][1];[j][1];([j][1]);[j][1];([j][1]);([j][1])把下一员工的信息复制到上一个员工信息的位置中去}0;}}}() 取逻辑反,及01;("\n对不起,查无此人!\n");("\n 浏览删除后的所有职工信息:\n");(m); 调用保存函数(); 调用浏览函数("\n不在删除请按0, 返回删除菜单请按1,继续按姓名删除请按2\n"); ("");{0();1:del();2;;}}() 按职工号删除函数{();;;("\n 原来的职工信息:\n");(); 调用浏览函数("\n");("请输入要删除的职工的职工号:\n");("");(10<){([i]){("\n已找到此人,原始记录为:\n");(" 职工号姓名性别年龄学历工资住址电话\n");(" \n"[i][i][i],[i][i][i][i][i]);("\n确实要删除此人信息请按1,不删除请按0\n");("");(1){(<1){([j][1])(12)把2指向的字符串复制到1中去[j][1];[j][1];[j][1];([j][1]);[j][1];([j][1]);([j][1])把下一员工的信息复制到上一个员工信息的位置中去}0;}}() 取逻辑反,及01;("\n对不起,查无此人!\n");("\n 浏览删除后的所有职工信息:\n");(m); 调用保存函数(); 调用浏览函数("\n不在删除请按0,返回删除菜单请按1,继续按职工号删除请按2\n"); ("");(t){0();1:del();2;;}}() 添加函数{*;n;0;i;();("\n 原来的职工信息:\n");();("\n");("","a");("请输入想增加的职工数:\n");("");(<()){("\n 请输入新增加职工的信息:\n");("请输入职工号: ");(""[i]);("\n");("请输入姓名: ");(""[i]);();("请输入性别(女男): ");(""[i]);("请输入年龄: ");(""[i]);("请输入学历: ");(""[i]);("请输入工资: ");(""[i]);("请输入住址: ");(""[i]);("请输入电话: ");(""[i]);("\n");1;("已增加的人数:\n");("\n");}("\n添加完毕!\n");;("\n浏览增加后的所有职工信息:\n");("\n");(m);();();}()查询函数{;{("\n按职工号查询请按1; 按学历查询请按2; 按电话号码查询请按3;进入主函数请按4\n");("");(t>=1<=4){1;;}{0;("您输入有误,请重新选择!");}(0);(1){(t){1("按职工号查询\n")();2("按学历查询\n")();3("按电话号码查询\n")();4();;}}}() 按职工号码查询函数{;;();("请输入要查找的职工号:\n");("");(0<)([i]){("\n已找到此人,其记录为:\n");(" 职工号姓名性别年龄学历工资住址电话\n");(" \n"[i][i][i],[i][i][i][i][i]);;}()("\n对不起,查无此人\n");("\n");("不在查询请按0,返回查询函数请按1,继续查询职工号请按2\n");("");(t){0();2: ;;}}() 按职工号码查询函数{[30];0;();("请输入要查找的学历:\n");("");(0<)(([i])0){("\n已找到,其记录为:\n");(" 职工号姓名性别年龄学历工资住址电话\n");(" \n"[i][i][i],[i][i][i][i][i]);;}()("\n对不起,查无此人\n");("\n");("不在查询请按0,返回查询函数请按1,继续查询学历请按2\n");("");(t){0();1();2;;}}() 按号码查询函数{[20];i, t;();("请输入要查找的电话号码:\n");(0<)(([i])0){("\n已找到此人,其记录为:\n");(" 职工号姓名性别年龄学历工资住址电话\n");(" \n"[i][i][i],[i][i][i][i][i]);;}()("\n对不起,查无此人\n");("\n");("不在查询请按0;返回查询函数请按1,继续查询电话号码请按2\n");("");(t){0();1();2;;}}() 修改函数{;{("\n按职工号修改请按1; 按姓名修改请按2; 进入主函数请按3\n");("");(t>=1<=3){1;;}{0;("您输入有误,请重新选择!");}}(0);{(t){1("按职工号修改\n")();2("按姓名修改\n")();3();;}}}() 按员工号修改函数{;[20];;;[30];;[30];[20];;();("\n 原来的职工信息:\n");(); 调用浏览函数("\n");("请输入要修改的职工的员工号:\n");("");(10<){([i])比较两个字符串,{("\n已找到此人,原始记录为:\n");(" 职工号姓名性别年龄学历工资住址电话\n");(" \n"[i][i][i],[i][i][i][i][i]);("\n确实要修改此人信息请按1 ; 不修改请按0\n");("");(1){("\n需要进行修改的选项\n 1.职工号2.姓名3.性别4.年龄5.学历6.工资7.住址8.电话\n");("请输入你想修改的那一项序号:\n");("");(c>8<1)("\n选择错误,请重新选择!\n");}0;}}(1)("\n对不起,查无此人!\n");{(c) 因为当找到第i个职工时语句后i自加了1,所以下面的应该把改后的信息赋值给第1个人{1("职工号改为: ");("");[1];;2("姓名改为: ");("");([1]);;3("性别改为: ");();("");[1];;4("年龄改为: ");("");[1];;5("学历改为: ");("");([1]);;6("工资改为: ");("");[1];;7("住址改为: ");("");([1]);;8("电话改为: ");("");([1]);;}("\n");("\n是否确定所修改的信息?\n 是请按1 ; 不,重新修改请按2: \n"); ("");}(2);("\n浏览修改后的所有职工信息:\n");("\n");(m);();("\n 不在修改请按0, 返回修改函数请按1, 继续修改职工号码请按2\n");("");(t){0();1();2;;}}() 按姓名修改函数{;[20];;;[30];;[30];[20];;();("\n 原来的职工信息:\n");(); 调用浏览函数("\n");("请输入要修改的职工的姓名:\n");("");(10<){(([i])0)比较两个字符串,{("\n已找到此人,原始记录为:\n");(" 职工号姓名性别年龄学历工资住址电话\n");(" \n"[i][i][i],[i][i][i][i][i]);("\n确实要修改此人信息请按1 ; 不修改请按0\n");("");(1){("\n需要进行修改的选项\n 1.职工号2.姓名3.性别4.年龄5.学历6.工资7.住址8.电话\n");("请输入你想修改的那一项序号:\n");("");(c>8<1)("\n选择错误,请重新选择!\n");}0;}}(1)("\n对不起,查无此人!\n");{(c) 因为当找到第i个职工时语句后i自加了1,所以下面的应该把改后的信息赋值给第1个人{1("职工号改为: ");("");[1];;2("姓名改为: ");("");([1]);;3("性别改为: ");();("");[1];;4("年龄改为: ");("");[1];;5("学历改为: ");("");([1]);;6("工资改为: ");("");[1];;7("住址改为: ");("");([1]);;8("电话改为: ");("");([1]);;}("\n");("\n是否确定所修改的信息?\n 是请按1 ; 不,重新修改请按2: \n"); ("");}(2);("\n浏览修改后的所有职工信息:\n");("\n");(m);();("\n 不在修改请按0, 返回修改函数请按1, 继续修改职工姓名请按2\n");("");(t){0();1();2;;}}。