C语言课程设计( 四 )


if(fp == NULL)
{
printf("\n无法打开此文件!\n\a");
exit(0);
}
system("cls");
printf("\n\n所有歌曲记录如下:\n\n");
printf("\n\n歌曲名 演唱者 作词 作曲 发行日期\n");
printf("****************************************\n");
for(i = 0; !feof(fp); i++)
{
fscanf(fp, "%s %s %s %s %s", so[i].name, so[i].singer, so[i].authors, so[i].compose, so[i].time);
if(feof(fp)) break;
printf("%s %s %s %s %s\n", so[i].name, so[i].singer, so[i].authors, so[i].compose, so[i].time);
}
fclose(fp);
n = i;
printf("\n请输入你要删除的歌名:\n");
scanf("%s", s);
for(i = 0; i < n; i++)
if(strcmp(s, so[i].name) == 0) //通过strcmp函数匹配到歌曲
{
k = 1; //k=1表示查找到了这首歌
break;
}
if(k == 0) //k=0即表示没有这首歌
printf("\n输入错误!\n\a");
else
{
j = i;
fp = fopen("E:\\zxx\\zxx.txt","w");
for(i = 0; i < n; i++)
if(i != j) //将除了这首歌之外的数据存储到文件中
{
fprintf(fp, "%s %s %s %s %s", so[i].name, so[i].singer, so[i].authors, so[i].compose, so[i].time);
fprintf(fp, "\n");
}
printf("\n删除成功!\n\a");
}
fclose(fp);
back();
}
//键盘输入函数
void input1(int i)
{
printf("请输入音乐的歌名、演唱者、作词、作曲、发行时间:\n");
scanf("%s %s %s %s %s", so[i].name, so[i].singer, so[i].authors, so[i].compose, so[i].time);
}
//文件输入函数
void input2()
{
FILE *fq = fopen("E:\\zxx\\zxxluru.txt","r");//此文件里为即将录入的信息
FILE *fp = fopen("E:\\zxx\\zxx.txt","a"); //此文件为存储数据的文件
int i;
if(fq == NULL)
{
printf("\n无法打开此文件!\n\a");
exit(0);
}
for(i = 0; !feof(fq); i++)
{
fscanf(fq, "%s %s %s %s %s", so[i].name, so[i].singer, so[i].authors, so[i].compose, so[i].time);
fprintf(fp, "%s %s %s %s %s", so[i].name, so[i].singer, so[i].authors, so[i].compose, so[i].time);
fprintf(fp, "\n");
if(feof(fp)) break;
}
fclose(fp);
fclose(fq);
}
//保存函数
void save(int n)
{
FILE *fp = fopen("E:\\zxx\\zxx.txt","a");
int i;
for(i = 0; i < n; i++)
{
fprintf(fp, "%s %s %s %s %s", so[i].name, so[i].singer, so[i].authors, so[i].compose, so[i].time);
fprintf(fp, "\n");
}
fclose(fp);
}
//返回函数
int back()
{
int n;
printf("\n\n是否返回主菜单?\n");
printf("***************\n");
printf("1、返回主菜单\n");
printf("2、退出程序\n");
scanf("%d", &n);
switch(n)
{
case 1: menu(); break;
case 2: return 0; break;
default:
printf("\n\a");
system("cls");
back();
break;
}
return 0;
}
最后哪里有不妥或者可以改善的也欢迎大家一起来讨论 , 希望大家的C语言课程设计都可以顺利完成!
找我获取编程视频课程+语法词汇解析+面试图库

特别声明:本站内容均来自网友提供或互联网,仅供参考,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。