求大神帮忙把这个源程序结构体改为类(功能运行不变),价格好说。

#include<stdio.h>

#include<string.h>

struct book{

 int num;

 char name[21];

 char zuozhe[13];

 float danjia;

 char zhuangtai[5];

 char people[9];

 char sex[3];

 char banji[8];

 int xuehao;

} tushu[300];

 

struct student{

 char pe[9];

 char se[3];

 char banji[8];

 int xu;

 int jie;

 int jieshu[5];

} stu[100];

 

int i,j,k,s=0,sum=0;

 

void output(struct book tushu)

{printf("%6d",tushu.num);

 printf("%12s",tushu.name);

 printf("%8s",tushu.zuozhe);

 printf("%10.2f",tushu.danjia);

 printf("%6s",tushu.zhuangtai);

 if(strcmp(tushu.zhuangtai,"已借")==0){

    printf("%8s",tushu.people);

    printf("%5s",tushu.sex);

 printf("%10s",tushu.banji);

    printf("%4d",tushu.xuehao);}

}

 

int main()

{int xz1,xz2,xz3,xz4,xz5,xz6,xz7,xz8,xz9,xz10;

 do{printf("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n");

 printf("  图书管理系统\n");

 printf("     1.新进图书信息输入\n");

 printf("     2.查询图书\n");

 printf("     3.删除图书信息\n");

    printf("     4.学生注册\n");

 printf("     5.查询会员信息\n");

 printf("     6.办理借书手续\n");

 printf("     7.办理还书手续\n");

 printf("     8.退出\n");

 printf("~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n");

 printf("                      请输入选择:");

 scanf("%d",&xz1);

 

 if(xz1==1){do{i=sum+1;

            printf("请输入图书编号:");scanf("%d",&tushu[i].num);

               printf("请输入图书名称:");scanf("%s",tushu[i].name);

         printf("请输入图书作者:");scanf("%s",tushu[i].zuozhe);

         printf("请输入图书单价:");scanf("%f",&tushu[i].danjia);

         strcpy(tushu[i].zhuangtai,"未借");

      sum++;

      printf("————————1.继续输入  2.返回————————请输入选择:");

      scanf("%d",&xz2);

 }while(xz2==1);

 }

 

    if(xz1==2){do{printf("     1.按图书编号查询\n");

               printf("     2.按图书名称查询\n");

            printf("     3.按图书作者查询\n");

      printf("     4.返回\n");

      printf("                      请输入选择:");

      scanf("%d",&xz3);if(xz3==4) break;

      if(xz3==1){

       printf("请输入要查找的图书编号:");

          int num1;k=0;

       scanf("%d",&num1);

       for(i=1;i<=sum;i++) if(num1==tushu[i].num){k=1;break;}

       if(k==0) printf("        ————————无此图书!————————\n");

       else{printf("  编号      名称      作者     单价   状态   姓名   性别   班级   学号\n");

            output(tushu[i]);printf("\n");}

      }

      if(xz3==2){

       printf("请输入要查找的图书名称:");

          char name1[21];k=0;

          scanf("%s",name1);

       for(i=1;i<=sum;i++) if(name1[1]==tushu[i].name[1]){k=1;break;}

       if(k==0) printf("        ————————无此图书!————————\n");

       else{printf("  编号      名称      作者     单价   状态   姓名   性别   班级   学号\n");

            output(tushu[i]);printf("\n");}

      }

      if(xz3==3){

       printf("请输入要查找的图书作者:");

          char zuozhe1[13];k=0;

          scanf("%s",zuozhe1);

       for(i=1;i<=sum;i++) if(zuozhe1[1]==tushu[i].zuozhe[1]){k=1;break;}

       if(k==0) printf("        ————————无此图书!————————\n");

       else{printf("  编号      名称      作者     单价   状态   姓名   性别   班级   学号\n");

            output(tushu[i]);printf("\n");}

      }

      printf("————————1.继续查找 2.返回————————请输入选择:");

      scanf("%d",&xz4);

 }while(xz4==1);

 }

 

 if(xz1==3){do{printf("     1.指定图书编号删除\n");

                  printf("     2.指定图书名称删除\n");

               printf("     3.指定图书作者删除\n");

      printf("     4.返回\n");

      printf("                      请输入选择:");

      scanf("%d",&xz5);if(xz5==4) break;

      if(xz5==1){

       printf("请输入要删除的图书编号:");

          int num1;scanf("%d",&num1);

       for(i=1;i<=sum;i++)

        if(num1==tushu[i].num){

         for(j=i;j<=sum;j++)

          tushu[j]=tushu[j+1];

            printf("        ————————已成功删除————————\n");

         sum=sum-1;

        }

      }

      if(xz5==2){

       printf("请输入要删除的图书名称");

          char name1[21];

          scanf("%s",name1);

       for(i=1;i<=sum;i++)

        if(strcmp(name1,tushu[i].name)==0){

         for(j=i;j<=sum;j++)

          tushu[j]=tushu[j+1];

            printf("        ————————已成功删除————————\n");

         sum=sum-1;

        }

      }

      if(xz5==3){

       printf("请输入要删除的图书作者:");

          char zuozhe1[13];

          scanf("%s",zuozhe1);

       for(i=1;i<=sum;i++)

        if(strcmp(zuozhe1,tushu[i].zuozhe)==0){

         for(j=i;j<=sum;j++)

          tushu[j]=tushu[j+1];

            printf("        ————————已成功删除————————\n");

         sum=sum-1;

        }

      }

      printf("————————1.继续删除 2.返回————————请输入选择:");

      scanf("%d",&xz6);

 }while(xz6==1);

 }

 

 

  if(xz1==4){do{i=s+1;

            printf("请输入姓名:");scanf("%s",stu[i].pe);

         printf("请输入性别:");scanf("%s",stu[i].se);

         printf("请输入班级:");scanf("%s",stu[i].banji);

         printf("请输入学号:");scanf("%d",&stu[i].xu);

      stu[i].jie=0;

         s=s+1;

         printf("————————1.继续输入  2.返回————————请输入选择:");

         scanf("%d",&xz7);

 }while(xz7==1);

 }

 

 

  if(xz1==5){do{char people1[9];k=0;

            printf("请输入会员姓名:");scanf("%s",people1);

      for(i=1;i<=s;i++) if(strcmp(people1,stu[i].pe)==0){k=1;break;}

         if(k==0) printf("        ————————无此会员!————————\n");

         else{printf("%s   ",stu[i].pe);

           printf("%s   ",stu[i].se);

        printf("%s   ",stu[i].banji);

        printf("%d   ",stu[i].xu);

        int kk=stu[i].jie;

        for(j=1;j<=kk;j++) printf("%d",stu[i].jieshu[j]);

        printf("\n");

      }

         printf("————————1.继续查找 2.返回————————请输入选择:");

         scanf("%d",&xz8);

 }while(xz8==1);

 }

 

 

  if(xz1==6){char people1[9];k=0;

         printf("请输入借书人姓名:");scanf("%s",people1);

      for(i=1;i<=s;i++) if(strcmp(people1,stu[i].pe)==0){k=1;break;}

      if(k==0) printf("        ————————非注册会员不能借书!————————\n");

      else{printf("     1.输入要借的图书编号\n");

           printf("     2.输入要借的图书名称\n");

     printf("     3.返回\n");

     printf("                      请输入选择:");

     scanf("%d",&xz9);

     if(xz9==1){int num1;k=0;

                printf("请输入图书编号:");scanf("%d",&num1);

          for(j=1;j<=sum;j++) if(num1==tushu[j].num){k=1;break;}

          if(k==0) printf("        ————————未找到该图书!————————\n");

          else{k=stu[i].jie+1;

               stu[i].jieshu[k]=tushu[j].num;

         stu[i].jie++;

         strcpy(tushu[j].people,stu[i].pe);

         strcpy(tushu[j].sex,stu[i].se);

         strcpy(tushu[j].banji,stu[i].banji);

         tushu[j].xuehao=stu[i].xu;

         strcpy(tushu[j].zhuangtai,"已借");

            printf("        ————————操作成功!————————\n");}

     }

     if(xz9==2){char name1[21];k=0;

                printf("请输入图书名称:");scanf("%s",&name1);

          for(j=1;j<=sum;j++)

           if(strcmp(name1,tushu[j].name)==0){k=1;break;}

          if(k==0) printf("        ————————未找到该图书!————————\n");

          else{k=stu[i].jie+1;

               stu[i].jieshu[k]=tushu[j].num;

         stu[i].jie++;

         strcpy(tushu[j].people,stu[i].pe);

         strcpy(tushu[j].sex,stu[i].se);

         strcpy(tushu[j].banji,stu[i].banji);

         tushu[j].xuehao=stu[i].xu;

         strcpy(tushu[j].zhuangtai,"已借");

            printf("        ————————操作成功!————————\n");}

     }

      }

 }

 

 

  if(xz1==7){printf("     1.输入要还的图书编号\n");

            printf("     2.输入要还的图书名称\n");

      printf("     3.返回\n");

      printf("                      请输入选择:");

      scanf("%d",&xz10);

      if(xz10==1){int num1;k=0;char people2[9];

            printf("请输入图书编号:");scanf("%d",&num1);

         for(i=1;i<=sum;i++) if(num1==tushu[i].num){k=1;break;}

         if(k==0) printf("        ————————未找到该图书!————————\n");

         else{strcpy(people2,tushu[i].people);

           for(j=1;j<=s;j++)

         if(strcmp(people2,stu[j].pe)==0){

            strcpy(tushu[i].zhuangtai,"未借");

            int kk=stu[j].jie;

            stu[j].jie--;

            printf("        ————————操作成功!————————\n");

            break;}

         }

      }

      if(xz10==2){char name1[21];k=0;char people2[9];

            printf("请输入图书名称:");scanf("%s",name1);

         for(i=1;i<=sum;i++) if(strcmp(name1,tushu[i].name)==0){k=1;break;}

         if(k==0) printf("        ————————未找到该图书!————————\n");

         else{strcpy(people2,tushu[i].people);

           for(j=1;j<=s;j++)

         if(strcmp(people2,stu[j].pe)==0){

            strcpy(tushu[i].zhuangtai,"未借");

            int kk=stu[j].jie;

            stu[j].jie--;

            printf("        ————————操作成功!————————\n");

            break;}

         }

      }

 }

 

 }while(xz1!=8);

}

 

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值