c语言大作业学生管理完整(整理)(9)

2021-01-20 09:22

c

int i=0,len,k=-1/*k<0是为后面if判断用的*/。

system("cls")。

printf("\n 输入要删除的学生姓名: ")。scanf("%s",name)。

if((fp=fopen("student.dat","rb+"))==NULL)

{printf(" can't open file!\n")。exit(0)。}

while(!feof(fp))

{

删除:输入学生姓名,若该学生存在,则删除,并显示删除后余下的学生成绩信息void dele()

{

student xs[N]。

FILE *fp。

char name[10]。

int i=0,len,k=-1/*k<0是为后面if判断用的*/。

system("cls")。

printf("\n 输入要删除的学生姓名: ")。scanf("%s",name)。

if((fp=fopen("student.dat","rb+"))==NULL)

{printf(" can't open file!\n")。exit(0)。}

while(!feof(fp))

{

fread(&xs[i],sizeof(stu),1,fp)。

if(feof(fp)) break。

if(strcmp(xs[i].name,name)==0) k=i。

i++。

}

fclose(fp)。

//以下是删除后重新写文件

len=i。/*结构体数组上限*/

if(k>=0)/*k>0说明找到删除学生位置*/

{

if((fp=fopen("student.dat","wb+"))==NULL)

{printf(" can't open file!\n")。exit(0)。}

for(i=0。i<len。i++)

{

if(i==k) continue。/*从这个位置开始写入*/

fwrite(&xs[i],sizeof(stu),1,fp)。

}

fclose(fp)。

}

else {printf("\n 删除失败!!!\n")。getch()。} /*失败后重新返回菜单*/

printf("\n 按任意键返回主菜单 ")。

print()。

}

//菜单选择


c语言大作业学生管理完整(整理)(9).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:9基础会计第四章第一节复式记账概述 第二节借贷记账法

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: