亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? bookms.c

?? 是一個(gè)比較好的圖書管理系統(tǒng)
?? C
?? 第 1 頁 / 共 4 頁
字號:
    }

    step = num * (BKRECSIZE+1);
    step += (INFORSZ-1)*3;
    if((wfp=fopen("BookData.txt","r+")) == NULL)
    {
    printf("Open File Error!\n");
    return;
    }
    fseek(wfp, step, 0);
    
    fputc('0', wfp);   /*修改有效標(biāo)志,置0表示該記錄無效  */
    fclose(wfp);
    

    /* 即刪除的是最后一個(gè)記錄,則將最后一條無效記錄刪除,*/
    /* 擦除記錄占用的空間,修改記錄總數(shù),即記錄總數(shù)減1  */
    if(num==book_record_Total-1)
         book_record_Total--;
    else
         book_delete_total++; /* 無效記錄增一 */

    /*刪除的記錄在前面(包括刪除的是最后一條),則修改book_newID_Position */
    /*下次分配ID時(shí)優(yōu)先分配  */
    if(num < book_newID_Position)
         book_newID_Position = num;
    Save_Book_Infor_Word();  /*保存信息字*/

    printf("Delete Successfully!\n");
    printf("Press any key to return!\n");
    getch();

    return;
}


/*******************************************/
/*    to be transfered by the Main-Menu   */
void Add_New_Reader_Lend()
{
    int loop;
    loop = Add_New_Reader();  /*添加一個(gè)新讀者 并 同時(shí)添加相應(yīng)的借閱信息記錄*/
    if(loop != -1)
        Add_Lend_Record(loop);  /* 同時(shí)添加相應(yīng)的借閱信息記錄 */
}



/***********************************************/

void Search_Reader()
{
    static char choice;   /* 此處很重要,因?yàn)镾witch_Search_Reader()中default中*/
                          /* 遞歸調(diào)用了該函數(shù),設(shè)置為static則遞歸調(diào)用時(shí)使用同一個(gè) */
                          /* choice 變量,即只做一次處理,而且可以正確退出*/
    do
    {
      clrscr();
      printf("       Searching Menu \n");
      printf("1 - Search a reader by a Reader's ID\n");
      printf("2 - Search a reader by a Reader's fullname\n");
      printf("ESC - Return\n");
      printf("Please input your choice:");
      choice = getch();
      printf("%c\n", choice);
      if(choice!=27)
          Switch_Search_Reader(choice);
    }while(choice!=27);

    return;
}



/*************************************************/

void Switch_Search_Reader(char c)
{
     switch(c)
     {
     case('1'):
         Search_By_ReaderID();
         break;
     case('2'):
         Search_By_Reader_Fullname();
         break;
     default:
         printf("Invalid choice\n");
         printf("Press any key to continue!\n");
         getch();
         Search_Reader();
         break;
     }

     return;
}


/******************************************/
/*    search a reader by the reader's ID  */

void Search_By_ReaderID()
{
    int num, loop;

    num = Get_Reader_ID(); /* 獲得讀者證號 */
    if(num==-1)   /* 操作取消 */
        return;

    loop = Load_Reader_Record(num); /* 將讀者基本信息讀到當(dāng)前讀者指針 */
    if(loop != 1)
    {
        printf("The Reader is not exsit!\n");
        printf("Please check your ID or register an new ID.\n");
        printf("Press any key to return!\n");
        getch();
        return;
    }

    Load_Lend_Record(num);   /* 將借閱信息讀到當(dāng)前借閱指針 */
    Display_Reader_Detail();

    free(cur_reader_ptr);  /*使用完當(dāng)前指針,一定要釋放*/
    cur_reader_ptr = NULL;
    free(cur_lend_ptr);    /*使用完當(dāng)前指針,一定要釋放*/
    cur_lend_ptr = NULL;

    printf("\n Press any key to continue!\n");
    getch();
    return;
}



/***********************************************************/

void Search_By_Reader_Fullname()
{
    int i, loop, match_total=0;
    char ch;
    char instr[RDNAMESZ], name_str[RDNAMESZ], temp_str[RDNAMESZ];
    printf("Please Input Reader'Fullname(1~15 chars):\n");
    gets(instr);
    while(strlen(instr) > RDNAMESZ-1)
    {
        printf("Wrong input, it is too long!\n");
        printf("Please Input Reader'Fullname(1~15 chars):\n");
        gets(instr);
    }
    sprintf(name_str, "%-15s", instr);

    clrscr();
    for(i=0; i<reader_total; i++)
    {
        loop = Load_Reader_Record(i);
        if(loop != 1)
            continue;
        strcpy(temp_str, cur_reader_ptr->Name);
        loop = strcmp(strlwr(temp_str), strlwr(name_str));
        if(!loop)
        {
            match_total++;
            if(match_total % PAGESIZE==1)
            {
                clrscr();
                printf("\t Number|      Name        | Grade |      Major       \n");
                printf("\t-----------------------------------------------------\n");
            }
            Display_cur_Reader_Record();

            free(cur_reader_ptr);
            cur_reader_ptr = NULL;
            if(match_total % PAGESIZE==0)
            {
                printf("Press any key to the next page!\n");
                getch();
            }
        }
    }
    printf("\nThere are  %d  matching records!\n", match_total);
    if(match_total)
    {
        printf("Press P to continue, Press else key to return!\n");
        ch = getch();
        if(ch=='p'||ch=='P')
            Search_By_ReaderID();
        else
            return;
    }
    else
    {
        printf("Press any key to continue!\n");
        getch();
    }

    return;
}


/********************************************************/
/*   Display the current Reader's Detailed information  */

void Display_Reader_Detail()
{
    int i, num, temp, loop;
    num = cur_lend_ptr->bkCount - 48;

    clrscr();
    printf("\t\t               Reader Information \n");
    printf("\t\t    -----------------------------------------\n");
    printf("\t\t    | Reader's ID: %s                    |\n", cur_reader_ptr->rdID);
    printf("\t\t    | Reader's Name: %s        |\n", cur_reader_ptr->Name);
    printf("\t\t    | Reader's Grade: %s                  |\n", cur_reader_ptr->Grade);
    printf("\t\t    | Reader's Major: %s       |\n", cur_reader_ptr->Major);
    printf("\t\t    -----------------------------------------\n");
    printf("\t\t           Borrowing Information \n");

    printf("    -----------------------------------------------------------------------\n");
    printf("      Books Total: %c                                                      \n", cur_lend_ptr->bkCount);
    printf("    -----------------------------------------------------------------------\n");

    if(num)
    {
        printf("              Book ID      Book Name         O-Time    R-Time        \n");
      //  printf("\t*--------------------------------------------------------------------*\n");
    }

    /*讀書目文件,將所借書目信息顯示出來*/
    for(i=0; i<num; i++)
    {
         temp = atoi(cur_lend_ptr->bkID[i]);
         Load_Book_Record(temp);
         loop = Overdue_Judge(cur_lend_ptr->EndTime[i]);  /* 判斷是否過期 */
         printf("      Book %d:  %s   %s %s  %s ",
                i+1,
                cur_lend_ptr->bkID[i],
                cur_book_ptr->bkName,
                cur_lend_ptr->StartTime[i],
                cur_lend_ptr->EndTime[i]
                );

         if(loop==1)
             printf(" Time Out!");
         printf("\n");

         free(cur_book_ptr);   /*使用完當(dāng)前指針,一定要釋放*/
         cur_book_ptr = NULL;
    }
    printf("    -----------------------------------------------------------------------\n");

    return;
}


/************************************/
/*  Display the timeout lendings    */

void Display_Timeout_Lending()
{
    int i, j, loop, num, temp;
    int dsp_total = 0;

    clrscr();
    for(i=0; i<reader_total; i++)
    {
        loop = Load_Reader_Record(i);
        if(loop==-1)     /* 若讀者不存在則返回 */
            continue;

        Load_Lend_Record(i);
        num = cur_lend_ptr->bkCount - 48;

        for(j=0; j<num; j++)
        {
            loop = Overdue_Judge(cur_lend_ptr->EndTime[j]);  /* 判斷是否過期 */
            if(loop!=1) continue;   /* 未過期 */

            temp = atoi(cur_lend_ptr->bkID[j]);
            Load_Book_Record(temp);

            dsp_total++;
            if(dsp_total % PAGESIZE==1)
            {
                clrscr();
                printf("   Reader ID |   Reader Name   | Book ID |       Book Name      | End-Time  \n");
                printf("  ----------------------------------------------------------------------------\n");
            }

            Display_cur_Timeout_Lending(j);
            free(cur_book_ptr);
            cur_book_ptr = NULL;

            if(dsp_total % PAGESIZE==0)  /* 分頁顯示 */
            {
                printf("\nPress any key to the next page!\n");
                getch();
            }
        }

        /*************釋放指針(釋放內(nèi)存空間是很重要的)*************** */
        free(cur_lend_ptr);
        cur_lend_ptr = NULL;
        free(cur_reader_ptr);
        cur_reader_ptr = NULL;
    }
    printf("\n  There are  %d  Timeout lendings total!\n", dsp_total);

    return;
}


/*****************************************/
/*  Display the current timeout lending  */

void Display_cur_Timeout_Lending(int p)
{
    printf("     %s    ", cur_reader_ptr->rdID);
    printf(" %s ", cur_reader_ptr->Name);
    printf("   %s   ", cur_lend_ptr->bkID[p]);
    printf(" %s ", cur_book_ptr->bkName);
    printf("  %s ", cur_lend_ptr->EndTime[p]);
    printf("\n");

    return;
}


/************************/
/*   delete a reader    */

void Delete_Reader()
{
    int num, loop, step, result;
    FILE *wfp;

    num = Get_Reader_ID();
    if(num==-1)   /* 操作取消 */
        return;

    /* 看讀者是否存在 */
    loop = Load_Reader_Record(num);
    if(loop != 1)
    {
        printf("The Reader is not exsit!\n");
        printf("Press any key to return!\n");
        getch();
        return;
    }

    /* 載入借閱記錄 */
    Load_Lend_Record(num);

    /* 當(dāng)前借了書,則讀者記錄不允許刪除 */
    if(cur_lend_ptr->bkCount!='0')
    {
        printf("Sorry! The Reader has borrowed some books, You can not delete the record!\n");
        printf("Press any key to return!\n");
        getch();
        return;
    }

    result = Delet_Verify();
    if(result != 1)
    {
         printf("Delete Cancled!\n");
         printf("Press any key to return!\n");
         getch();
         return;
    }

    step = num * (RDRECSIZE+1);
    step += (INFORSZ-1)*3;
    if((wfp=fopen("ReaderData.txt","r+")) == NULL)
    {
        printf("Open File Error!\n");
        return;
    }
    fseek(wfp, step, 0);
    
    fputc('0', wfp);   /*修改有效標(biāo)志,置0表示該記錄無效  */
    fclose(wfp);
    

    /* 即刪除的是最后一個(gè)記錄,則將最后一條無效記錄刪除,*/
    /* 擦除記錄占用的空間,修改記錄總數(shù),即記錄總數(shù)減1  */
    if(num==reader_total-1)
         reader_total--;
    else
         reader_delete_total++; /* 無效記錄增一 */

    /*刪除的記錄在前面(包括刪除的是最后一條),則修改book_newID_Position */
    /*下次分配ID時(shí)優(yōu)先分配  */
    if(num < reader_newID_Position)
         reader_newID_Position = num;
    Save_Reader_Infor_Word();  /*保存信息字*/

    printf("Delete Successfully!\n");
    printf("Press any key to return!\n");
    getch();

    return;
}


/*************************************************/
/*  get the Reader ID of a reader from the user  */

int Get_Reader_ID()
{
    int loop, i;
    char ch;
    char rdID_str[RDIDSZ];
    do
    {
        printf("Please input the reader's ID(5 Numbers,like(00012)):\n");
        for(i=0; i<RDIDSZ-1; i++)
        {
            ch = getch();
            printf("%c", ch);
            if(ch==27)
                return -1;
            rdID_str[i] = ch;
        }
        rdID_str[RDIDSZ-1] = '\0';
        loop = Assure_ReaderID_True(rdID_str);
        if(loop==-1)
            printf("\nWrong input!");

        getch();
        printf("\n");
     }while(loop!=1);

     loop = atoi(rdID_str);
     return loop;
}


/*******************************************/
/*  to judge the input ID is legal or not  */

int Assure_ReaderID_True(char *str)
{
    int i;
    char ch;
    for(i=0; i<RDIDSZ-1; i++)
    {
        ch = *(str+i);
        if(ch<48 || ch>57)
            return -1;
    }
    return 1;
}


/********************************************/
/*  get the BookID of a book from the user  */

int Get_Book_ID()
{
    int i, loop;
    char ch;
    char bkID_str[BKIDSZ];
    do
    {
        printf("Please input the Book ID(5 Numbers,like(00012)):\n");
        for(i=0; i<BKIDSZ-1; i++)
        {
            ch = getch();
            printf("%c", ch);
            if(ch==27)
                return -1;
            bkID_str[i] = ch;
        }
        bkID_str[BKIDSZ-1] = '\0';
        loop = Assure_BookID_True(bkID_str);
        if(loop==-1)
            printf("\nWrong input!\n");
        getch();
        printf("\n");
     }while(loop!=1);

     loop = atoi(bkID_str);
     return loop;
}


/*******************************************/
/*  to judge the input ID is legal or not  */

int Assure_BookID_True(char *str)
{
    int i;
    char ch;
    for(i=0; i<BKIDSZ-1; i++)
    {
        ch = *(str+i);
        if(ch<48 || ch>57)
            return -1;
    }
    return 1;
}


/****************************************************/
/* warm the user is sure to delete a record or not  */

int Delet_Verify()
{
    char ch;
    printf("Are you sure to delete this record! (y/n)");
    ch = getch();
    printf("%c\n", ch);
    if(ch=='Y' || ch=='y')
        return 1;
    else
        return 0;
}

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
日韩欧美国产一区二区三区| 丁香婷婷深情五月亚洲| 欧美日韩亚洲国产综合| 亚洲图片自拍偷拍| 91精品中文字幕一区二区三区| 亚洲电影视频在线| 欧美一区二区在线免费观看| 精品一区二区三区影院在线午夜| 久久人人爽人人爽| 99精品一区二区| 日韩影院在线观看| 久久久久久久久一| 91蜜桃在线免费视频| 香蕉久久一区二区不卡无毒影院 | 8x8x8国产精品| 老司机精品视频在线| 欧美国产国产综合| 在线观看欧美黄色| 久热成人在线视频| 亚洲丝袜另类动漫二区| 欧美日本国产视频| 国产一区二区三区四区五区美女| 1区2区3区国产精品| 欧美日韩1234| 国产精品一区2区| 亚洲女同女同女同女同女同69| 欧美日韩你懂得| 国产成人在线看| 亚洲成人av一区| 国产无一区二区| 在线成人免费观看| 成人av免费在线观看| 丝袜脚交一区二区| 中文字幕在线不卡视频| 欧美一二三在线| 色婷婷久久一区二区三区麻豆| 麻豆中文一区二区| 国产精品灌醉下药二区| 91精品国产综合久久精品图片| 成人福利视频网站| 日韩二区三区四区| 中文字幕av一区二区三区高 | 91福利在线观看| 激情文学综合丁香| 午夜视频一区二区| 1024精品合集| 久久久不卡影院| 欧美一区二区在线不卡| 91激情五月电影| 国产很黄免费观看久久| 七七婷婷婷婷精品国产| 一区二区三区国产豹纹内裤在线| 国产日韩欧美不卡在线| 日韩欧美黄色影院| 欧美高清视频一二三区 | 欧美日韩一二区| 成人的网站免费观看| 国产精品自拍在线| 韩日av一区二区| 美日韩一级片在线观看| 亚洲超碰精品一区二区| 亚洲乱码国产乱码精品精可以看| 国产午夜精品一区二区三区四区 | 国产婷婷精品av在线| 欧美电视剧在线看免费| 91精品国产91久久综合桃花| 欧美日韩亚洲综合在线 欧美亚洲特黄一级 | 一本久道中文字幕精品亚洲嫩| 精品无人码麻豆乱码1区2区| 青青青爽久久午夜综合久久午夜| 亚洲国产视频一区| 亚洲午夜精品久久久久久久久| 亚洲精品少妇30p| 亚洲黄色免费电影| 一区二区免费在线播放| 亚洲永久精品大片| 亚洲一二三区在线观看| 亚洲高清久久久| 日本视频中文字幕一区二区三区| 午夜精品福利在线| 五月天久久比比资源色| 视频在线在亚洲| 热久久久久久久| 精品一区二区三区免费| 国产原创一区二区| 国产精品77777| 99精品在线免费| 欧美午夜电影网| 3d动漫精品啪啪一区二区竹菊| 欧美一区永久视频免费观看| 欧美一区二区三区在线视频| 精品国产污污免费网站入口| 国产日产欧美一区| 亚洲天天做日日做天天谢日日欢 | av一本久道久久综合久久鬼色| av中文字幕一区| 国产日韩精品一区二区三区| 中文字幕欧美日韩一区| 亚洲精品免费视频| 日韩精品电影在线| 国产乱子伦视频一区二区三区 | 欧美放荡的少妇| 欧美一三区三区四区免费在线看| 欧美成人性战久久| 国产精品久久久久影院老司| 亚洲国产日日夜夜| 国产尤物一区二区| 日本精品免费观看高清观看| 欧美一区二区三区免费| 国产精品欧美一级免费| 午夜久久福利影院| 高清视频一区二区| 欧美日本精品一区二区三区| 久久久久一区二区三区四区| 亚洲欧美视频在线观看视频| 日本一区中文字幕| 99国产精品久久久久| 欧美一二三区在线观看| 最新国产精品久久精品| 视频一区中文字幕| 99精品欧美一区二区蜜桃免费| 91麻豆精品国产91久久久久| 中文字幕在线不卡一区二区三区| 日韩av电影免费观看高清完整版| 成人国产免费视频| 日韩一级完整毛片| 亚洲欧美激情在线| 国产精品亚洲一区二区三区妖精 | 亚洲三级电影全部在线观看高清| 五月婷婷综合激情| proumb性欧美在线观看| 日韩精品在线一区| 亚洲高清免费视频| 91视频在线观看免费| 久久婷婷国产综合国色天香| 香蕉av福利精品导航| 色天天综合色天天久久| 国产欧美一区二区在线| 男男gaygay亚洲| 欧美午夜理伦三级在线观看| 中文字幕在线不卡一区| 国产精品一区免费在线观看| 欧美一区二区美女| 一区二区高清免费观看影视大全| 国产成人av网站| 精品国一区二区三区| 视频在线观看一区| 欧美日韩国产一级| 亚洲精品国产精华液| 91玉足脚交白嫩脚丫在线播放| 久久精品亚洲精品国产欧美kt∨| 蜜臀av性久久久久蜜臀aⅴ四虎| 欧美日韩久久久一区| 一区二区三区精品久久久| 91亚洲午夜精品久久久久久| 国产精品乱码一区二三区小蝌蚪| 国产成人综合网| 国产午夜精品一区二区三区四区| 国产一区二区美女| 亚洲一区欧美一区| 欧美日韩在线播| 亚洲最新在线观看| 欧美在线影院一区二区| 亚洲制服欧美中文字幕中文字幕| 91丨国产丨九色丨pron| 亚洲卡通动漫在线| 色偷偷88欧美精品久久久| 一区二区三区中文字幕精品精品| 在线影院国内精品| 午夜精品久久久久久久99水蜜桃| 欧美福利视频导航| 美女脱光内衣内裤视频久久网站| 欧美成人官网二区| 国产黄色成人av| 日韩久久一区二区| 欧美日韩国产精选| 久久精品免费观看| 欧美国产视频在线| 91色视频在线| 五月天中文字幕一区二区| 日韩免费一区二区| 国产白丝网站精品污在线入口| 国产精品久久久久久久午夜片| 成人h精品动漫一区二区三区| 亚洲欧美另类在线| 欧美一区二区三区白人| 麻豆91在线看| 国产精品久久久爽爽爽麻豆色哟哟| 一本久久综合亚洲鲁鲁五月天| 污片在线观看一区二区| 精品国产网站在线观看| www.亚洲激情.com| 午夜国产精品一区| 精品久久五月天| 99久久久久免费精品国产 | 九九精品一区二区| 欧美激情一区在线| 欧美日韩国产小视频在线观看| 久久99精品国产麻豆婷婷| 中文字幕中文字幕一区|