ImageVerifierCode 换一换
格式:DOCX , 页数:16 ,大小:41.88KB ,
资源ID:6348147      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/6348147.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(C语言课设.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

C语言课设.docx

1、C语言课设* 课 程 设 计 报 告 课程名称 高级语言程序设计 设计题目 * 专 业 * 班 级 学 号 姓 名 完成日期 2018年8月88 日 课 程 设 计 任 务 书设计题目: 好 友 信 息 管 理 软 件 设计内容与要求:内容:对好友信息进行管理,好友信息包括姓名、年龄、性别、住址、QQ、电话等。要求:(1) 系统以菜单方式工作(2) 好友信息输入功能(好友信息以文件形式保存) 。(3) 输出好友信息功能。(4) 查询功能,并设定子菜单,按姓名查询、按电话号码查询。(5) 对指定好友的信息进行删除和修改功能。指导教师:_ 年 月 日课 程 设 计 评 语 成绩: 指导教师:_ 年

2、 月 日【问题描述】假设自己有好友若干,首先确定输入好友的数量;然后按照姓名的排序依次输入各好友信息,并使用文件的操作保存信息于磁盘当中。在菜单中选择查询选项并且按照按姓名或者电话号码来查找好友信息。通过输入好友姓名来删除好友信息,或者修改好友信息的任意一项,如果认识了新的好友,可以添加好友信息。【基本要求】一、输入的形式和输入值的范围形式:用scanf输入自己好友的姓名、性别、年龄、住址、QQ、电话各项信息。输入一项信息按一次空格。最后输入完一个好友信息就按一次回车键,结束输入。输入值的范围:姓名为字符串型 20个字节char name20; 性别为字符串型,6个字节char sex6;年龄

3、为整 型, int age;住址为字符串型,50个字节char adress50;QQ号码为字符串型,15个字节 char QQ15;电话为字符串型,输入15位数字char tel15。二、输出的形式输出是以表格的形式输出,即表格的第一行是第一个好友的信息,第二行是第二个好友的信息,依次类推。三、程序所能达到的功能对好友信息进行管理,好友信息包括姓名、性别、年龄、住址、QQ、电话。(1) 系统以菜单方式工作(2) 好友信息输入功能(好友信息以文件形式保存) 。(3) 输出好友信息功能。(4) 查询功能,并设定子菜单,按姓名查询、按电话号码查询。(5) 对指定好友的信息进行删除和修改功能。【测试

4、数据】输入:设输入三个好友信息,好友姓名是字符串型。预期的输出结果:预期的输出结果请参见程序后的运行结果。【数据结构】好友信息的录入采取结构体数组的形式,每个结构体元素包含6个关键字段,其类型描述为:#include #include /包含字符串处理函数的头文件,可以直接调用现有的字符串处理的一系列函数#include /清屏功能struct haoyou /声明一个结构体类型struct haoyou char name20; /好友姓名为字符串 char sex6; /性别为字符串 int age; /年龄为整型char adress50; /地址为字符串 char QQ15; /QQ为

5、字符串char tel15; /电话为字符串【算法思想】利用结构体数组存放所有好友的信息,输入后,在输出时对好友信息表格式输出,然后可以执行子菜单按好友姓名对指定好友进行删除和修改功能。可以按照姓名或者电话号码对好友进行查询,然后表格化输出,如果有新的好友加入,还可以添加好友信息。【总体设计】主菜单包括:输入函数、浏览函数、修改函数、删除函数和查询函数。 图1-1好友信息管理总体设计【模块划分】一、主函数:main()显示系统工作菜单,罗列该系统的所有功能。声明所有将会调用的被调函数,再运用选择switch函数即可根据使用者所输入的功能代号进入对应的功能程序。并且对菜单做了一个循环,进行完一个

6、选择后,按回车键可进行清屏功能,把屏幕上除了菜单都清空,然后可以继续选择那些哪项任务,这样可以方便使用者使用,并且每一步都很清晰。以0退出系统。 二、输入函数:void add()在该程序的前面已经定义了一个结构体struct haoyou用来储存好友的所有信息,(姓名、性别、年龄、住址、QQ、电话)。定义一个n,n是输入好友的个数,依次输入好友的信息,直到输入个数为n时结束输入,好友个数控制循环。三、读取函数:int reads(haoyou stuN)读取好友文件中的内容,如若文件不存在则输出文件打开失败;否则,输出读取文件中的好友的各项信息,并显示出来。最后,关闭文件。四、保存函数:vo

7、id save(haoyou stuN,int n)当录入好友信息,更改好友信息或者删除某个好友信息时,总之当好友信息反生改变时,调用这个函数利用文件的操作将其信息保存在文件当中。五、输出函数:void output() 用for控制循环,依次将各个好友的各项信息输出。六、删除函数:void del()输入一个好友姓名,先找到这个好友的信息。如果输入的姓名在好友信息中,如果不在就输出“没有找到该好友信息!”,如果在就进行一下三个判断:(1)如果要删除的好友是第一个好友,就让第二个好友的地址等于head;(2)如果要删除的好友是最后一个好友,就让倒数第二个好友的覆盖最后一个;(3)如果输入的好友

8、不是以上两种情况,就让下一个好友的地址覆盖前一个好友的。七、修改函数:void change()输入要修改的好友姓名,找到该好友并且输出该好友的信息。然后屏幕上会出现好友信息的所有项目。选择后输入新的好友的各项信息信息,用它来覆盖原来的好友信息。最后调用保存函数保存在文件。八、查询函数:void search() 首先进入查询菜单,在这里可以选择按照姓名或者电话号码查询好友;输入需要查找的好友的姓名或电话,利用strcmp将所要查询信息与文件当中的信息比较,如果相同则输出;用for语句控制循环使每一个好友的信息与所查信息比较;如果要查询的好友的姓名或者电话在好友当中,就输出该好友信息,否则,就

9、输出查询的好友信息不存在,请重新输入。【源程序】#include#include#include#includeconio.h#define N 30typedef struct haoyou/*typedef是类型定义的意思。typedef struct 是为了使用这个结构体方便。 区别就在于使用时,是否可以省去struct这个关键字*/ char name20; char sex6; int age; char adress50; char QQ15; char tel15;haoyou;void menu();int reads(haoyou stuN); /读取void save(ha

10、oyou stuN,int n);/保存void add();/添加void del();/删除void search();/查询void change();/修改void output();/信息显示void main() int n; while(1)/*while(1)其中1代表一个常量表达式,他永远不会等于0。所以,循环会一直执行下去。除非你设置break等类似的跳出循环语句循环才会中止*/ menu(); scanf(%d,&n); switch(n) case 1: add();break; case 2: output();break; case 3: del();break;

11、case 4: change();break; case 5: search();break; case 0: printf(欢迎下次使用n);exit(0); /退出 程序 default: printf(tt *n); printf(tt 输入错误,请输入列表中存在的编号 n ); printf(tt *n); printf(ttt *n); printf(ttt 按任意键返回n); printf(ttt *n); getch();/*getch();或ch=getch(); 用getch();会等待你按下任意键,再继续执行下面的语句; 用ch=getch();会等待你按下任意键之后,把该

12、键字符所对应的ASCII码赋给ch,再执行下面的语句。*/ fflush (stdin);/用来清空输入缓存,以便不影响后面输入的东西 void menu() system(color 3f); /控制台颜色操作(前景加后景) system(cls); /*运行前清屏*/ printf(tt*好友信息管理系统*n);/*菜单选择*/ printf(tt_ 主 菜 单 _n); printf(tt| 1. 键入好友信息 |n); printf(tt| 2. 显示好友信息 |n); printf(tt| 3. 删除好友信息 |n); printf(tt| 4. 更改好友信息 |n); printf

13、(tt| 5. 查询好友信息 |n); printf(tt| 0. 退出程序 |n); printf(tt-n); printf(n); printf(ttt请输入您的选项(0-5):n); int reads(haoyou stuN) / 读取好友文件中的内容 FILE *fp; int i=0; if(fp=fopen(d:haoyou,r)=NULL) printf(文件打开失败!n); return 0; else for(i=0;!feof(fp);i+) fscanf(fp,%s %s %s %s %sn,stui.name,stui.sex,stui.adress,stui.QQ

14、,stui.tel); fclose(fp); return i;void save(haoyou stuN,int n) / 好友信息改变后更新文件 FILE *fp; int i=0; if(fp=fopen(d:haoyou,w)=NULL) printf(文件打开失败!n); return ; else for(i=0;in;i+) fprintf(fp,%s %s %s %s %sn,stui.name,stui.sex,stui.adress,stui.QQ,stui.tel); fclose(fp);void add()/*添加好友信息*/ FILE *fp; int n,i;

15、haoyou stu; if(fp=fopen(d:haoyou,a)=NULL) /如果文件已经存在,可以追加好友信息 if(fp=fopen(d:haoyou,w)=NULL) / 文件不存在时,创建新文件,输入好友信息 printf(文件打开失败!n); return; printf(*n); printf( 请输入要添加的好友数量,按回车键确认:n); printf(*n); scanf(%d,&n); for(i=1;i=n;i+) printf(*n); printf( 请输入第%d个好友的姓名、性别、地址、QQ号和电话用空格分开,并按回车键确认:n,i); printf(*n);

16、 scanf(%s %s %s %s %s,stu.name,stu.sex,stu.adress,stu.QQ,stu.tel); fprintf(fp,%s %s %s %s %sn,stu.name,stu.sex,stu.adress,stu.QQ,stu.tel); fclose(fp);void output() / 好友信息显示函数 haoyou stuN; int i,n; int num; n=reads(stu); printf(*所有的好友信息如下*nn); printf( 序号 姓名 性别 地址 QQ号 电话 n); printf(*n); for(i=0;in;i+)

17、 printf(%d |%-6s |%-6s| %-6s | %-6s | %-6s |n,i+1,stui.name,stui.sex,stui.adress,stui.QQ,stui.tel); printf(*n); printf(ttt-n); /对 检索的好友进行操作 printf(ttt* 1.删除该好友信息 *n); printf(ttt* 2.修改该好友信息 *n); printf(ttt* 3.退出本级菜单 *n); printf(ttt-n); printf(ttt输入要进行的操作n); scanf(%d,&num); switch(num) case 1: del();

18、break; case 2: change(); break; void del() /*好友信息删除函数*/ haoyou stuN; char ming20; int n,i,j; n=reads(stu); printf(*n); printf(请输入要删除信息的好友姓名,按回车键确认:n); printf(*n); scanf(%s,ming); for(i=0;i=n) printf(没有找到该好友信息!n); return; else for(j=i+1;jn;j+) stuj-1=stuj; save(stu,n-1); printf(删除成功!n);void change()

19、/好友信息更改 haoyou stuN; int n,i; char ming20; printf(*n); printf(请输入要更改信息的好友姓名,按回车键确认:n); printf(*n); scanf(%s,ming); n=reads(stu); for(i=0;i=n) printf(无此好友信息!); return; printf(*n); printf(请输入更改后好友的姓名、性别、地址、QQ号、电话,按回车键确认:n); printf(*n); scanf(%s %s %s %s %s,stui.name,stui.sex,stui.adress,stui.QQ,stui.t

20、el); save(stu,n);void name_search() / 按姓名对好友信息查询 haoyou stuN; char named20; int i,n; n=reads(stu); printf(*n); printf(请输入待查询的好友姓名,按回车键确认:n); printf(*n); scanf(%s,named); for(i=0;i=n) printf(没有找到该好友信息!n请重新输入n); return; else printf(*n); printf( 姓名 性别 地址 QQ号 电话 n); printf(*n); printf(n %s %s %s %s %sn,

21、stui.name,stui.sex,stui.adress,stui.QQ,stui.tel); printf(*n); void tel_search() / 按电话对好友信息查询 haoyou stuN; char phone20; int i,n; n=reads(stu); printf(*n); printf(请输入待查询的好友电话,按回车键确认: n); printf(*n); scanf(%s,phone); for(i=0;i=n) printf(没有找到该好友信息!n请重新输入n); return; else printf(*n); printf( 姓名 性别 地址 QQ号

22、 电话 n); printf(*n); printf(n %s %s %s %s %sn,stui.name,stui.sex,stui.adress,stui.QQ,stui.tel); printf(*n); void search() /按 条件进行查询int item;printf(ttt*n);printf(ttt* 1.按姓名查询 *n);printf(ttt* 2.按电话查询 *n);printf(ttt* 3.退出本菜单 *n);printf(ttt*n);printf(请选择查询项目:n);scanf(%d,&item);switch(item) case 1: name_search(); break;

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1