歌曲信息管理系统

上传人:lis****210 文档编号:126729341 上传时间:2022-07-28 格式:DOCX 页数:14 大小:203.54KB
收藏 版权申诉 举报 下载
歌曲信息管理系统_第1页
第1页 / 共14页
歌曲信息管理系统_第2页
第2页 / 共14页
歌曲信息管理系统_第3页
第3页 / 共14页
资源描述:

《歌曲信息管理系统》由会员分享,可在线阅读,更多相关《歌曲信息管理系统(14页珍藏版)》请在装配图网上搜索。

1、题目要求该系统应该具有下列功能:(1)歌曲信息包括歌曲名,作者,演唱者,发行年月等。(2)可以对歌曲信息进行输入,删除,浏览。(3)可以查询歌曲名,作者,演唱者信息。(4)可以提供按作者分组显示功能。(5)用文件存储信息。输入要求:应用程序运行后,在屏幕上显示一个菜单。用户根据需求,选定相应的操作项目。进入 每个操作后,根据应用程序的提示信息,从键盘输入相应的信息。输出要求:要求用应用程序应用后,要在屏幕上显示一个菜单。用户输入数据后,要给出清晰明确 的提示信息,包括输入的数据内容、格式及结束方式等。提示:设计时可采用结构体和一维数组类型,用来保存学生证的内容。总体设计本题可采用结构体类型来保

2、存学生证的内容,学生信息应该使用数组来进行过程中使用 指针链表使其更方便。根据要求,此程序需要设计以下几个模块:添加新歌曲模块,删除指定歌曲板块,修改 指定歌曲显示,查询指定歌曲模块。因此,可知其主要模式为:歌曲管理流程图具体设计1、主函数歌曲的信息有歌曲名,作者,演唱者,发行年月。struct songcharcharcharchar因此用一个数组来保存学生证信息:name25;writer25;singer25;year25;sN,s1,s2,s3;menu()int n;printf(t*MENU*nn);printf(tttprintf(tttprintf(tttprintf(tttp

3、rintf(tttprintf(tttprintf(tttprintf(tttprintf(tttprintf(ttt/输入菜单1. Enter recordn);2. List the filen);3.Search recordn);4. Delete a recordn);5. Add a recordn);6. save the filen);7. Read the filen);8. Display record on ordern);9.Sort record by writern);0.Exitn);/*输入记录*/*显示记录*/*查找记录*/*删除记录*/*插入记录*/*保存文

4、件*/*!卖文件*/*按序号显示记录*/*按作者排序*/*退出*/printf(nnt*n); doprintf(n Choice your number(0-9):);scanf(%d”,&n);while(n9);switch(n)case 1:length=enter();menu();break;case 2:list(length);break;case 3:search(length);break;case 4:length=delete(length);menu();break;case 5:length=add(length);menu();break;case 6:save(

5、length);break;case 7:read();break;case 8:display(length);break;case 9:sort(length);break;case 0:exit(0);/* 主函数 */main()menu();2、各功能模块设计(1) 输入模块输入到song中,各个元素依次输入【程序】int enter()/*输入记录*/int i;for(i=0;iN;i+)printf(n please input record or direct press Q to exit);printf(n Enter name:);scanf(%s”,&si.name)

6、;if(si.name0=Q&si.name1=0)break;printf( Enter writer:);scanf(%s”,&si.writer);printf( Enter singer:);scanf(%s”,&si.singer);printf( Enter year:);scanf(%s”,&si.year);printf(nname writer singer year n);printf(n);printf(%s, %s, %s, %sn”,si.name,si.writer,si.singer,si.year);printf(n);return i;(2) 显示记录模块【程

7、序】void list(int n)/*显示记录*/int i;printf(nnt*LIST*nn );printf( nname writer singer year n);printf(tn);for(i=0;in;i+)printf(%s,%s,%s, %sn”,si.name,si.writer,si.singer,si.year);printf(nnt*END*n);menu();(3) 查找模块【程序】void search(int n)/*查找记录*/int m,i;printf(n Search by:n);printf(n 1.name);printf(n 2.writer

8、);printf(n 3.singer);printf(n 0.back);doprintf(choice your number(0-3):);scanf(%d”,&m);while(m3);switch(m)case 1:printf(please enter name to search.n);break;case 2:printf(please enter writer to search.n);break;case 3:printf(please enter singer to search.n);break;case 0:menu();i=find(n,m);if(in-1)pri

9、ntf(not foundn);else printf(n name writer singer year n); printf(n);printf( %s,%s,%s, %sn”,si.name,si.writer,si.singer,si.year);printf(n);menu(); int find(int n,int b)int i;switch(b)case 1:scanf(%s”,s3.name);for(i=0;in;i+)if(strcmp(s3.name,si.name)=0) return i;break;case 2:scanf(%s”,s3.writer);for(i

10、=0;in;i+)if(strcmp(s3.writer,si.writer)=0) return i;break;case 3:scanf(%s”,s3.singer);for(i=0;in;i+)if(strcmp(s3.singer,si.singer)=0) return i;break;return i;(4)删除模块【程序】int delete(int n)/*删除记录*/char delete25;int i,j,p,ch;printf(n Delete by:n);printf(n 1.name);printf(n 2.writer);printf(n 3.singer);pr

11、intf(n 0.back);doprintf(choice your number(0-3):);scanf(%d”,&p);while(p3);switch(p)case 1:printf(please enter name to delete.n);break;case 2:printf(please enter writer to delete.n);break;case 3:printf(please enter singer to delete.n);break; case 0:return 0;i=find(n,p);if(in-1)printf(not found to del

12、ete n);elseprintf(n name writer singer year n);printf(n);printf(%s,%s,%s,%sn”,si.name,si.writer,si.singer,si.year);printf(n);printf(Are you sure to delete it?(1/0);scanf(%d”,&ch);if(ch=1)for(j=i+1;j=i;j-)strcpy(sj+1.name,sj.name);strcpy(sj+1.writer,sj.writer);strcpy(sj+1.singer,sj.singer);strcpy(sj+

13、1.year,sj.year);strcpy(si.name,s1.name);strcpy(si.writer,s1.writer);strcpy(si.singer,s1.singer);strcpy(si.year,s1.year);n+;return n;(6) 保存到文件/*保存文件*/int save(int n)int i;FILE*fp;if(fp=fopen(record.txt”,w)=NULL)printf(can not open filen);return NULL;printf(nSaving filen);for(i=0;i=0&an) fseek(fp,(a-2

14、)*sizeof(s),1); printf(n name writer singer year n); printf(n);printf( %s,%s,%s,%sn”,saT.name,saT.writer,saT.singer,sa-1.year); printf(n); else printf(no %d number record!n,a); fclose(fp); menu(); void sort(int n)/*按作者排序*/ int i,j; for(i=0;in-1;i+) for(j=i+1;j0) s1=si; si=sj; sj=s1;printf(n name wri

15、ter singer year n);printf(n);for(i=0;in;i+)printf( %s %s %s %sn”,si.name,si.writer,si.singe r,si.year);printf(n);printf(sort success!n);menu(); void menu()int n;printf(t*MENU*nn);printf(ttt1.Enter recordn);/*输入记录*/printf(ttt2.List the filen);/*显示记录*/printf(ttt 3.Search recordn);/*查找记录*/printf(ttt4.D

16、elete a recordn);/*删除记录*/printf(ttt5.Add a recordn);/*插入记录*/printf(ttt6.save the filen);/*保存文件*/printf(ttt7.Read the filen);/*读文件*/printf(ttt8.Display record on ordern);/*按序号显示记录*/printf(ttt9.Sort record by writern);/*按作者排序*/printf(ttt0.Exitn);/*退出*/printf(nnt*n);doprintf(n Choice your number(0-9):)

17、;scanf(%d”,&n);while(n9);switch(n)case 1:length=enter(s);break;case 2:list(length);break;case 3:search(length);break;case 4:length=delete(length);menu();break;case 5:length=add(length);menu();break;case 6:save(length);break;case 7:read();break;case 8:display(length);break;case 9:sort(length);break;c

18、ase 0:exit(0);运行结果e d: 我的文档桌面 D ebug Test 1 - txt - ese1.Enter record2 .List tlie f ile3 . Seaicli recoid4 . De lete a recoid5. Add a record6 . save tlie f i le7 -Be-ad tlie f ile8.Display record on order 9 - Sort re co rd h_y wr it e r 0-ExitClio ice (jour number : 1please input pecopd op dipect pp

19、ess Q to exitEntep name:boysEntep wpitep: m2ii Entep singep: in2in Enter yeai:1999name wiitei* singer yeai* hops:, m2m, m2m, 1999please input: Iecnid di* direct press Q to exit Entei* name :查找删除Clio oeFii_i.iTiijes* =添加g *土我的女档、桌面DebugText 1. txt. exe*| 一1- Enter record2- List the file3- Search reco

20、rd4- Delete a record5- Add a record6- save the file 7.Read the ile8- Display record on order9- Sort record by writer 0-ExitClio ice yonr numbei : 5please Input record or direct press Q to exitEnter name:girlEnter wr iter:bo by Enter singer = bobv Enter year=2007nane writer singer yearkflil, boby, bo

21、by, 2007kilease input locate naneLd保存到文件。仁=0:1116:丁仁木1:1-1:我七-仁我仁.6 - sctue tlie f ile7- Read tlie file8- Display record on order 9 -Sort record Jb writerHI _ExitChcv iic e yciur1 n uurihe t =6Ingr File 曲JE 辱 LIC C 日 S S X X X X X X X X X XX 日 En t ei re c o id 2 _ L is t t lie f i le 2 - GesLicH i*

22、ecoxcl4 - De lete o. record5 .Add ci recoid6 - scive tlie f ile 7-Read tlie file8 -Displai/ record on order9- Sort record by writer H_EcitI-Ghijziict; waisr18 nuimibe:ir 日? 读取文件g d:的女若气桌DebugTeKt 1. txt. exe0_ExtChoice youi: numbeI* = 7name wtitet* singer spearniiiQim2mm2m26B1cf iilbobyhohi/2007 you

23、 have successed reading record fron file *XXXXXXXXXXXXXXX XX XX XX XX XX XXJcNEHU JNJNJNJHXHXHXHXHXHXHXHXHXHXH1- Enter record2- List the ile3- Search record4- Delete a record5 Odd m i*eroid6 _saue the file 7-Eead the f ile8 -DisplasF record on order9 - Sort record by writei 0-ExitXKXKXKXKXKXKXKXXNXN

24、XNXNXNXNJJJJJJJJJJJJ =按作者排序e *d: 我的文档、桌ffiVDebugzYText 1. txt. exeChoice y口lh* nunbe上,C09 =9name wiiteis in ge t*yearcj iilbobyboby2007niiiDin2nm2m1999SDit success?1 -Entet* tecoid 2-List the ile3 -Seatch tecord 4-Delete a record5 - Add a tecord G-saue the ile7-Read the ile8 -Display record on ordei* 9-Sort record by writer 0-ExitCIid ic e yo Lii n unbe i =总结通过这次C程序设计,我掌握了模块化设计方法,能够深入的理解结构化程序设计思想, 熟练运用结构化程序设计方法,提高了运用C语言进行程序设计的能力。

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!