studel.c

来自「这是一个学生成绩管理系统」· C语言 代码 · 共 120 行

C
120
字号
/*以下为删除程序文件xs_del.c的内容*/
/*以下为删除程序头文件*/
#include"stuhead.h"
void delete_rec(struct xscj stud[])
{
 int i,rec;
 char yn;
 printf("请输入要删除的记录号:");
 scanf("%d",&rec);
 if(rec<1||rec>recount)
 {printf("输入错误!\n");
  return;
 }
 scanf("%c",&yn);
 i=rec-1;
 printf("\n当前记录信息为:\n");
 printf("学号:%s\n",stud[i].xh);
 printf("姓名:%s\n",stud[i].xm);
 printf("数学:%d\n",stud[i].match);
 printf("计算机:%d\n",stud[i].computer);
 printf("英语:%d\n",stud[i].english);
 while(1)
 {
  printf("确定要删除当前数据吗?(Y/N):");
 scanf("%c",&yn);
 printf("\n");
 if(yn=='y'||yn=='Y'||yn=='n'||yn=='N')break;
 else printf("输入错误!\n");
 }
  if(yn=='Y'||yn=='y')
 {
  if(rec<recount)
   for(i=rec-1;i<recount;i++)
   stud[i]=stud[i+1];
   recount--;
   recno--;
   printf("记录已删除!\n");
  }
 }
/*以下定义按学号删除函数*/
void delete_xh(struct xscj stud[])
{int i,j,flag=0;
 char yn,num[20];
 printf("请输入要删除的学号:");
 scanf("%s",num);
 for(i=0;i<recount;i++)
  if(strcmp(num,stud[i].xh)==0)
  {flag=1;
   break;
  }
 if(!flag)
 {printf("学号为:%s的记录不存在!\n",num);
  return;
 }
 scanf("%c",&yn);
 printf("\n当前记录的信息为:\n");
 printf("学号:%s\n",stud[i].xh);
 printf("姓名:%s\n",stud[i].xm);
 printf("数学:%d\n",stud[i].match);
 printf("计算机:%d\n",stud[i].computer);
 printf("英语:%d\n",stud[i].english);
 while(1)
 {printf("确定要删除当前记录吗?(Y/N ):");
  scanf("%c",&yn);
  printf("\n");
  if(yn=='y'||yn=='Y'||yn=='n'||yn=='N')break;
  else printf("输入错误!\n");
 }
 if(yn=='Y'||yn=='y')
 {
  if(i<recount)
   for(j=i;j<recount-1;j++)
    stud[j]=stud[j+1];
  recount--;
  recno--;
  printf("记录已删除!\n");
 }
}
/*以下定义按姓名删除函数*/
void delete_xm(struct xscj stud[])
{int i,j,flag=0;
 char yn,name[8];
 printf("请输入要删除的姓名:");
 scanf("%s",name);
 for(i=0;i<recount;i++)
  if(strcmp(name,stud[i].xm)==0)
  {flag=1;
   break;
  }
  if(!flag)
 {printf("姓名为:%s 的记录不存在!\n");
  return;
 }
  
   printf("\n当前记录信息为:\n");
   printf("学号:%s\n",stud[i].xh);
   printf("姓名:%s\n",stud[i].xm);
   printf("数学:%d\n",stud[i].match);
   printf("计算机:%d\n",stud[i].computer);
   printf("英语:%d\n",stud[i].english);
  while(1)
 {printf("确定要删除当前记录吗?(Y/N ):");
  yn=getch();
  putchar(yn);
  printf("\n");
  if(yn=='y'||yn=='Y'||yn=='n'||yn=='N')break;
  else printf("输入错误!\n");
 }
  if(yn=='Y'||yn=='y')
 {
  if(i<recount)
   for(j=i;j<recount-1;j++)
    stud[j]=stud[j+1];
  recount--;
  recno--;
  printf("记录已删除!\n");
  }

 
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?