- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
C语言歌曲信息管理系统
C语言课程设计
学 号:
班级序号:
姓 名:
指导教师:
成 绩:
C语言程序设计报告
C语言课程设计的目的:?
高级语言课程设计是学习完《高级语言程序设计》课程后进行的一次全面的综合性上机实验。其目的在于为同学提供了一个既动手又动脑,独立实践的机会,将课本上的理论知识和实际有机的结合起来,锻炼同学的分析解决实际问题的能力。提高学生适应实际,实践编程的能力。
题目:歌曲信息管理系统
需求分析:制作一个歌曲信息管理系统
使之有以下功能
1 歌曲信息包括歌曲名,作者,演唱者,发行年月等。
2 可以对歌曲信息进行输入,删除,浏览。
3 可以查询歌曲名,作者,演唱者信息。
4 可以提供按作者显示功能。
5 用文件存储信息。
三 总体设计
根据分析,整个系统可设计为以下4个模块:
信息输入模块,删除模块,浏览模块。查找模块。
歌曲信息管理系统设计
信息输入 信息删除 信息浏览,信息查找
信息输入:依次按顺序结构输入歌曲名,作者,演唱者,发行年月。
信息删除:根据输入的歌曲名,作者,演唱者等一项可以删除对应的其他项
信息浏览:可以直接浏览歌曲,作者,演唱者,发行年月。
信息查找:可以查找歌曲,作者等。
四 详细设计
1 主函数
主函数的设计提供数据输入、数据处理和数据输出以及各种函数的调用。其中各功能模块用菜单方式选择;另外,部分菜单也可以写成函数。
( 流程图如下图1 )
[程序]
void main()
{
void menu();
void function1();
void function2();
void function3();
void function4();
menu();
return;
}
( 图 1 )
2 各功能模块设计
(1)输入模块
信息输入时直接按顺序结构(如图2)输入:
void input()
{ char ch;
n=0;
if((fp=fopen(song.txt,a))==NULL)
{
printf(cant open file song.txt);
exit(0);
}
printf(Please input a record:);
for(n=0;n=50;)
{
printf(\nrecord %d:\n歌名:,n+1);
gets(song[n].name);
printf(\n时间:);
gets(song[n].year);
printf(\n作者:);
gets(song[n].author);
printf(\n歌手:);
gets(song[n].singer);
n++;
printf(继续输入吗? (y/n)\n);
ch=getchar();getchar();
if(ch==n)
break;
}
fwrite(song,sizeof(song[0]),n,fp);
fclose(fp);
}
( 图 2)
删除模块:
用户输入要删除的信息,如输入歌曲名 ,根据歌曲名找到其他记录并删除。
[程序]
/******************删除模块*************************/
void del()
{
int m,k=0;
long a;
char namekey[8];
printf(\n请输入您要删除的歌曲名:);
scanf(%s,namekey);
if((fp=fopen(song.txt,r+))==NULL)
{
printf(\n不能打开该文件!);
exit(0);
}
while(!feof(fp))
{
a=ftell(fp);
fscanf(fp,%6s %5s %5s %10s\n,song[n].name,song[n].year,song[n].author,song[n].singer);
if(strcmp(namekey,song[n].name)==0)
{
k=1;
bre
文档评论(0)