【weka源码下载】【模糊认知图源码】【盗号软件源码成品】书目源码_书籍源码

2024-11-15 09:40:59 来源:ethusdt合约源码 分类:百科

1.c语言书管理系统

书目源码_书籍源码

c语言书管理系统

       #include <stdio.h>

       #include <stdlib.h>

       #include <time.h>

       #include <string.h>

       typedef int BOOL;

       typedef struct bookinfo

       {

        char number[];/*产品编号*/

        char name[];/*产品名称*/

        float price;/*单价*/

        char auther[];/*作者*/

        BOOL isExit;/*存在状态*/

        char lendername[];/*借书人姓名*/

        char lendersex[2];/*借书人性别*/

        char lendernum[];/*借书人学号*/

       }BOOKINFO;

       void menu()

       {

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

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

        printf("\t\t\t1:新进图书基本信息的书目书籍输入\n");

        printf("\t\t\t2:显示全部记录\n");

        printf("\t\t\t3:根据图书名称查询图书基本信息\n");

        printf("\t\t\t4:根据图书名称对撤销的图书信息进行删除\n");

        printf("\t\t\t5:按照图书名称从小大到排序\n");

        printf("\t\t\t6:统计某价格以上的图书数量\n");

        printf("\t\t\t7:列出所有未借出去的图书信息\n");

        printf("\t\t\t8:退出\n");

        }

       void choice_1_input_new()/*输入新进的图书信息*/

       {

        char choice;

        FILE *p;

        BOOKINFO newbook;

        system("cls");

        while(1)

        {

        printf("输入图书编号:");

        gets(newbook.number);

        printf("输入图书名称:");

        gets(newbook.name);

        printf("输入图书单价:");

        scanf("%f",&newbook.price);

        while(getchar()!='\n');

        printf("输入图书的作者:");

        gets(newbook.auther);

        printf("输入借书人姓名:");

        gets(newbook.lendername);

        printf("输入借书人性别:");

        gets(newbook.lendersex);

        printf("输入借书人学号:");

        gets(newbook.lendernum);

        printf("是否保存该条书目?(Y/N)\n");

        choice=getch();

        while(choice!='Y'&&choice!='y'&&choice!='N'&&choice!='n')

        choice=getch();

        if(choice=='Y'||choice=='y')

        {

        newbook.isExit=1;/*将图书状态设置成1,表示没有借出*/

        p=fopen("c:\\bookinfo.data",源码源码"ab");

        fwrite(&newbook,sizeof(BOOKINFO),1,p);

        fclose(p);

        printf("\n该条书目已添加到c:\\bookinfo.data文件中!\n");

        }

        else

        {

        printf("\n本条书目未保存!\n");

        }

        printf("\n是否继续添加书目?(Y/N)\n");

        choice=getch();

        while(choice!='Y'&&choice!='y'&&choice!='N'&&choice!='n')

        choice=getch();

        if(choice=='Y'||choice=='y')

        continue;

        else

        break;

        }

        }

       void choice_2_display_all()/*显示全部图书信息*/

       {

        FILE *p;

        int n;

        BOOKINFO bookinfo[];

        int booknumber=0;

        system("cls");

        p=fopen("c:\\bookinfo.data","rb");

        while(!feof(p))

        {

        fread(&bookinfo[booknumber],sizeof(BOOKINFO),1,p);

        booknumber++;

        }

        /*booknumber--;使用feof()函数会多读一行,因此需要booknumber自减一次,书目书籍weka源码下载使书目的源码源码数量正确*/

        fclose(p);

        booknumber--;

        if(booknumber==0)

        {

        printf("没有任何图书信息!\n\n");

        }

        else

        {

        n=0;

        printf(" 图书信息如下\n");

        printf(" 图书信息 | 借书人信息 \n");

        printf("编号 名称 单价 作者 图书状态 | 姓名 性别 学号\n");

        while(n<booknumber)

        {

        printf("%-6s%-s%-8.1f%-8s%-9d| %-s%-8s%-8s\n",

        bookinfo[n].number,bookinfo[n].name,bookinfo[n].price,

        bookinfo[n].auther,bookinfo[n].isExit,bookinfo[n].lendername,

        bookinfo[n].lendersex,bookinfo[n].lendernum);

        n++;

        }

        }

        printf("\n\n按任意键回到主菜单!\n");

        getch();

       }

       void choice_3_search_according_name()/*根据图书名称显示图书的信息*/

       {

        char search[]="";/*search用来存放要查询的书名*/

        int n;

        FILE *p;

        char choice;

        BOOKINFO bookinfo[];

        int booknumber=0;

        system("cls");

        p=fopen("c:\\bookinfo.data","rb");

        while(!feof(p))

        {

        fread(&bookinfo[booknumber],sizeof(BOOKINFO),1,p);

        booknumber++;

        }

        booknumber--;/*使用feof()函数会多读一行,因此需要booknumber自减一次,书目书籍模糊认知图源码使书目的源码源码盗号软件源码成品数量正确*/

        fclose(p);

        while(1)

        {

        printf("输入要查询的书本名称:");

        gets(search);

        if(booknumber==0)

        {

        printf("书库中没有任何信息!\n\n");

        printf("按任意键回到主菜单!\n\n");

        getch();

        break;

        }/*if结束*/

        else

        {

        for(n=0;n<booknumber;n++)

        if(strcmp(bookinfo[n].name,search)==0)

        {

        printf("该书的详细信息如下:\n");

        printf(" 图书信息 | 借书人信息 \n");

        printf("编号 名称 单价 作者 图书状态 | 姓名 性别 学号\n");

        printf("%-6s%-s%-8.1f%-8s%-9d| %-s%-8s%-8s\n",

        bookinfo[n].number,bookinfo[n].name,bookinfo[n].price,

        bookinfo[n].auther,bookinfo[n].isExit,bookinfo[n].lendername,

        bookinfo[n].lendersex,bookinfo[n].lendernum);

        break;

        }

        if(n>=booknumber)

        printf("没有查找该书的任何信息!\n");

        printf("\n\n是否继续查询?(Y/N)\n");

        choice=getch();

        while(choice!='Y'&&choice!='y'&&choice!='N'&&choice!='n')

        choice=getch();

        if(choice=='Y'||choice=='y')

        continue;

        else

        break;

        }/*else结束*/

        }/*while(1)结束*/

        }

       void choice_4_delete_according_name()/*根据图书名称对图书信息进行删除*/

       {

        char search[]="";/*search用来存放要删除的书名*/

        int n,i;

        FILE *p;

        char choice;

        BOOKINFO bookinfo[];

        int booknumber;

        system("cls");

        while(1)

        {

        printf("输入要删除的书本名称:");

        gets(search);

        p=fopen("c:\\bookinfo.data","rb");

        booknumber=0;

        while(!feof(p))

        {

        fread(&bookinfo[booknumber],sizeof(BOOKINFO),1,p);

        booknumber++;

        }

        booknumber--;/*使用feof()函数会多读一行,因此需要booknumber自减一次,书目书籍使书目的源码源码数量正确*/

        fclose(p);

        if(booknumber==0)

        {

        printf("书库中没有任何信息!\n\n");

        printf("按任意键回到主菜单!\n\n");

        getch();

        break;

        }/*if结束*/

        else

        {

        for(n=0;n<booknumber;n++)

        if(strcmp(bookinfo[n].name,search)==0)

        {

        break;

        }

        if(n>=booknumber)

        printf("没有查找该书的任何信息!\n");

        else

        {

        printf("是否确认需要删除该条书目?(Y/N)");

        choice=getch();

        while(choice!='Y'&&choice!='y'&&choice!='N'&&choice!='n')

        choice=getch();

        if(choice=='Y'||choice=='y')

        {

        for(i=n;i<booknumber-1;i++)

        bookinfo[i]=bookinfo[i+1];

        booknumber--;

        p=fopen("c:\\bookinfo.data","wb");

        for(n=0;n<booknumber;n++)

        fwrite(&bookinfo[n],sizeof(BOOKINFO),1,p);

        fclose(p);

        printf("删除成功!\n");

        }

        else

        printf("\n\n该条书目没有被删除!");

        }

        printf("\n\n是否继续进行删除操作?(Y/N)\n");

        choice=getch();

        while(choice!='Y'&&choice!='y'&&choice!='N'&&choice!='n')

        choice=getch();

        if(choice=='Y'||choice=='y')

        continue;

        else

        break;

        }/*else结束*/

        }/*while(1)结束*/

        }

       void choice_5_sort_according_name()/*根据图书名称排序*/

       {

        FILE *p;

        int m,n;

        BOOKINFO temp;

        BOOKINFO bookinfo[];

        int booknumber;

        p=fopen("c:\\bookinfo.data","rb");

        booknumber=0;

        system("cls");

        while(!feof(p))

        {

        fread(&bookinfo[booknumber],sizeof(BOOKINFO),1,p);

        booknumber++;

        }

        booknumber--;/*使用feof()函数会多读一行,因此需要booknumber自减一次,书目书籍使书目的源码源码数量正确*/

        fclose(p);

        if(booknumber==0)

        {

        printf("没有任何图书信息!\n\n");

        }

        else

        {

        for(m=0;m<booknumber-1;m++)

        for(n=m+1;n<booknumber;n++)

        if(strcmp(bookinfo[m].name,bookinfo[n].name)>0)

        {

        temp=bookinfo[m];

        bookinfo[m]=bookinfo[n];

        bookinfo[n]=temp;

        }

        p=fopen("c:\\bookinfo.data","wb");

        for(m=0;m<booknumber;m++)

        fwrite(&bookinfo[m],sizeof(BOOKINFO),1,p);

        fclose(p);

        printf("\n\n完成排序!\n\n");

        }

        printf("按任意键回到主菜单!\n");

        getch();

       }

       void choice_6_display_high_price()/*根据价格列出图书信息*/

       {

        float price;

        FILE *p;

        int n;

        int count=0;

        BOOKINFO bookinfo[];

        int booknumber;

        system("cls");

        printf("请输入价格:");

        scanf("%f",&price);

        p=fopen("c:\\bookinfo.data","rb");

        booknumber=0;

        while(!feof(p))

        {

        fread(&bookinfo[booknumber],sizeof(BOOKINFO),1,p);

        booknumber++;

        }

        booknumber--;/*使用feof()函数会多读一行,因此需要booknumber自减一次,书目书籍使书目的源码源码数量正确*/

        fclose(p);

        if(booknumber==0)

        {

        printf("没有任何图书信息!\n\n");

        }

        else

        {

        for(n=0;n<booknumber;n++)

        {

        if(bookinfo[n].price>=price)

        count++;

        }

        if(count==0)

        printf("书库中没有比%.1f$价格高的图书!",price);

        else

        {

        printf(" 价格高于%.1f$的图书信息如下\n",price);

        printf(" 图书信息 | 借书人信息 \n");

        printf("编号 名称 单价 作者 图书状态 | 姓名 性别 学号\n");

        for(n=0;n<booknumber;n++)

        {

        if(bookinfo[n].price>=price)

        printf("%-6s%-s%-8.1f%-8s%-9d| %-s%-8s%-8s\n",

        bookinfo[n].number,bookinfo[n].name,bookinfo[n].price,

        bookinfo[n].auther,bookinfo[n].isExit,bookinfo[n].lendername,

        bookinfo[n].lendersex,bookinfo[n].lendernum);

        }

        }

        }

        printf("\n\n按任意键回到主菜单!\n");

        getch();

        }

       void choice_7_display_according_exitflag()/*根据存在状态列出图书信息*/

       {

        FILE *p;

        int n;

        int count=0;

        BOOKINFO bookinfo[];

        int booknumber;

        system("cls");

        booknumber=0;

        p=fopen("c:\\bookinfo.data","rb");

        while(!feof(p))

        {

        fread(&bookinfo[booknumber],sizeof(BOOKINFO),1,p);

        booknumber++;

        }

        booknumber--;

        fclose(p);

        if(booknumber==0)

        {

        printf("书库中没有任何书目存在!\n");

        }

        else

        {

        for(n=0;n<booknumber;n++)

        if(bookinfo[n].isExit==1)

        count++;

        if(count==0)

        printf("书库中的书籍全部借出!\n");

        else

        {

        printf("书库中未被借出的图书信息如下:\n\n");

        printf(" 图书信息 | 借书人信息 \n");

        printf("编号 名称 单价 作者 图书状态 | 姓名 性别 学号\n");

        for(n=0;n<booknumber;n++)

        if(bookinfo[n].isExit==1)

        {

        printf("%-6s%-s%-8.1f%-8s%-9d| %-s%-8s%-8s\n",

        bookinfo[n].number,bookinfo[n].name,bookinfo[n].price,

        bookinfo[n].auther,bookinfo[n].isExit,bookinfo[n].lendername,

        bookinfo[n].lendersex,bookinfo[n].lendernum);

        }

        }

        }

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

        getch();

       }

       void main()

       {

        char choice;

        clock_t tm;

        FILE *p;

        if((p=fopen("c:\\bookinfo.data","rb"))==NULL)

        {

        p=fopen("c:\\bookinfo.data","wb");

        fclose(p);

        }

        while(1)

        {

        system("cls");

        menu();

        choice=getch();

        switch(choice)

        {

        case '1':choice_1_input_new();break;/*输入新进的图书信息*/

        case '2':choice_2_display_all();break;/*显示全部图书信息*/

        case '3':choice_3_search_according_name();break;/*根据图书名称显示图书的信息*/

        case '4':choice_4_delete_according_name();break;/*根据图书名称对图书信息进行删除*/

        case '5':choice_5_sort_according_name();break;/*根据图书名称排序*/

        case '6':choice_6_display_high_price();break;/*根据价格列出图书信息*/

        case '7':choice_7_display_according_exitflag();break;/*根据存在状态列出图书信息*/

        case '8':printf("\n\n\t\t\t谢谢使用,再见!\n\t\t\t按任意键退出!\n");getch();return;

        default:

        printf("\n\n\t\t\t请输入菜单中的数字!(1~8)");

        tm=clock();

        while(clock()<tm+);

        break;

        }

        }

       }

       写的很赶,不知道行不行

       程序很长,但是书目书籍war包网站源码没什么复杂的东西。

       要是源码源码写的不好,楼主就将就吧。书目书籍工业视觉halcon源码

本文地址:http://04.net.cn/news/42e98698971.html 欢迎转发