高级语言设计报告 - 图文 联系客服

发布时间 : 星期五 文章高级语言设计报告 - 图文更新完毕开始阅读f615ba6125c52cc58bd6be75

2.各功能函数的数据流程图

*1.输入函数 *2.排序函数

输入学生信息 调出数据 学号,姓名,性别,各科成绩 选择排序方式 排序成功 写入文件 是否保存 N Y 存进文件 按任意键 返回菜单 *3.查找函数 *4.删除函数 调出数据 选择查找方式 调出数据 1.按学号2.按姓名 没此信息 查找成功 输入你要找的学号 删除成功 是否继续 返回主菜单 Y 继续删除 返回主菜单

*5.修改函数 *6.插入函数

调出数据 找出学号 选择修改项目 修改结果存入文件 返回菜单 *7.输出数据 3.重点设计及编码 重点设计是排序和删除 下面是部分源代码 Switch(way) { Case 1: for(p=head->next;p;p->next) { for(ptmp=p,q=p->next;q;q=q->next) { if(ptmp->mathmath) Ptmp=q; } If(ptmp!=p) { Wap=*ptmp; *ptmp=*p; *p=wap; Pwap=ptmp->next; Ptmp->next=p->next; p->next=pwap; } 选择按键 插入学生信息 写入文件 显示插入结果 选择按键 从文件中读取 显示数据

while(flag=='y') { p=p0->next; if(p==NULL) return NULL; printf(\请输入要删除的学号:\ scanf(\ getchar(); while(p!=NULL) { if(p->num==num) { p0->next=p->next; free(p); printf(\删除成功”); return q; } p0=p; p=p->next; } printf(\是否想继续删除?(y/n)\\n\ scanf(\

五.测试数据及运行结果 1.正常测试数据和运行结果

1.排序 2.查找

3.插入

2.异常测试数据及运行结果

(1)排序 (2)修改(结果没修改)

(3)删除失败

六.调试情况,设计技巧及体会 1.改进方案

合理之处:

程序整体结构整齐,简洁明了,主界面设计较为漂亮,视觉效果好,删除和插入模块都细化了。 不足之处:

我的程序模块功能基本齐全,但有些仍然存在功能欠缺。

(1) 第一次进入主界面时,要先创建数据,存进文件后,方可执行其他功能,否则直接退出

系统;

(2) 删除模块中如果我要删除一个不存的学号所对应的信息,它会无任何显示; (3) 还比如我的排序只是各科成绩单独排,没有总分排序; (4) 查找模块中输出的信息格式不美观; (5) 密码设置太过简单,没有用户名的设置。 (6) 没有清屏功能; 改进方案:

(1)添加一个信息提示,如果文件中没有数据时,再次返回主菜单;

(2)如果要使删除的信息不存在时直接显示,那么在删除函数中添加多条语句,当删除学号不存在时,输出该信息不存在或直接返回主菜单;

(3)排序中再定义一个SUM,将三科成绩加起来赋值给SUM,然后用同样的方法对SUM进行排序;

(4)将查找中的输出部分格式稍改一下就行;在密码设置时设置一个用户名,并写入语句使它能多次创建用户名和密码,然后设置一个要求,当密码密码输出三次以上错误时直接退出该系统;

(5)在主菜单中添加一个清屏函数;

2.体会

在这次的课题设计中,我学到了很多东西,虽然领悟还不是很深,但至少学会了自己动手。此次实验课题用到了结构体,链表,指针,文件等方面的知识,由于之前没弄太懂,所以在编程过程中出现各种问题,从而我真正体会到了什么叫做眼高手低,体会到了为了一个小小的错误而彻夜不眠的情形,体会到了解决问题后油然而生的自豪感和自信心,也体会到了能力与实力的悬殊。我从来没想过要写几百行,只想着做好完成就行了,但过程告诉我这些都不重要,重要的是要学会自己写,理清程序思路,应该怎样实现各个功能,要用到哪些知识,这些都要知道。在这个过程中我学会了主动找错误,并向同学请教程序中出现的问题,在解决问题的同时,也掌握了好多以前忽略的问题,懂得了问题的根源。从同学那也学会了很多快捷键的使用。C语言的本质是用所谓的代码直接解决问题,但根本是要用自己的思想解决问题,它只不是思想的一种体现。此次实验让我加深了对知识的运用和理解,而且自己也可以解决一些简单的问题了,同时也真真正正的认识到了自己知识的缺乏和能力的不足,在以后的学习过程中,我应该努力实践,严谨踏实,对知识要深入理解,耐心听取别人的意见,如果不会就及时请教老师或同学,弥补自己,而且要懂得对知识灵活运用,在该功课上取得更大进步。

七.参考文献

C语言程序设计(第二版)/王曙燕主编 C程序设计(第三版)/谭浩强主编

八.附录:

源代码(电子版)