95992828九五至尊2

动用C语言版本的数据库制作1个学生成绩管理种类

四月 5th, 2019  |  882828九五至尊手机版

#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#define TRUE 1
#define FLASE -1
typedef struct student
{
 char name[10];
 char sex[10];
 char Class[10];
 float mark;
 int age;
 struct student *prev;
 struct student *next;
}node;/*概念结构体*/
char strbuf[40];
char strmark[10];
FILE *fp;/*概念只想文件的指针*/
//将链表中的学生音讯导入到文本在那之中
void save(node *h)
{
 char
strbuf[40];//定义2个字符串来囤积链表学生消息中的姓名,性别,班级。
    char strmark[10];//用来存款和储蓄链表中的学生的年纪,成绩。
 if((fp=fopen(“D:\\student.txt”,”wb”))==NULL)//判断是或不是打开文本。!!!!注意你要储存音信的公文最佳添加在除C盘之外的地点
 {
  printf(“不能够开拓该文件”);
 }
 node *p=h;
 while(p)//通过判断p是或不是为空
 {
  strcpy(strbuf,p->name);//将链表中的名字赋值给字符串。
  strcat(strbuf,”.”);
  strcat(strbuf,p->sex );
  strcat(strbuf,”.”);
  strcat(strbuf,p->Class );
  strcat(strbuf,”.”);
  itoa(p->age ,strmark,十);//将int类型装换为字符串类型
  strcat(strbuf,strmark);
  strcat(strbuf,”.”);
  itoa(p->mark ,strmark,10);
  strcat(strbuf,strmark);
  fwrite(strbuf,壹,strlen(strbuf),fp);//写入到文本个中
  fwrite(“\r\n”,1,strlen(“\r\n”),fp);//换行
  p=p->next ;
 }
  fclose(fp); //一定要关张文本不然将保留失败
  printf(“保存成功\n”);
}
//打字与印刷链表中的音讯
void print(node *h)
{
 if (h == NULL)
 {
  return ;
 }
 else
 {
  node *p = h;
  while (p)
  {
   printf(“姓名:%s    年龄:%d   性别:%s   班级:%s   成绩:%.0f\n”,
p->name, p->age,p->sex,p->Class ,p->mark );
   p = p->next;
  }
  printf(“\n”);
 }
}
//用来将文件中的音信重新插入到链表个中
node *creat3(node *h,char strstuname[10],char sex[10],char
class1[10] ,int age,float mark)
{
 node *p = (node *)malloc(sizeof(node));
 memset(p, 0, sizeof(node));
 strcpy(p->name ,strstuname);
 strcpy(p->sex ,sex);
 strcpy(p->Class ,class1);
 p->age=age;
 p->mark =mark;
 p->next = NULL;
 p->prev = NULL;
 if (h == NULL)
  {
   h = p;
  }
   else
  {
   p->next = h;
   h->prev = p;
   h = p;
  }
  /*printf(“姓名:%s    年龄:%d   性别:%s   班级:%s   成绩:%f\n”,
p->name, p->age,p->sex,p->Class ,p->mark );*/
 /* return h; */
}
//将文件中的音讯添加到链表个中
node* load(node *h)
{
 char strbuf[50]={0};
    char strstuname[10]={0};
    char strstusex[10]={0};//为了来储存文本中的消息。
    char strstuage[10]={0};
    char strstuclass[10]={0};
    char strstumark[10]={0};
if((fp=fopen(“D:\\student.txt”,”rb”))==NULL)
 {
  printf(“无法打开该公文”);
  exit(0);
 } 
 node *p=h;
 int ncount=0;
 int j=0;
 while(NULL !=fgets(strbuf,50,fp))
 {
  int i=0;
  ncount=0;
  j=0;
  
  for(i=0;strbuf[i]!=’\r’;i++)
  {
   if(0==ncount)
   {
    strstuname[i]=strbuf[i];
    if(strbuf[i]==’.’)
    {
     strstuname[i]=’\0′;
     ncount++;
    }
   }
   else if(1==ncount)
   { 
    strstusex[j]=strbuf[i];
    j++;
    if(strbuf[i]==’.’)
    {
     strstusex[j-1]=’\0′;
     ncount++;
     j=0;     
    }
    
   }
   else if(2==ncount)
   {
    strstuclass[j]=strbuf[i];
    j++;
    if(strbuf[i]==’.’)
    {
     strstuclass[j-1]=’\0′;
     ncount++;
     j=0;
    }
   }
   else if(3==ncount)
   {
    
    strstuage[j]=strbuf[i];
    j++;
    if(strbuf[i]==’.’)
    {
     strstuage[j-1]=’\0′;
     ncount++;
     j=0;
    }    
   }
   else
   {
    strstumark[j]=strbuf[i];
    j++;
   }
  }
  h=creat叁(h,strstuname,strstusex,strstuclass,atoi(strstuage),atoi(strstumark));//调用前面包车型大巴插入函数来插入到链表当中
 }
  printf(“导入成功\n”);
 fclose(fp);//!!!!一定要记得关闭文本
return h;
}
//从头顶插入
node  *creat(node *h)

 while (1)
 {
   node *p = (node *)malloc(sizeof(node));
   if (p == NULL)
    return h;
    memset(p, 0, sizeof(node)); 
    printf(“请输入学生的岁数:”);
    int age;
    scanf(“%d”,&age );
    if (age==0)
   {
    break;
   }
   p->age =age;
    printf(“请输入学生的名字:”);
    scanf(“%s”,&p->name);
    printf(“请输入学生的性别:”);
    scanf(“%s”,p->sex );
    printf(“请输入学生的班级:”);
    scanf(“%s”,&p->Class );
    printf(“请输入学生的大成”);
    scanf(“%f”,&p->mark ) ;
   p->next = NULL;
   p->prev = NULL;
   if (h == NULL)
   {
    h = p;
   }
   else
   {
    p->next = h;
    h->prev = p;
    h = p;
   }  
 }
 return h;
}
//从后面部分插入
node *creat1(node *h)
{
 while (1)
 {
   node *p = (node *)malloc(sizeof(node));
   if (p == NULL)
    return h;
   memset(p, 0, sizeof(node));
    printf(“请输入学生的岁数:”);
    int age;
    scanf(“%d”,&age );
    if (age==0)
   {
    break;
   }
   p->age =age;
    printf(“请输入学生的名字:”);
    scanf(“%s”,&p->name);
    printf(“请输入学生的性别:”);
    scanf(“%s”,p->sex );
    printf(“请输入学生的班级:”);
    scanf(“%s”,&p->Class );
    printf(“请输入学生的成就”);
    scanf(“%f”,&p->mark ) ;
   p->next = NULL;
   p->prev = NULL;
   if (h == NULL)
   {
    h = p;
   }
   else
   {
    node *q = h;
    while (q->next)
    {
     q = q->next;
    }
    q->next = p;
    p->prev = q;
   }
 }
 return h;
}
node* sort(node *h)
{
  int temp;
 if(h==NULL)
 {
  return h;
 }
  else if(h->next==NULL)
 {
  return h;
 }
 else
 {
  node *p=h;
  node *i;
  node *q;
  /*node *p;*/
  while(p)
  {
   for(i=p;i->next!=NULL;i=i->next)
   {
    q=i->next ;
    if(i->age<q->age )
    {
     temp=q->age ;
     q->age =i->age ;
        i->age=temp;  
    }
   }
   p=p->next;
  }
  return h;
 }
}
//从尾巴部分打字与印刷
void Lastprint(node *h)
{
 if(h==NULL)
 {
     return ;
 }
 else
 {
  node *p=h;
  while(p)
  {
  printf(“姓名:%s    年龄:%d   性别:%s   班级:%s   成绩:%.0f\n”,
p->name, p->age,p->sex,p->Class ,p->mark );
  p=p->prev ; 
  }
  printf(“\n”);
 }
}
//通过成就查询
void select1(node *h,float mark)
{
 if(h==NULL)
 {
  return ;
 }
 else
 {
  node *p=h;
  while(p)
  {
   if(p->mark==mark)
   {
       printf(“姓名:%s    年龄:%d   性别:%s   班级:%s   成绩:.0%f\n”,
p->name, p->age,p->sex,p->Class ,p->mark );
      }
   p=p->next ;
  }
  printf(“\n”);
 }
}
//通过姓名修改
void update1(node *h,char name[10])
{
 float mark;
 if(h==NULL)
 {
  return ;
 }
 else
 {
  node *p=h;
  while(p)
  {
   if(strcmp(p->name ,name)==0)
   {
    printf(“请输入要修改的大成”);
    scanf(“%f”,&mark);
       p->mark =mark;
    printf(“姓名:%s    年龄:%d   性别:%s   班级:%s   成绩:%.0f\n”,
p->name, p->age,p->sex,p->Class ,p->mark );
   }
   p=p->next;
  }
 }
}
node *Sort(node *h)
{
 float temp;
 if(h==NULL)
 {
  return h;
 }
  else if(h->next==NULL)
 {
  return h;
 }
 else
 {
  node *p=h;
  node *i;
  node *q;
  /*node *p;*/
  while(p)
  {
   for(i=p;i->next!=NULL;i=i->next)
   {
    q=i->next ;
    if(i->mark<q->mark )
    {
     temp=q->mark ;
     q->mark  =i->mark;
        i->mark=temp;  
    }
   }
   p=p->next;
       }
 }
}
//排序之后的实际业绩打字与印刷
void SortMark(node *h)
{
  if (h == NULL)
 {
  return ;
 }
 else
 {
  node *p = h;
  while (p)
  {
   printf(“%f\n”,p->mark );
   p = p->next;
  }
  printf(“\n”);
 }
}
//通过姓名查找
void select2(node *h,char name[10])
{
 if(h==NULL)
 {
  return ;
 }
 else
 {
  node *p=h;
  while(p)
  {
   if(strcmp(p->name ,name)==0)
   {
     printf(“姓名:%s    年龄:%d   性别:%s   班级:%s   成绩:%.0f\n”,
p->name, p->age,p->sex,p->Class ,p->mark );
   }
   p=p->next ;
  }
  printf(“\n”);
   printf(“查找无这个人”);
 }
}
//销毁链表
void destroy(node *h)
{
 if (h == NULL)
 {
  return;
 }
 else
 {
  node *p=h;
  while (p)
  {
   free(p);
   p = p->next;
  }
 }
}
//通过姓名来删除链表中的音讯
int delete1(node **h, char name[10])
{
 if (*h == NULL)
 {
  return -1 ;
 }
 else
 {
  node *p = *h;
  while (p)
  {
   if (strcmp(p->name,name)==0)
   {
    if (p ==*h)
    {
     *h =(*h)->next;
     (*h)->prev = NULL;
     free(p);
    }
    else if (p->next == NULL)
    {
     p->prev->next = NULL;
     free(p);
    }
    else
    {
     p->prev->next = p->next;
     p->next->prev = p->prev;
     free(p);
    }
   }
   p = p->next;
  }
  return -1;
 }
}
int main(int argc , char* argv[])
{
node *h=NULL; 
 int temp;
 int da=1;
 printf(”                      
**************************  初叶学生成绩管理种类  
***********************\n”);
 printf(”                      
************************** (一)
从链表的头顶插入  
***********************\n”);
 printf(”                      
************************** (二)
从链表的尾巴插入  
***********************\n”);
 printf(”                      
************************** (三)
打字与印刷链表中的音信  
***********************\n”);
 printf(”                      
************************** (4)
通过姓名查找学生的音信并打字与印刷**********************\n”);
 printf(”                      
************************** (5)
通过姓名修改学生的战表:***********************\n”);
 printf(”                      
************************** (陆)
通过姓名删除学生的信息:***********************\n”);
 printf(”                      
************************** (七)
成绩从大到小的排序:***********************\n”);
 printf(”                      
************************** (八)      
写入到文本      
:***********************\n”);
 printf(”                      
************************** (玖)      
从文本中读出      
:***********************\n”);
 printf(”                      
************************** (拾)      
退出程序       :***********************\n”);
 while(da)
 {
 printf(“请输入数字来抉择成效\n”);
 scanf(“%d”,&temp);
 switch(temp)
 {
  case 1: h=creat(h);
  break; 
  case 2: creat1(h);
  break;  
  case 3:  Print(h);
  break;
  case 4: char name [10];
 printf(“请输入要查询的名字”);
 scanf(“%s”,&name);
 select2(h,name);
 break;
 case 5:
  printf(“请输入要修改的学习者战绩的名字”);
 char name1 [10];
 scanf(“%s”,&name1);
 update1(h,name1);
 Print(h);
 break ;
 case 6:
 printf(“请输入要刨除学生的音讯”);
  char name2[10];
  scanf(“%s”, &name2);
  delete1(&h, name2);
  Print(h);
  break ;
  case 7:
  Sort(h);
  SortMark(h);
  break;
  case 8:
   save(h);
   break;
   case 9:
    h=load(h);
    break;
  case 10:
   da=0;
   break;
 }
}
}

#include<stdio.h>
#include<string.h>
#include<stdlib.h>
#define TRUE 1
#define FLASE -1
typedef struct student
{
 char name[10];
 char sex[10];
 char Class[10];
 float mark;
 int age;
 struct student *prev;
 struct student *next;
}node;/*概念结构体*/
char strbuf[40];
char strmark[10];
FILE *fp;/*概念只想文件的指针*/
//将链表中的学生消息导入到文本个中
void save(node *h)
{
 char
strbuf[40];//定义贰个字符串来囤积链表学生音讯中的姓名,性别,班级。
    char strmark[10];//用来囤积链表中的学生的岁数,战表。
 if((fp=fopen(“D:\\student.txt”,”wb”))==NULL)//判断是不是打开文本。!!!!注意你要储存消息的文件最棒添加在除C盘之外的地点
 {
  printf(“不可能打开该公文”);
 }
 node *p=h;
 while(p)//通过判断p是或不是为空
 {
  strcpy(strbuf,p->name);//将链表中的名字赋值给字符串。
  strcat(strbuf,”.”);
  strcat(strbuf,p->sex );
  strcat(strbuf,”.”);
  strcat(strbuf,p->Class );
  strcat(strbuf,”.”);
  itoa(p->age ,strmark,拾);//将int类型装换为字符串类型
  strcat(strbuf,strmark);
  strcat(strbuf,”.”);
  itoa(p->mark ,strmark,10);
  strcat(strbuf,strmark);
  fwrite(strbuf,壹,strlen(strbuf),fp);//写入到文本个中
  fwrite(“\r\n”,1,strlen(“\r\n”),fp);//换行
  p=p->next ;
 }
  fclose(fp); //一定要关门文本不然将保存战败
  printf(“保存成功\n”);
}
//打字与印刷链表中的音讯
void print(node *h)
{
 if (h == NULL)
 {
  return ;
 }
 else
 {
  node *p = h;
  while (p)
  {
   printf(“姓名:%s    年龄:%d   性别:%s   班级:%s   成绩:%.0f\n”,
p->name, p->age,p->sex,p->Class ,p->mark );
   p = p->next;
  }
  printf(“\n”);
 }
}
//用来将文件中的音讯重新插入到链表个中
node *creat3(node *h,char strstuname[10],char sex[10],char
class1[10] ,int age,float mark)
{
 node *p = (node *)malloc(sizeof(node));
 memset(p, 0, sizeof(node));
 strcpy(p->name ,strstuname);
 strcpy(p->sex ,sex);
 strcpy(p->Class ,class1);
 p->age=age;
 p->mark =mark;
 p->next = NULL;
 p->prev = NULL;
 if (h == NULL)
  {
   h = p;
  }
   else
  {
   p->next = h;
   h->prev = p;
   h = p;
  }
  /*printf(“姓名:%s    年龄:%d   性别:%s   班级:%s   成绩:%f\n”,
p->name, p->age,p->sex,p->Class ,p->mark );*/
 /* return h; */
}
//将文件中的消息添加到链表个中
node* load(node *h)
{
 char strbuf[50]={0};
    char strstuname[10]={0};
    char strstusex[10]={0};//为了来储存文本中的音信。
    char strstuage[10]={0};
    char strstuclass[10]={0};
    char strstumark[10]={0};
if((fp=fopen(“D:\\student.txt”,”rb”))==NULL)
 {
  printf(“无法开拓该文件”);
  exit(0);
 } 
 node *p=h;
 int ncount=0;
 int j=0;
 while(NULL !=fgets(strbuf,50,fp))
 {
  int i=0;
  ncount=0;
  j=0;
  
  for(i=0;strbuf[i]!=’\r’;i++)
  {
   if(0==ncount)
   {
    strstuname[i]=strbuf[i];
    if(strbuf[i]==’.’)
    {
     strstuname[i]=’\0′;
     ncount++;
    }
   }
   else if(1==ncount)
   { 
    strstusex[j]=strbuf[i];
    j++;
    if(strbuf[i]==’.’)
    {
     strstusex[j-1]=’\0′;
     ncount++;
     j=0;     
    }
    
   }
   else if(2==ncount)
   {
    strstuclass[j]=strbuf[i];
    j++;
    if(strbuf[i]==’.’)
    {
     strstuclass[j-1]=’\0′;
     ncount++;
     j=0;
    }
   }
   else if(3==ncount)
   {
    
    strstuage[j]=strbuf[i];
    j++;
    if(strbuf[i]==’.’)
    {
     strstuage[j-1]=’\0′;
     ncount++;
     j=0;
    }    
   }
   else
   {
    strstumark[j]=strbuf[i];
    j++;
   }
  }
  h=creat叁(h,strstuname,strstusex,strstuclass,atoi(strstuage),atoi(strstumark));//调用前面包车型客车插入函数来插入到链表当中
 }
  printf(“导入成功\n”);
 fclose(fp);//!!!!一定要记得关闭文本
return h;
}
//从头顶插入
node  *creat(node *h)

 while (1)
 {
   node *p = (node *)malloc(sizeof(node));
   if (p == NULL)
    return h;
    memset(p, 0, sizeof(node)); 
    printf(“请输入学生的岁数:”);
    int age;
    scanf(“%d”,&age );
    if (age==0)
   {
    break;
   }
   p->age =age;
    printf(“请输入学生的名字:”);
    scanf(“%s”,&p->name);
    printf(“请输入学生的性别:”);
    scanf(“%s”,p->sex );
    printf(“请输入学生的班级:”);
    scanf(“%s”,&p->Class );
    printf(“请输入学生的大成”);
    scanf(“%f”,&p->mark ) ;
   p->next = NULL;
   p->prev = NULL;
   if (h == NULL)
   {
    h = p;
   }
   else
   {
    p->next = h;
    h->prev = p;
    h = p;
   }  
 }
 return h;
}
//从尾部插入
node *creat1(node *h)
{
 while (1)
 {
   node *p = (node *)malloc(sizeof(node));
   if (p == NULL)
    return h;
   memset(p, 0, sizeof(node));
    printf(“请输入学生的年纪:”);
    int age;
    scanf(“%d”,&age );
    if (age==0)
   {
    break;
   }
   p->age =age;
    printf(“请输入学生的名字:”);
    scanf(“%s”,&p->name);
    printf(“请输入学生的性别:”);
    scanf(“%s”,p->sex );
    printf(“请输入学生的班级:”);
    scanf(“%s”,&p->Class );
    printf(“请输入学生的成就”);
    scanf(“%f”,&p->mark ) ;
   p->next = NULL;
   p->prev = NULL;
   if (h == NULL)
   {
    h = p;
   }
   else
   {
    node *q = h;
    while (q->next)
    {
     q = q->next;
    }
    q->next = p;
    p->prev = q;
   }
 }
 return h;
}
node* sort(node *h)
{
  int temp;
 if(h==NULL)
 {
  return h;
 }
  else if(h->next==NULL)
 {
  return h;
 }
 else
 {
  node *p=h;
  node *i;
  node *q;
  /*node *p;*/
  while(p)
  {
   for(i=p;i->next!=NULL;i=i->next)
   {
    q=i->next ;
    if(i->age<q->age )
    {
     temp=q->age ;
     q->age =i->age ;
        i->age=temp;  
    }
   }
   p=p->next;
  }
  return h;
 }
}
//从尾部打字与印刷
void Lastprint(node *h)
{
 if(h==NULL)
 {
     return ;
 }
 else
 {
  node *p=h;
  while(p)
  {
  printf(“姓名:%s    年龄:%d   性别:%s   班级:%s   成绩:%.0f\n”,
p->name, p->age,p->sex,p->Class ,p->mark );
  p=p->prev ; 
  }
  printf(“\n”);
 }
}
//通过成绩查询
void select1(node *h,float mark)
{
 if(h==NULL)
 {
  return ;
 }
 else
 {
  node *p=h;
  while(p)
  {
   if(p->mark==mark)
   {
       printf(“姓名:%s    年龄:%d   性别:%s   班级:%s   成绩:.0%f\n”,
p->name, p->age,p->sex,p->Class ,p->mark );
      }
   p=p->next ;
  }
  printf(“\n”);
 }
}
//通过姓名修改
void update1(node *h,char name[10])
{
 float mark;
 if(h==NULL)
 {
  return ;
 }
 else
 {
  node *p=h;
  while(p)
  {
   if(strcmp(p->name ,name)==0)
   {
    printf(“请输入要修改的成就”);
    scanf(“%f”,&mark);
       p->mark =mark;
    printf(“姓名:%s    年龄:%d   性别:%s   班级:%s   成绩:%.0f\n”,
p->name, p->age,p->sex,p->Class ,p->mark );
   }
   p=p->next;
  }
 }
}
node *Sort(node *h)
{
 float temp;
 if(h==NULL)
 {
  return h;
 }
  else if(h->next==NULL)
 {
  return h;
 }
 else
 {
  node *p=h;
  node *i;
  node *q;
  /*node *p;*/
  while(p)
  {
   for(i=p;i->next!=NULL;i=i->next)
   {
    q=i->next ;
    if(i->mark<q->mark )
    {
     temp=q->mark ;
     q->mark  =i->mark;
        i->mark=temp;  
    }
   }
   p=p->next;
       }
 }
}
//排序之后的成绩打字与印刷
void SortMark(node *h)
{
  if (h == NULL)
 {
  return ;
 }
 else
 {
  node *p = h;
  while (p)
  {
   printf(“%f\n”,p->mark );
   p = p->next;
  }
  printf(“\n”);
 }
}
//通过姓名查找
void select2(node *h,char name[10])
{
 if(h==NULL)
 {
  return ;
 }
 else
 {
  node *p=h;
  while(p)
  {
   if(strcmp(p->name ,name)==0)
   {
     printf(“姓名:%s    年龄:%d   性别:%s   班级:%s   成绩:%.0f\n”,
p->name, p->age,p->sex,p->Class ,p->mark );
   }
   p=p->next ;
  }
  printf(“\n”);
   printf(“查找无这个人”);
 }
}
//销毁链表
void destroy(node *h)
{
 if (h == NULL)
 {
  return;
 }
 else
 {
  node *p=h;
  while (p)
  {
   free(p);
   p = p->next;
  }
 }
}
//通过姓名来删除链表中的音讯
int delete1(node **h, char name[10])
{
 if (*h == NULL)
 {
  return -1 ;
 }
 else
 {
  node *p = *h;
  while (p)
  {
   if (strcmp(p->name,name)==0)
   {
    if (p ==*h)
    {
     *h =(*h)->next;
     (*h)->prev = NULL;
     free(p);
    }
    else if (p->next == NULL)
    {
     p->prev->next = NULL;
     free(p);
    }
    else
    {
     p->prev->next = p->next;
     p->next->prev = p->prev;
     free(p);
    }
   }
   p = p->next;
  }
  return -1;
 }
}
int main(int argc , char* argv[])
{
node *h=NULL; 
 int temp;
 int da=1;
 printf(”                      
**************************  初阶学生成绩管理种类  
***********************\n”);
 printf(”                      
************************** (一)
从链表的头顶插入  
***********************\n”);
 printf(”                      
************************** (二)
从链表的尾巴部分插入  
***********************\n”);
 printf(”                      
************************** (3)
打字与印刷链表中的消息  
***********************\n”);
 printf(”                      
************************** (4)
通过姓名查找学生的音讯并打字与印刷**********************\n”);
 printf(”                      
************************** (5)
通过姓名修改学生的成就:***********************\n”);
 printf(”                      
************************** (六)
通过姓名删除学生的消息:***********************\n”);
 printf(”                      
************************** (7)
战绩从大到小的排序:***********************\n”);
 printf(”                      
************************** (八)      
写入到文本      
:***********************\n”);
 printf(”                      
************************** (玖)      
从文本中读出      
:***********************\n”);
 printf(”                      
************************** (十)      
退出程序       :***********************\n”);
 while(da)
 {
 printf(“请输入数字来挑选效用\n”);
 scanf(“%d”,&temp);
 switch(temp)
 {
  case 1: h=creat(h);
  break; 
  case 2: creat1(h);
  break;  
  case 3:  Print(h);
  break;
  case 4: char name [10];
 printf(“请输入要查询的名字”);
 scanf(“%s”,&name);
 select2(h,name);
 break;
 case 5:
  printf(“请输入要修改的学员成绩的名字”);
 char name1 [10];
 scanf(“%s”,&name1);
 update1(h,name1);
 Print(h);
 break ;
 case 6:
 printf(“请输入要去除学生的音讯”);
  char name2[10];
  scanf(“%s”, &name2);
  delete1(&h, name2);
  Print(h);
  break ;
  case 7:
  Sort(h);
  SortMark(h);
  break;
  case 8:
   save(h);
   break;
   case 9:
    h=load(h);
    break;
  case 10:
   da=0;
   break;
 }
}
}

图片 1图片 2

图片 3图片 4

相关文章

Your Comments

近期评论

    功能


    网站地图xml地图