基于C++的歌曲信息管理系统Word下载.docx
《基于C++的歌曲信息管理系统Word下载.docx》由会员分享,可在线阅读,更多相关《基于C++的歌曲信息管理系统Word下载.docx(15页珍藏版)》请在冰豆网上搜索。
本系统同时只能对一个数据文件进行相关操作,不能同时打开多个数据文件,其类似于单用户操作系统。
当用户读取学生数据后可对其进行显示,插入,删除,修改等相关操作。
用户在操作过程中可随时对当前文件进行保存到文件操作,以防止修改的数据丢失。
三、算法描述
1)主函数main():
调用增加、删除、修改、查找、显示等函数对歌曲信息进行处理;
2)增加函数add():
输入歌曲信息;
3)修改函数change():
修改指定歌曲信息;
4)查找函数search():
查找指定歌曲信息;
5)删除函数Del():
删除指定歌曲信息;
6)显示函数show():
显示所有歌曲信息;
四、程序结构
主菜单
增加歌曲
删除歌曲
修改歌曲
查找歌曲
显示歌曲
输入歌曲编号
输入歌曲名称
输入歌曲歌者
输入歌曲风格
按编号删除
歌曲编号
修改名称
修改歌者
修改风格
号
名
者
格
歌曲名称
歌曲歌者
歌曲风格
五、程序代码
#include<
iostream>
fstream>
string>
staticintlength;
usingnamespacestd;
//属性类
classMusic{
public:
friendclassMusicSystem;
private:
intnum;
stringname,singer,style;
};
//功能类
classMusicSystem{
MusicSystem();
~MusicSystem(){};
voidadd();
voidchange();
voidsearch();
voiddel();
voidshow();
Musicmusic;
MusicSystem:
:
MusicSystem(){};
//输入信息
voidMusicSystem:
add()
{
ofstreamoutfile("
music1.txt"
ios:
out);
if(!
outfile)
{
cerr<
<
"
openfileerror!
;
exit
(1);
}
while
(1)
cout<
--请输入歌曲信息:
--"
endl;
-请输入歌曲编号:
cin>
>
music.num;
if(music.num==0)break;
-请输入歌曲名称:
music.name;
-请输入歌曲演唱者:
music.singer;
-请输入歌曲风格:
music.style;
outfile<
"
music.num<
music.name<
music.singer<
music.style<
length++;
outfile.close();
}
//修改信息
change()
Musicmusic[100];
intnewnum;
stringnewname,newsinger,newstyle;
ifstreaminfile("
in);
infile)
for(inti=0;
i<
length;
i++)
{
infile>
music[i].num;
music[i].name;
music[i].singer;
music[i].style;
}
}
infile.close();
--请输入要修改的歌曲编号:
newnum;
if(newnum==0)break;
-请输入修改后的歌曲名称:
newname;
-请输入修改后的歌曲演唱者:
newsinger;
-请输入修改后的歌曲风格:
newstyle;
for(inti=0;
if(music[i].num==newnum)
{
music[i].name=newname;
music[i].singer=newsinger;
music[i].style=newstyle;
}
outfile<
music[i].num<
music[i].name<
music[i].singer<
music[i].style<
outfile.close();
修改完毕!
//查找信息
search()
intch;
infile>
music[i].num>
music[i].name>
music[i].singer>
--请输入查找方式:
1.按歌曲编号查找:
2.按歌曲名称查找:
3.按歌曲演唱者查找:
4.返回主菜单:
0.退出查找:
ch;
if(ch==4)break;
switch(ch)
case1:
while
(1)
cout<
请输入要查找歌曲编号:
cin>
music[100].num;
if(music[100].num==0)break;
for(inti=0;
{
if(music[i].num==music[100].num)
{
cout<
查找结果为:
歌曲编号歌曲名称歌曲演唱者歌曲风格"
}
}
查找完毕!
}break;
case2:
cout<
请输入要查找歌曲姓名:
cin>
music[100].name;
if(music[100].name=="
0"
)break;
for(inti=0;
{
if(music[i].name==music[100].name)
}
}break;
case3:
请输入你要查找的歌曲演唱者:
music[100].singer;
if(music[i].singer==music[100].singer)
default:
cout<
输入错误!
break;
//删除信息
del()
intdelnum;
cout<
请输入你要删除的歌曲编号:
delnum;
if(delnum==0)break;
if(music[i].num!
=delnum)
outfile<
删除完毕!
length--;
//显示信息
show()
music.num>
music.name>
music.singer>
//主函数
voidmain()
MusicSystema;
while
(1){
----------------欢迎使用歌曲信息管理系统----------------"
1.增加歌曲-"
2.删除歌曲-"
3.修改歌曲信息-"
4.查找歌曲-"
5.显示歌曲信息-"
--请选择:
if(ch==0)break;
case1:
a.add();
break;
case2:
a.del();
case3:
a.change();
case4:
a.search();
case5:
a.show();
default:
六、运行结果
输入
查找
删除
添加
保存到文件
读取文件
按作者排序
七、总结
通过这次C程序设计,我掌握了模块化设计方法,能够深入的理解结构化程序设计思想,熟练运用结构化程序设计方法,提高了运用C语言进行程序设计的能力。