欢迎来到天天文库
浏览记录
ID:56571664
大小:411.00 KB
页数:46页
时间:2020-06-28
《吉林大学 软件学院 C语言 课件.ppt》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、第八章表单数据组织—结构体8.1图书卡管理8.2保存图书卡——结构体作业:P1508.38.12练习:8.108.118.138.158.161§8.1图书卡管理2§8.1图书卡管理例8.1在某图书管理系统中,图书检索卡结构如图所示:书名:31个字符作者:15个字符语种:Chinese,English,Japanese,Spanish,Russian出版日期:年月日书号:类号序号摘要:255个字符编程序,从终端输入100张卡片保存起来;然后根据用户不断输入的书号,检索相应书名、作者名、语种、摘要,并输出,直到输入书号的类号为‘#’。3分析:(1)输入:输入100张卡片
2、,输入一张保存一张,用循环实现(2)检索:顺序检索(3)输出:问题:用什么数据结构保存卡片?4structbookcard{//检索卡结构体类型charname[32],author[16];enumclass_languagelanguge;structdatepublishingdate;structbooknono;charabstract[256];}groupcard[100];书名:31个字符作者:15个字符语种:Chinese,English,Japanese,Spanish,Russian出版日期:年月日书号:类号序号摘要:255个字符用结构体保存卡片
3、:使用结构体可以描述这一类由不同类型子数据项组成的数据。enumclass_language//语种枚举类型{Chinese,English,Japanese,Spaish,Russian};structdate{//日期结构体类型intyear,month,day;};structbookno{//书号结构体类型charcatalogue;intorder;};5#include#defineL3//#defineL100/*----------结构体类型定义----------*/enumclass_language{Chinese,Englis
4、h,Japanese,Spanish,Russian};structdate{intyear,month,day;};structbookno{charcatalogue;intorder;};完整代码:6structbookcard{charname[32],author[16];enumclass_languagelanguage;structdatepublishingdate;structbooknono;charabstract[256];}groupcard[L];/*定义结构体类型bookcard,同时声明全局数组groupcard*/类型定义:stru
5、ctbookcard{charname[32],author[16];enumclass_languagelanguage;structdatepublishingdate;structbooknono;charabstract[256];};变量声明:structbookcardcard;structbookcardgroupcard[L];7/*---------函数原型------------*/structbookcardinputcard(void);//输入一张卡片voidinputbookno(structbookno*);//输入一个书号voidsea
6、rchbook(structbookno);//检索voidout_answer(structbookcard*);//输出检索结果8/*---------各函数定义------------*/voidmain()//主函数{inti;structbooknono1;for(i=0;i7、(&no1);//输入下一个书号}}9structbookcardinputcard(void)//函数定义:输入一张卡片{structbookcardcard;intk;printf("Newcard:");printf("Pleaseinputbookname:");scanf("%s",card.name);//gets(card.name);printf("Pleaseinputauthorname:");gets(card.author);//scanf("%s",card.author);printf("Pleasechoos
7、(&no1);//输入下一个书号}}9structbookcardinputcard(void)//函数定义:输入一张卡片{structbookcardcard;intk;printf("Newcard:");printf("Pleaseinputbookname:");scanf("%s",card.name);//gets(card.name);printf("Pleaseinputauthorname:");gets(card.author);//scanf("%s",card.author);printf("Pleasechoos
此文档下载收益归作者所有