C程序设计实训报告

上传人:人*** 文档编号:512225474 上传时间:2022-08-27 格式:DOC 页数:13 大小:80.50KB
返回 下载 相关 举报
C程序设计实训报告_第1页
第1页 / 共13页
C程序设计实训报告_第2页
第2页 / 共13页
C程序设计实训报告_第3页
第3页 / 共13页
C程序设计实训报告_第4页
第4页 / 共13页
C程序设计实训报告_第5页
第5页 / 共13页
点击查看更多>>
资源描述

《C程序设计实训报告》由会员分享,可在线阅读,更多相关《C程序设计实训报告(13页珍藏版)》请在金锄头文库上搜索。

1、 C+程序设计实训报告姓名: 班级: 学号:指导老师: 年 月一实训指导书1. 目的C+程序设计实训的目的是培养学生综合利用C+语言进行程序设计的能力。通过布置具有一定难度的程序设计题目,帮助学生熟悉程序编写,及时查究错误,独立完成,锻炼学生的分析问题、解决实际问题的能力。2. 设备及仪器每人一台微型计算机。3内容与步骤图书信息管理系统,使之能提供以下功能:1、 系统以菜单方式工作。2、 借书3、 还书4、 图书维护5、 读者维护6、 退出:包括返回主界面和退出系统等功能。设计要求:1) 模块化程序设计2) 锯齿型书写格式3) 上机调试通过能够较好的完成程序的主体设计,界面友好,功能齐全;程序

2、思路清晰易懂,能够充分利用所学工具实现各项操作。独立力完成实训报告,内容充实、观点明确、新颖。模块示意图:4. 参考资料C+程序设计谭浩强编 清华大学出版社C+语言程序设计 温秀梅 等 编 清华大学出版社5. 注意事项独立完成任务;遵守纪律,不上机时,一定要在教室自习;评分标准平时上机表现;实训报告的质量6思考题如何进一步完善本系统?7实训报告的内容要求1封面2. 实训指导书3. 源程序文件4. 小结二源程序文件#include#include#include#includestruct books_list char author20; /*作者名*/ char bookname20; /*

3、书名*/ char publisher20; /*出版单位*/ char pbtime15; /*出版时间*/ char loginnum10; /*登陆号*/ float price; /*价格*/ char classfy10; /*分类号*/ struct books_list * next; /*链表的指针域*/; struct books_list * Create_Books_Doc(); /*新建链表*/void InsertDoc(struct books_list * head); /*插入*/void DeleteDoc(struct books_list * head ,

4、 int num);/*删除*/void Print_Book_Doc(struct books_list * head);/*浏览*/void search_book(struct books_list * head); /*查询*/void info_change(struct books_list * head);/*修改*/void save(struct books_list * head);/*保存数据至文件*/*新建链表头节点*/struct books_list * Create_Books_Doc() struct books_list * head; head=(struc

5、t books_list *)malloc(sizeof(struct books_list); /*分配头节点空间*/ head-next=NULL; /*头节点指针域初始化,定为空*/ return head; /*保存数据至文件*/void save(struct books_list * head) struct books_list *p; FILE *fp; p=head; fp=fopen(data.txt,w+); /*以写方式新建并打开 data.txt文件*/ fprintf(fp,n); /*向文件输出表格*/ fprintf(fp,登录号 书 名 作 者 出版单位 出版

6、时间 分类号 价格 n); fprintf(fp,n); /*指针从头节点开始移动,遍历至尾结点,依次输出图书信息*/ while(p-next!= NULL) p=p-next; fprintf(fp,%-6.6s%-10.10s%-10.10s%-10.10s%-12.12s%-6.6s%.2f n,p-loginnum,p-bookname,p-author,p-publisher,p-pbtime,p-classfy,p-price); fprintf(fp,n); fclose(fp); printf( 已将图书数据保存到 data.txt 文件n);/*插入*/void Inser

7、tDoc(struct books_list *head) /*定义结构体指针变量 s指向开辟的新结点首地址 p为中间变量*/ struct books_list *s, *p; char flag=Y; /*定义flag,方便用户选择重复输入*/ p=head; /*遍历到尾结点,p指向尾结点*/ while(p-next!= NULL) p=p-next; /*开辟新空间,存入数据,添加进链表*/ while(flag=Y|flag=y) s=(struct books_list *)malloc(sizeof(struct books_list); printf(n 请输入图书登陆号:)

8、; fflush(stdin); scanf(%s,s-loginnum); printf(n 请输入图书书名:); fflush(stdin); scanf(%s,s-bookname); printf(n 请输入图书作者名:); fflush(stdin); scanf(%s,s-author); printf(n 请输入图书出版社:); fflush(stdin); scanf(%s,s-publisher); printf(n 请输入图书出版时间:); fflush(stdin); scanf(%s,s-pbtime); printf(n 请输入图书分类号:); fflush(stdi

9、n); scanf(%s,s-classfy); printf(n 请输入图书价格:); fflush(stdin); scanf(%f,&s-price); printf(n); p-next=s; /*将新增加的节点添加进链表*/ p=s; /*p指向尾节点,向后移*/ s-next=NULL; printf( 添加成功!); printf(n 继续添加?(Y/N):); fflush(stdin); scanf(%c,&flag); printf(n); if(flag=N|flag=n) if(flag=Y|flag=y); save(head); /*保存数据至文件*/ return

10、;/*查询操作*/void search_book(struct books_list *head) struct books_list * p; char temp20; p=head; if(head=NULL | head-next=NULL) /*判断数据库是否为空*/ printf( 图书库为空!n); else printf(请输入您要查找的书名: ); fflush(stdin); scanf(%s,temp); /*指针从头节点开始移动,遍历至尾结点,查找书目信息*/ while(p-next!= NULL) p=p-next; if(strcmp(p-bookname,tem

11、p)=0) printf(n图书已找到!n); printf(n); printf(登录号: %stn,p-loginnum); printf(书名: %stn,p-bookname); printf(作者名: %stn,p-author); printf(出版单位: %stn,p-publisher); printf(出版时间: %stn,p-pbtime); printf(分类号: %stn,p-classfy); printf(价格: %.2ftn,p-price); if(p-next=NULL) printf(n查询完毕!n); return; /*浏览操作*/ void Print_Book_Doc(struct books_list * head) struct books_list * p; if(head=NULL | head-next=NULL) /*判断数据库是否为空*/ printf(n 没有图书记录! nn); return; p=head; printf(

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

当前位置:首页 > 医学/心理学 > 基础医学

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