C语言程序设计与数据结构》实训报告
课题名称:  通讯录管理系统 
    业:  软件技术(开发方向)   
    级:  软件  G083   
    号:    15         
    名:         
指导教师:               
2008    12   25 

       
课程设计目的………………………………………………… 1
课程设计题目………………………………………………… 1
课程设计报告内容…………………………………………… 1
结论…………………………………………………………… 10
结束语………………………………………………………… 11
参考书目……………………………………………………… 11
附录:(源程序清单)………………………………………… 12

考核、评价项目
考核内容
得分
实训评价
实训的平时考核  (30分)
出勤情况、实训态度、效率、协作精神。知识掌握情况、基本操作技能、知识应用能力、获取知识能力
系统整体功能设计(10分)
对通讯信录管理系统的功能设计完整、全面
文件的设计    (5分)
文件设计合理,有可扩展性。
登陆模块的设计  (5分)
能够实现用户登陆,并作出合理的安全设计,无登陆漏洞。
添加记录模块设计(5分)
能够正确添加记录并保存到文件中
删除记录模块设计(5分)
能够正确删除记录并修改文件中的数据
修改记录模块设计(5分)
能够正确地完成记录修改并保存数据
查记录模块设计(5分)
能够按照要求查到满足条件的记录
显示记录模块设计(5分)
能够正确的将数据全部显示
系统功能全部实现(5分)
系统整体效果、包括的模块的数量及每个模块具体的实现功能。是否完成前面设计的全部功能
实训文档        (20分)
表达能力、文档写作能力、文档的规范性
合计
教师评语:
                            成绩:
教师:
                                    年  月    日

一、课程设计题目
《商场销售管理管理系统》
二、实训目的
1)掌握结构化程序设计的基本方法,基本掌握面向对象程序设计的基本思路和方法。
2)掌握C++的基本概念和基础知识。
3)通过训练能够读懂较为复杂的C++语言源程序并具备基本C++语言程序设计的能力。
4)熟练掌握各种常用类的定义,继承,文件的应用,为更好的理解面向对象打下更好的基础。
5)通过实训,培养自己编写、调试、分析大型应用程序的能力。
6)掌握面向对象的基本原理,提高学生综合程序设计的能力。
7)培养自己独立解决问题,查资料的能力。同学之间相互帮助,相互交流,相互合作的团队精神。
8 培养自己良好的学习兴趣,独立的编程风格。
9 通过实训检查自己学习上的不足,达到熟练掌握C++语言的基本知识和技能。
 
三、课程设计报告内容
3.1功能要求
该系统运行在计算机实训报告DOS环境下,人机界面为命令行文本界面。完成的任务是对若干人的通信录信息进行管理,且数据保存到文件中。
实现的主要功能是:
登陆: 判断用户输入的密码正确性,并限制用户只能有三次机会输入,若超过则关闭计算机。
添加:增加一个或几个人的通信录信息。
删除:删除已输入的通信录信息。
查询:根据输入的姓名查通信录信息。
修改:根据输入的姓名修改通信录信息。
显示:输出所有通信录信息。
3.2 设计环境
所使用的语言采用标准C,开发工具可选用在DOS环境下的Turbo CWin-TC,也可在Windows环境下的C++Builder
3.3 数据结构
本系统是对通信录的信息进行管理,通信录记录的信息采用C的结构体数据类型描述,定义如下:
struct ren                          /*定义个人资料结构体类型*/
{  int num;                              /*编号*/
    char name[10];                        /*姓名*/
    char tel[12];                          /*电话号码*/
    char email[20];                        /*email地址*/
    char qq[12];                          /*QQ*/
    char address[50];                      /*住址*/
};
3.4实现方法及主要算法分析
1)口令设计模块:调用strcmp函数判断输入是否与密码正确。getch()读入一个字符不回显在屏幕上,不用回车结束。getchar()将字符输入到缓冲区直到输入回车才返回给系统。
调用system("shutdown  -s ")关闭计算机。
2)主界面的设计:主界面采用文本菜单的形式,各功能调用通过菜单进行选择。采用循环处理,以便执行完某项处理后,仍可选择其他项处理。在循环内先显示提示信息,然后读取用户输入,使用switch语句对用户的输入进行判断,分别调用相应的模块,当某模块结束后再次回到文本菜单,直到用户选择结束程序菜单,才退出循环,从而退出系统。
3 外部文件的类型:文件采用的二进制的文件,对文件的读写采用顺序文件的方式,并使用freadfwrite等函数对文件进行操作。
4)清屏函数:一般由上一级菜单屏幕进入下一级菜单屏幕或由下一级菜单屏幕返回上一级菜单屏幕都需要清除屏幕原来显示的内容。同时在调用程序的过程中,记录需要清屏的位置,然后修改代码,加入clrscr()函数清屏。
5)提示信息:一般的输入与输出需有相应的提示信息,以增加用户的交互性,增加输出的可读性,以帮助用户使用程序。
6)设置颜:textbackground()、textcolor()函数设置背景和前景颜
7)光标定位:gotoxy(列,行); 光标定位