亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

C語(yǔ)言實(shí)現(xiàn)航空訂票系統(tǒng)課程設(shè)計(jì)

 更新時(shí)間:2022年03月15日 08:23:23   作者:RooKiChen  
這篇文章主要為大家詳細(xì)介紹了C語(yǔ)言實(shí)現(xiàn)航空訂票系統(tǒng)課程設(shè)計(jì),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

本文實(shí)例為大家分享了C語(yǔ)言實(shí)現(xiàn)航空訂票系統(tǒng)的具體代碼,供大家參考,具體內(nèi)容如下

大一寫(xiě)的時(shí)候沒(méi)有寫(xiě)注釋?zhuān)髞?lái)也懶得加了。在這里說(shuō)一下讀寫(xiě)文件的思路吧。

就是利用二進(jìn)制將一整個(gè)結(jié)構(gòu)體中的數(shù)據(jù)存入文件,然后讀取文件時(shí)再用二進(jìn)制的形式將結(jié)構(gòu)體中的數(shù)據(jù)讀取出來(lái),邊讀取邊創(chuàng)建鏈表,將結(jié)構(gòu)體中的數(shù)據(jù)保存到鏈表中。

以下代碼可直接復(fù)制粘貼就能運(yùn)行,絕對(duì)是新手的好福利!

如果有第一次寫(xiě)這種大作業(yè)不知道如何下手,但又不想直接復(fù)制粘貼,想搞清楚這個(gè)代碼的原理的可以私信我,畢竟我當(dāng)時(shí)也第一次寫(xiě)這種大作業(yè)時(shí)也很苦惱(我當(dāng)時(shí)寫(xiě)的要是有這么完整的代碼該多好啊,我直接就是復(fù)制粘貼運(yùn)行看效果)

// author:吳澤琛
// nylg
#include <stdio.h>
#include <stdlib.h>
#include <windows.h>
#include <string.h>
#include <conio.h>
#include <iostream>
#define PRINTF "%s\t\t%d\t\t%s\t\t\t%s\t\t星期%d\t\t\t%d\n",airlinep->airlinenum,airlinep->airplanenum,airlinep->dep,airlinep->des,airlinep->time,airlinep->ticks
using namespace std;
typedef class mange
{
?? ?public:
?? ?char mangername[20];
?? ?char scert[20];
?? ?char securityscert[20];
?? ?class mange *next;
}manger;
typedef class use
{
?? ?public:
//?? ?char userairlinenum[20];//航班號(hào)
//?? ?int userairplanenum;//飛機(jī)號(hào)?
//?? ?char userdes;//目的地?
//?? ?char userdep;//出發(fā)時(shí)間?
//?? ?int usertime;//起飛時(shí)間?
?? ?int ticks;//票數(shù)?
?? ?int bookcnt;//訂票次數(shù)?
?? ?char username[20];
?? ?char scert[20];
?? ?char securityscert[20];
?? ?char bookticks[2000][2000];//機(jī)票名字?
?? ?class use *next;
}user;
typedef class airline
{
?? ?public:
?? ?char airlinenum[20];//航班號(hào)
?? ?int airplanenum;//飛機(jī)號(hào)
?? ?char dep[1000];//出發(fā)地點(diǎn)
?? ?char des[1000];//目的地
?? ?int time;//飛行時(shí)間(星期幾)
?? ?int ticks;//票數(shù)
?? ?class airline *next;
}airline;

manger* mhead = NULL, *mend = NULL;
user *uhead = NULL, *uend = NULL;
airline *ahead = NULL, *aend = NULL;
airline *ahead1 = (airline*)malloc(sizeof(airline));
int mcnt, ucnt, acnt;
char mscert[200] = {"wsgly"};

void load();
void main1();
void changemenu();
void mainmenu();
void Registermenu();
void Loginmenu();
void mlmenu();
void ulmenu();
void Login();
void Register();
void uRegister();
void mRegister();
void mLogin();
void uLogin();
void userfunction();
void search();
void searchmenu();
void printairline();
void printdes();
void printtime();
void printticks();
void airlinesort();
void dessort();
void bookticks(user *userp);
void returnticks(user *userp);
void findairline(user *userp);?
void mangerfunction();
void deleteusernum(char *airlinenum);
void addairline();
void deletenum();
void changeairline();
void searchuser();
void changeuserairline(char *userbookticks, char *bookticks);
void rmanger(manger *mhead);
void rairline(airline *ahead);
void ruser(user *uhead);
void readmangerfile();
void readuserfile();
void readairlinefile();
void title();
void date();
void cls();
void over();
void writefile(int flag);
int exist(char *name, int flag);
void hualihushao1();
void hualihushao2();
void searchscert();
void searchmangerscert();
void searchuserscert();
void changescert();
void changemangerscert();
void changeuserscert();
void print_message();

int main()
{
?? ?//hualihushao1();
?? ?system("color F6");
?? ?title();
?? ?mhead = (manger*)malloc(sizeof(manger));
?? ?uhead = (user*)malloc(sizeof(user));
?? ?ahead = (airline*)malloc(sizeof(airline));
?? ?ahead1->next = ahead;
?? ?
?? ?ruser(uhead);
?? ?rmanger(mhead);
?? ?rairline(ahead);
?? ?// ? ? ? ? ? ? ? ? ? ? ? ? ? ?test
//?? ?user *q = uhead;
//?? ?while (q)
//?? ?{
//?? ??? ?printf("%d %s %s %d %s\n",q->ticks,q->username,q->scert,q->bookcnt,q->securityscert);
//?? ??? ?q = q->next;
//?? ?}
?? ?airline *p = ahead;
?? ?while (p)
?? ?{
?? ??? ?printf("%s %d %s %s %d %d\n",p->airlinenum,p->airplanenum,p->dep,p->des,p->time,p->ticks);
?? ??? ?p = p->next;
?? ?}
?? ?main1();
?? ?return 0;
}
void main1()
{
?? ?int choose;
?? ?int sign;
?? ?
?? ?while (1)
?? ?{
?? ??? ?cls();
?? ??? ?date();
?? ??? ?mainmenu();
?? ?
?? ??? ?char choose = getch();?
?? ??? ?switch(choose)
?? ??? ?{
?? ??? ??? ?case '1':
?? ??? ??? ??? ??? ?cls();
?? ??? ??? ??? ??? ?Login();
?? ??? ??? ??? ??? ?break;
?? ??? ??? ?case '2':
?? ??? ??? ??? ??? ?cls();
?? ??? ??? ??? ??? ?Register();?
?? ??? ??? ??? ??? ?break;
?? ??? ??? ?case '3':
?? ??? ??? ??? ??? ?cls();
?? ??? ??? ??? ??? ?searchscert();
?? ??? ??? ??? ??? ?break;
?? ??? ??? ?case '4':
?? ??? ??? ??? ??? ?cls();
?? ??? ??? ??? ??? ?changescert();
?? ??? ??? ??? ??? ?break;
?? ??? ??? ?case '5':
?? ??? ??? ??? ??? ?cls();
?? ??? ??? ??? ??? ?over();
?? ??? ??? ??? ??? ?cls();
?? ??? ??? ??? ??? ?break;
?? ??? ??? ?default :
?? ??? ??? ??? ??? ?printf("輸入無(wú)效!");
?? ??? ??? ??? ??? ?break;
?? ??? ?}
?? ?}
?? ?
}
void Login()?
{
?? ?int sign;
?? ?while (1)
?? ?{
?? ??? ?cls();
?? ??? ?date();
?? ??? ?Loginmenu();
?? ??? ?char choose = getch();
?? ?switch(choose)
?? ?{
?? ??? ?case '1':
?? ??? ??? ??? ?cls();
?? ??? ??? ??? ?mLogin();
?? ??? ??? ??? ?break;
?? ??? ?case '2':
?? ??? ??? ??? ?cls();
?? ??? ??? ??? ?uLogin();?
?? ??? ??? ??? ?break;
?? ??? ?case '3':
?? ??? ??? ??? ?sign = 1;
?? ??? ??? ??? ?break;
?? ??? ?case '4':
?? ??? ??? ??? ?cls();
?? ??? ??? ??? ?over();
?? ??? ??? ??? ?break;
?? ??? ?default :
?? ??? ??? ??? ?printf("輸入無(wú)效!");
?? ??? ??? ??? ?break;
?? ??? ??? ??? ?
?? ??? ??? ??? ?
?? ?}
?? ??? ?if (sign)
?? ??? ?{
?? ??? ??? ?break;
?? ??? ?}
?? ?}
?? ?
}
void Register()
{
?? ?int sign;
?? ?
?? ?while (1)
?? ?{
?? ??? ?cls();
?? ??? ?date();
?? ??? ?Registermenu();
?? ??? ?char choose = getch();
?? ?switch(choose)
?? ?{
?? ??? ?case '1':
?? ??? ??? ??? ?cls();
?? ??? ??? ??? ?mRegister();
?? ??? ??? ??? ?break;
?? ??? ?case '2':
?? ??? ??? ??? ?cls();
?? ??? ??? ??? ?uRegister();
?? ??? ??? ??? ?break;
?? ??? ?case '3':
?? ??? ??? ??? ?sign = 1;
?? ??? ??? ??? ?cls();
?? ??? ??? ??? ?break;
?? ??? ?case '4':
?? ??? ??? ??? ?cls();
?? ??? ??? ??? ?over();
?? ??? ??? ??? ?cls();
?? ??? ??? ??? ?break;
?? ??? ?default :
?? ??? ??? ??? ?printf("輸入無(wú)效!");
?? ??? ??? ??? ?break;
?? ?}
?? ?if (sign)
?? ?{
?? ??? ?break;
?? ?}
?? ?}
?? ?
}

void userfunction(user *userp)
{?? ?
?? ?int sign;
?? ?
?? ?while (1)
?? ?{
?? ??? ?cls();
?? ??? ?date();
?? ?ulmenu();
?? ?char choose = getch();
?? ?switch(choose)
?? ?{
?? ??? ?case '1':
?? ??? ??? ??? ?cls();
?? ??? ??? ??? ?bookticks(userp);
?? ??? ??? ??? ?break;
?? ??? ?case '2':
?? ??? ??? ??? ?cls();
?? ??? ??? ??? ?returnticks(userp);
?? ??? ??? ??? ?break;
?? ??? ?case '3':
?? ??? ??? ??? ?cls();
?? ??? ??? ??? ?findairline(userp);
?? ??? ??? ??? ?break;
?? ??? ?case '4':
?? ??? ??? ??? ?cls();
?? ??? ??? ??? ?search();
?? ??? ??? ??? ?break;
?? ??? ?case '5':
?? ??? ??? ??? ?sign = 1;
?? ??? ??? ??? ?cls();
?? ??? ??? ??? ?break;
?? ??? ?case '6':
?? ??? ??? ??? ?cls();
?? ??? ??? ??? ?over();
?? ??? ??? ??? ?cls();
?? ??? ??? ??? ?break;
?? ??? ?default :
?? ??? ??? ??? ?printf("輸入無(wú)效!");
?? ??? ??? ??? ?break;
?? ?}
?? ??? ?if (sign)
?? ??? ?{
?? ??? ??? ?break;
?? ??? ?}
?? ?}
?? ?
}

void mangerfunction()
{
?? ?int sign = 0;
?? ?int choose ;
?? ?while (1)
?? ?{
?? ??? ?cls();
?? ??? ?date();
?? ?mlmenu();
?? ?char choose = getch();
?? ?switch(choose)
?? ?{
?? ??? ?case '1':
?? ??? ??? ??? ?cls();
?? ??? ??? ??? ?addairline();
?? ??? ??? ??? ?break;
?? ??? ?case '2':
?? ??? ??? ??? ?cls();
?? ??? ??? ??? ?deletenum();
?? ??? ??? ??? ?break;
?? ??? ?case '3':
?? ??? ??? ??? ?cls();
?? ??? ??? ??? ?changeairline();
?? ??? ??? ??? ?break;
?? ??? ?case '4':
?? ??? ??? ??? ?cls();
?? ??? ??? ??? ?searchuser();
?? ??? ??? ??? ?break;
?? ??? ?case '5':
?? ??? ??? ??? ?cls();
?? ??? ??? ??? ?search();
?? ??? ??? ??? ?break;
?? ??? ?case '6':
?? ??? ??? ??? ?sign = 1;
?? ??? ??? ??? ?cls();
?? ??? ??? ??? ?break;
?? ??? ?case '7':
?? ??? ??? ??? ?cls();
?? ??? ??? ??? ?over();
?? ??? ??? ??? ?cls();
?? ??? ??? ??? ?break;
?? ??? ?default :
?? ??? ??? ??? ?printf("輸入無(wú)效!");
?? ??? ??? ??? ?break;
?? ?}
?? ??? ?if (sign)
?? ??? ?{
?? ??? ??? ?break;
?? ??? ?}
?? ?}
?? ?
}
void mlmenu()
{
?? ?printf(" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 管理員頁(yè)面\n");
?? ?printf(" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?**************************************************\n");
?? ?printf(" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?** ? ? ? ? ? ? ? 1.增加航班信息 ? ? ? ? ? ? ? ? **\n");?
?? ?printf(" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?** ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?**\n");
?? ?printf(" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?** ? ? ? ? ? ? ? 2.刪除航班信息 ? ? ? ? ? ? ? ? **\n");
?? ?printf(" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?** ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?**\n");
?? ?printf(" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?** ? ? ? ? ? ? ? 3.修改航班信息 ? ? ? ? ? ? ? ? **\n");
?? ?printf(" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?** ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?**\n");
?? ?printf(" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?** ? ? ? ? ? ? ? 4.查看客戶(hù)信息 ? ? ? ? ? ? ? ? **\n");
?? ?printf(" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?** ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?**\n");
?? ?printf(" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?** ? ? ? ? ? ? ? 5.瀏覽航班信息 ? ? ? ? ? ? ? ? **\n");
?? ?printf(" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?** ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?**\n");
?? ?printf(" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?** ? ? ? ? ? ? ? 6.返回 ? ? ? ? ? ? ? ? ? ? ? ? **\n");
?? ?printf(" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?** ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?**\n");?? ?
?? ?printf(" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?** ? ? ? ? ? ? ? 7.退出 ? ? ? ? ? ? ? ? ? ? ? ? **\n");
?? ?printf(" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?**************************************************\n");
?? ?printf("請(qǐng)按鍵選擇:");
}

void ulmenu()
{
?? ?printf(" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?乘客頁(yè)面\n");
?? ?printf(" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?**************************************************\n");
?? ?printf(" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?** ? ? ? ? ? ? ? 1.訂票 ? ? ? ? ? ? ? ? ? ? ? ? **\n");?
?? ?printf(" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?** ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?**\n");
?? ?printf(" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?** ? ? ? ? ? ? ? 2.退票 ? ? ? ? ? ? ? ? ? ? ? ? **\n");
?? ?printf(" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?** ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?**\n");
?? ?printf(" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?** ? ? ? ? ? ? ? 3.查看已訂機(jī)票 ? ? ? ? ? ? ? ? **\n");
?? ?printf(" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?** ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?**\n");
?? ?printf(" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?** ? ? ? ? ? ? ? 4.瀏覽航班信息 ? ? ? ? ? ? ? ? **\n");
?? ?printf(" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?** ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?**\n");
?? ?printf(" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?** ? ? ? ? ? ? ? 5.返回 ? ? ? ? ? ? ? ? ? ? ? ? **\n");
?? ?printf(" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?** ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?**\n");
?? ?printf(" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?** ? ? ? ? ? ? ? 6.退出 ? ? ? ? ? ? ? ? ? ? ? ? **\n");
?? ?printf(" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?**************************************************\n");
?? ?printf("請(qǐng)按鍵選擇:");
}

void mainmenu()
{
?? ?printf("\n\n");
?? ?printf(" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?歡 迎 使 用 航 空 管 理 系 統(tǒng) !\n");
?? ?printf(" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?**************************************************\n");
?? ?printf(" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?** ? ? ? ? ? ? ? ? ? ?1.登錄 ? ? ? ? ? ? ? ? ? ?**\n");
?? ?printf(" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?** ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?**\n");
?? ?printf(" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?** ? ? ? ? ? ? ? ? ? ?2.注冊(cè) ? ? ? ? ? ? ? ? ? ?**\n");
?? ?printf(" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?** ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?**\n");
?? ?printf(" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?** ? ? ? ? ? ? ? ? ? ?3.找回密碼 ? ? ? ? ? ? ? ?**\n");
?? ?printf(" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?** ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?**\n");
?? ?printf(" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?** ? ? ? ? ? ? ? ? ? ?4.修改密碼 ? ? ? ? ? ? ? ?**\n");
?? ?printf(" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?** ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?**\n");
?? ?printf(" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?** ? ? ? ? ? ? ? ? ? ?5.退出 ? ? ? ? ? ? ? ? ? ?**\n");
?? ?printf(" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?**************************************************\n");
?? ?printf("請(qǐng)按鍵選擇:");
}

void Registermenu()
{
?? ?printf(" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 注冊(cè)頁(yè)面\n");
?? ?printf(" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?**************************************************\n");
?? ?printf(" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?** ? ? ? ? ? ? ? ? 1.管理員注冊(cè) ? ? ? ? ? ? ? ? **\n");
?? ?printf(" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?** ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?**\n");
?? ?printf(" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?** ? ? ? ? ? ? ? ? 2.乘客注冊(cè) ? ? ? ? ? ? ? ? ? **\n");
?? ?printf(" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?** ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?**\n");
?? ?printf(" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?** ? ? ? ? ? ? ? ? 3.返回 ? ? ? ? ? ? ? ? ? ? ? **\n");
?? ?printf(" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?** ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?**\n");
?? ?printf(" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?** ? ? ? ? ? ? ? ? 4.退出 ? ? ? ? ? ? ? ? ? ? ? **\n");
?? ?printf(" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?**************************************************\n");
?? ?printf("請(qǐng)按鍵選擇:");
}

void Loginmenu()
{
?? ?printf(" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 登錄頁(yè)面\n");
?? ?printf(" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?**************************************************\n");
?? ?printf(" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?** ? ? ? ? ? ? ? ? 1.管理員登錄 ? ? ? ? ? ? ? ? **\n");
?? ?printf(" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?** ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?**\n");
?? ?printf(" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?** ? ? ? ? ? ? ? ? 2.用戶(hù)登錄 ? ? ? ? ? ? ? ? ? **\n");
?? ?printf(" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?** ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?**\n");
?? ?printf(" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?** ? ? ? ? ? ? ? ? 3.返回 ? ? ? ? ? ? ? ? ? ? ? **\n");
?? ?printf(" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?** ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?**\n");
?? ?printf(" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?** ? ? ? ? ? ? ? ? 4.退出 ? ? ? ? ? ? ? ? ? ? ? **\n");
?? ?printf(" ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?**************************************************\n");
?? ?printf("請(qǐng)按鍵選擇:");
}

void changemenu()
{
?? ??? ?printf("\n\n");
?? ??? ?printf("\t\t\t\t*******************************\n");
?? ??? ?printf("\t\t\t\t** ? ? ?1.修改航班號(hào) ? ? ? ? **\n");
?? ??? ?printf("\t\t\t\t** ? ? ? ? ? ? ? ? ? ? ? ? ? **\n");
?? ??? ?printf("\t\t\t\t** ? ? ?2.修改飛機(jī)號(hào) ? ? ? ? **\n");
?? ??? ?printf("\t\t\t\t** ? ? ? ? ? ? ? ? ? ? ? ? ? **\n");
?? ??? ?printf("\t\t\t\t** ? ? ?3.修改出發(fā)地點(diǎn) ? ? ? **\n");
?? ??? ?printf("\t\t\t\t** ? ? ? ? ? ? ? ? ? ? ? ? ? **\n");
?? ??? ?printf("\t\t\t\t** ? ? ?4.修改目的地 ? ? ? ? **\n");
?? ??? ?printf("\t\t\t\t** ? ? ? ? ? ? ? ? ? ? ? ? ? **\n");
?? ??? ?printf("\t\t\t\t** ? ? ?5.修改起飛時(shí)間 ? ? ? **\n");
?? ??? ?printf("\t\t\t\t** ? ? ? ? ? ? ? ? ? ? ? ? ? **\n");
?? ??? ?printf("\t\t\t\t** ? ? ?6.修改票數(shù) ? ? ? ? ? **\n");
?? ??? ?printf("\t\t\t\t** ? ? ? ? ? ? ? ? ? ? ? ? ? **\n");
?? ??? ?printf("\t\t\t\t** ? ? ?7.返回 ? ? ? ? ? ? ? **\n");
?? ??? ?printf("\t\t\t\t*******************************");
?? ??? ?printf("\n\n");
}
void searchmenu()
{
?? ?printf("\n\n\n\n");
?? ?printf("\t\t\t\t***********************************\n");
?? ?printf("\t\t\t\t** ? ? ? ? 1.查看航班信息 ? ? ? ?**\n");
?? ?printf("\t\t\t\t** ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? **\n");
?? ?printf("\t\t\t\t** ? ? ? ? 2.按航班號(hào)瀏覽 ? ? ? ?**\n");
?? ?printf("\t\t\t\t** ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? **\n");
?? ?printf("\t\t\t\t** ? ? ? ? 3.按起飛時(shí)間瀏覽 ? ? ?**\n");
?? ?printf("\t\t\t\t** ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? **\n");
?? ?printf("\t\t\t\t** ? ? ? ? 4.按機(jī)票數(shù)瀏覽 ? ? ? ?**\n");
?? ?printf("\t\t\t\t** ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? **\n");
?? ?printf("\t\t\t\t** ? ? ? ? 5.返回 ? ? ? ? ? ? ? ?**\n");
?? ?printf("\t\t\t\t** ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? **\n");
?? ?printf("\t\t\t\t** ? ? ? ? 6.退出 ? ? ? ? ? ? ? ?**\n");
?? ?printf("\t\t\t\t***********************************\n");
?? ?printf("請(qǐng)按鍵選擇:");
}

void ruser(user *uhead)
{
?? ?FILE *fp;
?? ?fp = fopen("user","a+");
?? ?ucnt = fread(uhead,sizeof(user),1,fp);
?? ?fclose(fp);
?? ?uend = uhead;
?? ?readuserfile();
}
void rmanger(manger *mhead)
{
?? ?FILE *fp;
?? ?fp = fopen("manger","a+");
?? ?mcnt = fread(mhead,sizeof(manger),1,fp);
?? ?fclose(fp);
?? ?mend = mhead;
?? ?readmangerfile();
}
void rairline(airline *ahead)
{
?? ?FILE *fp;
?? ?fp = fopen("airline","a+");
?? ?acnt = fread(ahead,sizeof(airline),1,fp);
?? ?fclose(fp);
?? ?aend = ahead;
?? ?readairlinefile();
}
void uRegister()
{
?? ?date();
?? ?user *p;
?? ?char username[1000];
?? ?char scert[1000];
?? ?char securityscert[2000];
?? ?FILE *fp;

?? ?if (ucnt == 0) ? ? ? ? ?//第一次添加
?? ?{
?? ??? ?printf("\n\n\n\n\n\n\n");
?? ??? ?printf("-------------請(qǐng)輸入賬戶(hù)(按0退出):");
?? ??? ?while (gets(username))
?? ??? ?{
?? ??? ??? ?if (strcmp(username,"0") == 0)
?? ??? ??? ?{
?? ??? ??? ??? ?return ;
?? ??? ??? ?}
?? ??? ??? ?if (strlen(username) <= 16 && !exist(username, 0))
?? ??? ??? ??? ?break;
?? ??? ??? ?else if (exist(username, 0))
?? ??? ??? ?{
?? ??? ??? ??? ?printf("-------------該賬戶(hù)已存在!請(qǐng)重新輸入(按0退出):");
?? ??? ??? ?}
?? ??? ??? ?else
?? ??? ??? ?{
?? ??? ??? ??? ?printf("-------------請(qǐng)輸入長(zhǎng)度為1到16位的賬戶(hù):");
?? ??? ??? ?}
?? ??? ?}
?? ??? ?strcpy(uhead->username, username);
?? ??? ?printf("-------------請(qǐng)輸入密碼:");
?? ??? ?while (gets(scert))
?? ??? ?{
?? ??? ??? ?if (strlen(scert) <= 16)
?? ??? ??? ??? ?break;
?? ??? ??? ?else
?? ??? ??? ??? ?printf("-------------請(qǐng)輸入長(zhǎng)度為1到16的密碼:");
?? ??? ?}
?? ??? ?strcpy(uhead->scert, scert);
?? ??? ?printf("-------------請(qǐng)輸入您的密保:");
?? ??? ?while (gets(securityscert))
?? ??? ?{
?? ??? ??? ?if (strlen(securityscert) <= 16)
?? ??? ??? ?{
?? ??? ??? ??? ?break;
?? ??? ??? ?} else?
?? ??? ??? ?{
?? ??? ??? ??? ?printf("-------------請(qǐng)輸入長(zhǎng)度為1到16位的密保:");
?? ??? ??? ?}
?? ??? ?}
?? ??? ?strcpy(uhead->securityscert,securityscert);
?? ??? ?uhead->bookcnt = 0;
?? ??? ?uend = uhead;
?? ??? ?uend->next = NULL;
?
?? ?}
?? ?else
?? ?{
?? ??? ?p = (user*)malloc(sizeof(user));
?? ??? ?printf("\n\n\n\n\n\n\n");
?? ??? ?printf("-------------請(qǐng)輸入賬戶(hù)(按0退出):");
?? ??? ?while (gets(username))
?? ??? ?{
?? ??? ??? ?if (strcmp(username,"0") == 0)
?? ??? ??? ?{
?? ??? ??? ??? ?return ;
?? ??? ??? ?}
?? ??? ??? ?if (strlen(username) <= 16 && !exist(username, 0))
?? ??? ??? ??? ?break;
?? ??? ??? ?else if (exist(username, 0))
?? ??? ??? ?{
?? ??? ??? ??? ?printf("-------------該賬戶(hù)已存在!請(qǐng)重新輸入(按0退出):");
?? ??? ??? ?}
?? ??? ??? ?else
?? ??? ??? ?{
?? ??? ??? ??? ?printf("-------------請(qǐng)輸入長(zhǎng)度為1到16位的賬戶(hù):");
?? ??? ??? ?}
?? ??? ?}
?? ??? ?strcpy(p->username, username);
?? ??? ?printf("-------------請(qǐng)輸入密碼:");?? ??? ?
?? ??? ?while (gets(scert))
?? ??? ?{
?? ??? ??? ?if (strlen(scert) <= 16)
?? ??? ??? ??? ?break;
?? ??? ??? ?else
?? ??? ??? ??? ?printf("-------------請(qǐng)輸入長(zhǎng)度為1到16的密碼:");
?? ??? ?}
?? ??? ?strcpy(p->scert, scert);
?? ??? ?printf("-------------請(qǐng)輸入您的密保:");
?? ??? ?while (gets(securityscert))
?? ??? ?{
?? ??? ??? ?if (strlen(securityscert) <= 16)
?? ??? ??? ?{
?? ??? ??? ??? ?break;
?? ??? ??? ?} else?
?? ??? ??? ?{
?? ??? ??? ??? ?printf("-------------請(qǐng)輸入長(zhǎng)度為1到16位的密保:");
?? ??? ??? ?}
?? ??? ?}
?? ??? ?strcpy(p->securityscert,securityscert);
?? ??? ?p->bookcnt = 0;
?? ??? ?uend->next = p;
?? ??? ?uend = p;
?? ??? ?uend->next = NULL;
?? ?}
?? ?ucnt++;
?? ?writefile(0);
?? ?cls();
?? ??? ?printf("\n\n\n\n\n\n\n");
?? ??? ?printf("\t\t\t\t\t*******************************\n");?
?? ??? ?printf("\t\t\t\t\t** ? ? ? ? ? ? ? ? ? ? ? ? ? **\n");
?? ??? ?printf("\t\t\t\t\t ? ? ? 乘客%s創(chuàng)建成功! ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?\n",uend->username);
?? ??? ?printf("\t\t\t\t\t** ? ? 即將跳轉(zhuǎn)至主頁(yè)面... ? **\n");
?? ??? ?printf("\t\t\t\t\t** ? ? ? ? ? ? ? ? ? ? ? ? ? **\n");
?? ??? ?printf("\t\t\t\t\t*******************************\n");
?? ?Sleep(3000);
}

int exist(char *name, int flag)//1 為存在 ? 0 為不存在?
{
?? ?if (flag == 0)
?? ?{
?? ??? ?user *p = uhead;
?? ??? ?while (p != NULL && ucnt != 0)
?? ??? ?{
?? ??? ??? ?if (strcmp(name,p->username) == 0)
?? ??? ??? ?{
?? ??? ??? ??? ?return 1;
?? ??? ??? ?}
?? ??? ??? ?p = p->next;
?? ??? ?}
?? ?}
?? ?else if (flag == 1)
?? ?{
?? ??? ?manger *p = mhead;
?? ??? ?while (p != NULL)
?? ??? ?{
?? ??? ??? ?if (strcmp(name,p->mangername) == 0)
?? ??? ??? ?{
?? ??? ??? ??? ?return 1;
?? ??? ??? ?}
?? ??? ??? ?p = p->next;?
?? ??? ?}
?? ?}
?? ?return 0;
}

void uLogin()?
{
?? ?date();
?? ?int cnt = 4;
?? ?int flag = 0;
?? ?int k = 0;
?? ?int i;
?? ?char c;
?? ?user *p = uhead;
?? ?char username[2000];
?? ?char scert[2000];
?? ?printf("\n\n\n\n\n\n\n");
?? ?FILE *fp;
?? ?fp = fopen("user","r");
?? ?char ch;
?? ?ch = fgetc(fp);
?? ?rewind(fp);
?? ?if (ch == EOF)
?? ?{
?? ??? ?printf("-------------暫無(wú)乘客賬號(hào)信息??!\n-------------請(qǐng)先前往注冊(cè)!");
?? ??? ?getchar();
?? ??? ?return ;
?? ?}
?? ?
?? ?printf("-------------請(qǐng)輸入您的賬戶(hù)(按0退出):");
//?? ?gets(username);
//?? ?getch();?
?? ?while (gets(username))
?? ?{
?? ??? ?if (strcmp(username,"0") == 0)
?? ??? ?{
?? ??? ??? ?return ;
?? ??? ?}?
?? ??? ?if (strlen(username) <= 16)
?? ??? ?{
?? ??? ??? ?break;
?? ??? ?} else?
?? ??? ?{
?? ??? ??? ?printf("-------------請(qǐng)輸入長(zhǎng)度為1到16位的賬戶(hù):");
?? ??? ?}
?? ?}
?? ?printf("-------------請(qǐng)輸入您的密碼(按0退出):");
//?? ?gets(scert
?? ??? ?for (i = 0; (c = getch()) != '\r';)
?? ??? ?{
?? ??? ??? ?if (c == '0')
?? ??? ??? ?{
?? ??? ??? ??? ?return ;
?? ??? ??? ?}
?? ??? ??? ?if (i <= 15 && isprint(c))
?? ??? ??? ?{
?? ??? ??? ??? ?scert[i] = c;
?? ??? ??? ??? ?i ++;
?? ??? ??? ??? ?k ++;
?? ??? ??? ??? ?printf("*");
?? ??? ??? ?}
?? ??? ??? ?if ( k > 0 && c > 0 && c == '\b')
?? ??? ??? ?{
?? ??? ??? ? ? ?i --;
?? ??? ??? ? ? ?k --;
?? ??? ??? ??? ?printf("\b");
?? ??? ??? ??? ?printf(" ");
?? ??? ??? ??? ?printf("\b");
?? ??? ? ? ?}
?? ??? ?}
?? ?scert[i] = '\0';
?? ?printf("\n");
?? ?while (p != NULL)
?? ?{
?? ??? ?if (strcmp(p->username,username) == 0)
?? ??? ?{
?? ??? ??? ?flag = 1;
?? ??? ??? ?while (strcmp(p->scert,scert) != 0)
?? ??? ??? ?{
?? ??? ??? ??? ?cnt --;
?? ??? ??? ??? ?if (cnt == 1)
?? ??? ??? ??? ?{
?? ??? ??? ??? ??? ?cls();
?? ??? ??? ??? ??? ?printf("\n\n\n\n\n\n\n");
?? ??? ??? ??? ??? ?printf("-------------密碼輸入次數(shù)已用完!\n-------------即將退出登錄頁(yè)面...");
?? ??? ??? ??? ??? ?Sleep(3000);
?? ??? ??? ??? ??? ?cls();
?? ??? ??? ??? ??? ?return ;
?? ??? ??? ??? ?}
?? ??? ??? ??? ?printf("-------------密碼錯(cuò)誤!您還有%d次機(jī)會(huì)!\n",cnt - 1);
?? ??? ??? ??? ?printf("-------------請(qǐng)重新輸入:");?
?? ??? ??? ??? ?gets(scert);
?? ??? ??? ?}
?? ??? ??? ?printf("-------------乘客%s登錄成功!\n-------------即將跳轉(zhuǎn)至乘客頁(yè)面...",p->username);
?? ??? ??? ?Sleep(3000);
?? ??? ??? ?cls();
?? ??? ??? ?userfunction(p);
?? ??? ?}
?? ??? ?p = p->next;
?? ?}
?? ?if (flag == 0)
?? ?{
?? ??? ?printf("-------------不存在此賬號(hào)!\n-------------請(qǐng)先前往注冊(cè)!\n");
?? ??? ?printf("-------------即將跳轉(zhuǎn)至主頁(yè)面...");
?? ??? ?Sleep(2000);
?? ?}
}

void mLogin()
{
?? ?date();
?? ?int cnt = 4;
?? ?int flag = 0;
?? ?int k = 0;
?? ?int i;
?? ?char c;
?? ?manger *p = mhead;
?? ?char mangername[2000];
?? ?char scert[2000];
?? ?printf("\n\n\n\n\n\n\n");
?? ?FILE *fp;
?? ?fp = fopen("manger","r");
?? ?char ch;
?? ?ch = fgetc(fp);
?? ?rewind(fp);
?? ?if (ch == EOF)
?? ?{
?? ??? ?printf("-------------暫無(wú)管理員賬號(hào)信息!!\n-------------請(qǐng)先前往注冊(cè)!");
?? ??? ?getchar();
?? ??? ?return ;?
?? ?}
?? ?printf("-------------請(qǐng)輸入您的賬戶(hù)(按0退出):");
?? ?while (gets(mangername))
?? ?{
?? ??? ?if (strcmp(mangername,"0") == 0)
?? ??? ?{
?? ??? ??? ?return ;
?? ??? ?}
?? ??? ?if (strlen(mangername) <= 16)
?? ??? ?{
?? ??? ??? ?break;
?? ??? ?} else?
?? ??? ?{
?? ??? ??? ?printf("-------------請(qǐng)輸入長(zhǎng)度為1到16位的賬戶(hù):");
?? ??? ?}
?? ?}
?? ?
?? ?printf("-------------請(qǐng)輸入您的密碼(按0退出):");
?? ?for (i = 0; (c = getch()) != '\r';)
?? ?{
?? ??? ?if (c == '0')
?? ??? ?{
?? ??? ??? ?return ;
?? ??? ?}
?? ??? ?if (i <= 15 && isprint(c))
?? ??? ?{
?? ??? ??? ?scert[i] = c;
?? ??? ??? ?i ++;
?? ??? ??? ?k ++;
?? ??? ??? ?printf("*");
?? ??? ?}
?? ??? ?if ( k > 0 && c > 0 && c == '\b')
?? ??? ?{
?? ??? ? ? ?i --;
?? ??? ? ? ?k --;
?? ??? ??? ?printf("\b");
?? ??? ??? ?printf(" ");
?? ??? ??? ?printf("\b");
?? ? ? ?}
?? ?}
?? ?scert[i] = '\0';
?? ?printf("\n");
?? ?
?? ?while (p)
?? ?{
?? ??? ?if (strcmp(p->mangername,mangername) == 0)
?? ??? ?{
?? ??? ??? ?
?? ??? ??? ?flag = 1;
?? ??? ??? ?while (strcmp(p->scert,scert) != 0)
?? ??? ??? ?{
?? ??? ??? ??? ?cnt --;
?? ??? ??? ??? ?if (cnt == 1)
?? ??? ??? ??? ?{
?? ??? ??? ??? ??? ?cls();
?? ??? ??? ??? ??? ?printf("\n\n\n\n\n\n\n");
?? ??? ??? ??? ??? ?printf("-------------密碼輸入次數(shù)已用完!\n-------------即將退出登錄頁(yè)面...");
?? ??? ??? ??? ??? ?Sleep(3000);
?? ??? ??? ??? ??? ?cls();
?? ??? ??? ??? ??? ?return ;
?? ??? ??? ??? ?}
?? ??? ??? ??? ?printf("-------------密碼錯(cuò)誤!您還有%d次機(jī)會(huì)!\n",cnt - 1);
?? ??? ??? ??? ?printf("-------------請(qǐng)重新輸入:");?
//?? ??? ??? ??? ?gets(scert);
for (i = 0; (c = getch()) != '\r';)
?? ?{
?? ??? ?if (c == '0')
?? ??? ?{
?? ??? ??? ?return ;
?? ??? ?}
?? ??? ?if (i <= 15 && isprint(c))
?? ??? ?{
?? ??? ??? ?scert[i] = c;
?? ??? ??? ?i ++;
?? ??? ??? ?k ++;
?? ??? ??? ?printf("*");
?? ??? ?}
?? ??? ?if ( k > 0 && c > 0 && c == '\b')
?? ??? ?{
?? ??? ? ? ?i --;
?? ??? ? ? ?k --;
?? ??? ??? ?printf("\b");
?? ??? ??? ?printf(" ");
?? ??? ??? ?printf("\b");
?? ? ? ?}
?? ?}
?? ?scert[i] = '\0';
?? ?printf("\n");
?? ??? ??? ?}
?? ??? ??? ?printf("-------------管理員%s登錄成功!\n-------------即將跳轉(zhuǎn)至管理員頁(yè)面...",p->mangername);
//?? ??? ??? ?load();
?? ??? ??? ?//cls();
?? ??? ??? ?mangerfunction();
?? ??? ??? ?return ;
?? ??? ?}
?? ??? ?p = p->next;
?? ?}
?? ?if (flag == 0)
?? ?{
?? ??? ?printf("-------------不存在此賬號(hào)!\n-------------請(qǐng)先前往注冊(cè)!\n");
?? ??? ?printf("-------------即將跳轉(zhuǎn)至主頁(yè)面...");
?? ??? ?Sleep(2000);
?? ?}
}

void mRegister()
{
?? ?date();
?? ?FILE *fp;
?? ?char mangerscert[1000];
?? ?char mname[1000];
?? ?char scert[1000];
?? ?char securityscert[2000];
?? ?printf("\n\n\n\n\n\n\n");
?? ?printf("-------------請(qǐng)輸入管理員驗(yàn)證碼:");
//?? ?getchar();
?? ?gets(mangerscert);
?? ?int cnt = 2;
?? ?while (--cnt >= 0)
?? ?{
?? ??? ?if (strcmp(mangerscert,mscert) == 0)
?? ??? ?{
?? ??? ??? ?printf("-------------管理員驗(yàn)證成功??!\n-------------即將進(jìn)入注冊(cè)頁(yè)面...");
?? ??? ??? ?Sleep(1000);
?? ??? ??? ?cls();
?? ??? ??? ?break;
?? ??? ?} else?
?? ??? ?{
?? ??? ??? ?printf("-------------管理員驗(yàn)證失?。?!\n-------------您還有%d次機(jī)會(huì)!!\n",cnt + 1);
?? ??? ??? ?printf("-------------請(qǐng)重新輸入:");
?? ??? ??? ?gets(mangerscert);
?? ??? ?}
?? ??? ?if (cnt == 0)
?? ??? ?{
?? ??? ??? ?printf("-------------輸入次數(shù)已用完!!\n-------------即將退出管理員注冊(cè)系統(tǒng)...");
?? ??? ??? ?Sleep(2000);
?? ??? ??? ?cls();
?? ??? ??? ?return ;
?? ??? ?}
?? ?}

?? ?manger *p;
?? ?if (mcnt == 0)
?? ?{
?? ??? ?printf("\n\n\n\n\n\n\n");
?? ??? ?printf("-------------請(qǐng)輸入賬戶(hù)(按0退出):");
?? ??? ?while (gets(mname))
?? ??? ?{
?? ??? ??? ?if (strcmp(mname,"0") == 0)
?? ??? ??? ?{
?? ??? ??? ??? ?return ;
?? ??? ??? ?}
?? ??? ??? ?if (strlen(mname) <= 16 )
?? ??? ??? ?{
?? ??? ??? ??? ?break;
?? ??? ??? ?} else
?? ??? ??? ?{
?? ??? ??? ??? ?printf("-------------請(qǐng)輸入長(zhǎng)度為1到16位的賬戶(hù):");
?? ??? ??? ?}
?? ??? ?}
?? ??? ?strcpy(mhead->mangername,mname);
?? ??? ?printf("-------------請(qǐng)輸入密碼:");
?? ??? ?while (gets(scert))
?? ??? ?{
?? ??? ??? ?if (strlen(scert) <= 16)
?? ??? ??? ?{
?? ??? ??? ??? ?break;
?? ??? ??? ?} else?
?? ??? ??? ?{
?? ??? ??? ??? ?printf("-------------請(qǐng)輸入長(zhǎng)度為1到16位密碼:");
?? ??? ??? ?}
?? ??? ?}
?? ??? ?strcpy(mhead->scert,scert);
?? ??? ?printf("-------------請(qǐng)輸入您的密保:");
?? ??? ?while (gets(securityscert))
?? ??? ?{
?? ??? ??? ?if (strlen(securityscert) <= 16)
?? ??? ??? ?{
?? ??? ??? ??? ?break;
?? ??? ??? ?} else?
?? ??? ??? ?{
?? ??? ??? ??? ?printf("-------------請(qǐng)輸入長(zhǎng)度為1到16位的密保:");
?? ??? ??? ?}
?? ??? ?}
?? ??? ?strcpy(mhead->securityscert,securityscert);
?? ??? ?mend = mhead;
?? ??? ?mend->next = NULL;
?? ?}
?? ?else?
?? ?{
?? ??? ?p = (manger*)malloc(sizeof(manger));
?? ??? ?printf("\n\n\n\n\n\n\n");
?? ??? ?printf("-------------請(qǐng)輸入賬戶(hù)(按0退出):");
?? ??? ?while (gets(mname))
?? ??? ?{
?? ??? ??? ?if (strcmp(mname,"0") == 0)
?? ??? ??? ?{
?? ??? ??? ??? ?return ;
?? ??? ??? ?}?
?? ??? ??? ?if (strlen(mname) <= 16 && !exist(mname,1))
?? ??? ??? ?{
?? ??? ??? ??? ?break;
?? ??? ??? ?}
?? ??? ??? ?else if (exist(mname,1))
?? ??? ??? ?{
?? ??? ??? ??? ?printf("-------------該賬戶(hù)已存在!請(qǐng)重新輸入!(按0退出)");?
?? ??? ??? ?} else
?? ??? ??? ?{
?? ??? ??? ??? ?printf("-------------請(qǐng)輸入長(zhǎng)度為1到16位的賬戶(hù):");
?? ??? ??? ?}
?? ??? ?}
?? ??? ?strcpy(p->mangername,mname);
?? ??? ?printf("-------------請(qǐng)輸入密碼:");
?? ??? ?while (gets(scert))
?? ??? ?{
?? ??? ??? ?if (strlen(scert) <= 16)
?? ??? ??? ?{
?? ??? ??? ??? ?break;
?? ??? ??? ?} else?
?? ??? ??? ?{
?? ??? ??? ??? ?printf("-------------請(qǐng)輸入長(zhǎng)度為1到16位的密碼:");
?? ??? ??? ?}
?? ??? ?}
?? ??? ?strcpy(p->scert,scert);
?? ??? ?printf("-------------請(qǐng)輸入您的密保:");
?? ??? ?while (gets(securityscert))
?? ??? ?{
?? ??? ??? ?if (strlen(securityscert) <= 16)
?? ??? ??? ?{
?? ??? ??? ??? ?break;
?? ??? ??? ?} else?
?? ??? ??? ?{
?? ??? ??? ??? ?printf("-------------請(qǐng)輸入長(zhǎng)度為1到16位的密保:");
?? ??? ??? ?}
?? ??? ?}
?? ??? ?strcpy(p->securityscert,securityscert);
?? ??? ?mend->next = p;
?? ??? ?mend = p;
?? ??? ?mend->next = NULL;
?? ?}
?? ?mcnt ++;
?? ?
?? ?writefile(1);
?? ?cls();
?? ??? ?printf("\n\n\n\n\n\n\n");
?? ??? ?printf("\t\t\t\t\t*******************************\n");?
?? ??? ?printf("\t\t\t\t\t** ? ? ? ? ? ? ? ? ? ? ? ? ? **\n");
?? ??? ?printf("\t\t\t\t\t ? ? ? 管理員%s創(chuàng)建成功! ? ? ?\n",mend->mangername);
?? ??? ?printf("\t\t\t\t\t** ? ? 即將跳轉(zhuǎn)至主頁(yè)面... ? **\n");
?? ??? ?printf("\t\t\t\t\t** ? ? ? ? ? ? ? ? ? ? ? ? ? **\n");
?? ??? ?printf("\t\t\t\t\t*******************************\n");
?? ?Sleep(3000);
}
void title()
{
?? ?system("color F2");
?? ?system("title **************************************************************************歡迎使用航空訂票系統(tǒng)****************************************************************************");?
}
void date()
{
?? ?system("date/t");
?? ?system("time/t");
}

void cls()
{
?? ?system("cls");
}

void over()
{
?? ?//hualihushao2();
?? ?cls();
?? ?system("color 6");
?? ?int time = 6;
?? ?printf("\n\n\n\n\n\n\n\n\n");
?? ?printf("\t\t\t\t\t\t感謝您的使用!!\n\n\n\n\n");
?? ?printf(" 程序即將關(guān)閉...");
?? ?while (--time >= 1)
?? ?{
?? ??? ?printf("\r%d",time);
?? ??? ?printf("\b");
?? ??? ?Sleep(1000);
?? ?}
?? ?cls();
?? ?exit(0);
?? ?
}
void readuserfile()
{
?? ?user *p = uhead;
?? ?FILE *fp = fopen("user","ab+");
?? ?while (fread(p,sizeof(user),1,fp))
?? ?{
?? ??? ?if (p->next != NULL)
?? ??? ?{
?? ??? ??? ?p = (user*)malloc(sizeof(user));
?? ??? ??? ?uend->next = p;
?? ??? ??? ?uend = p;
?? ??? ??? ?uend->next = NULL;
?? ??? ?}
?? ?}
}
void readmangerfile()
{
?? ?manger *p;
?? ?FILE *fp;
?
?? ?p = mhead;
?? ?fp = fopen("manger", "ab+");
?? ?while (fread(p, sizeof(manger), 1, fp))
?? ?{
?? ??? ?if (p->next != NULL)
?? ??? ?{
?? ??? ??? ?p = (manger*)malloc(sizeof(manger));
?
?? ??? ??? ?mend->next = p;
?? ??? ??? ?mend = p;
?? ??? ??? ?mend->next = NULL;
?? ??? ?}
?? ?}
}
void readairlinefile()
{
?? ?airline *p;
?? ?FILE *fp;
?? ?
?? ?p = ahead;
?? ?fp = fopen("airline","ab+");
?? ?while (fread(p,sizeof(airline),1,fp))
?? ?{
?? ??? ?if(p->next != NULL)
?? ??? ?{
?? ??? ??? ?p = (airline*)malloc(sizeof(airline));
?? ??? ??? ?aend->next = p;
?? ??? ??? ?aend = p;
?? ??? ??? ?aend->next = NULL;
?? ??? ?}
?? ?}
}
void addairline()
{
?? ?FILE *fp;
?? ?airline *p;
?? ?char airlinenum[2000];
?? ?if (acnt == 0)
?? ?{
?? ??? ?printf("-------------請(qǐng)輸入航班號(hào)(按0返回):");
//?? ??? ?getchar();
?? ??? ?while (gets(airlinenum))
?? ??? ?{
?? ??? ??? ?if (strcmp(airlinenum,"0") == 0)
?? ??? ??? ?{
?? ??? ??? ??? ?return ;
?? ??? ??? ?}
?? ??? ??? ?if (strlen(airlinenum) <= 16)
?? ??? ??? ?{
?? ??? ??? ??? ?break;
?? ??? ??? ?} else?
?? ??? ??? ?{
?? ??? ??? ??? ?printf("-------------請(qǐng)輸入長(zhǎng)度為1到16位的航班號(hào):");
?? ??? ??? ?}
?? ??? ?}
?? ??? ?strcpy(ahead->airlinenum,airlinenum);
?? ??? ?printf("-------------請(qǐng)輸入飛機(jī)號(hào):");
//?? ??? ?getchar();
?? ??? ?long long int airplanenum;
?? ??? ?while (scanf("%lld",&airplanenum))
?? ??? ?{
?? ??? ??? ?if (airplanenum <= 0)
?? ??? ??? ?{
?? ??? ??? ??? ?printf("-------------請(qǐng)輸入正確格式的飛機(jī)號(hào):");
?? ??? ??? ?} else if (airplanenum > 999999)
?? ??? ??? ?{
?? ??? ??? ??? ?printf("-------------請(qǐng)輸入長(zhǎng)度為1-6位的飛機(jī)號(hào):");
?? ??? ??? ?} else
?? ??? ??? ?{
?? ??? ??? ??? ?ahead->airplanenum = airplanenum;
?? ??? ??? ??? ?break;
?? ??? ??? ?}
?? ??? ?}
?? ??? ?printf("-------------請(qǐng)輸入出發(fā)地點(diǎn):");
?? ??? ?getchar();
?? ??? ?char dep[1000];
?? ??? ?while (gets(dep))
?? ??? ?{
?? ??? ??? ?if (strlen(dep) <= 16)
?? ??? ??? ?{
?? ??? ??? ??? ?strcpy(ahead->dep,dep);
?? ??? ??? ??? ?break;
?? ??? ??? ?} else?
?? ??? ??? ?{
?? ??? ??? ??? ?printf("-------------請(qǐng)輸入長(zhǎng)度為1到16位的出發(fā)地點(diǎn):");
?? ??? ??? ?}
?? ??? ?}
//?? ??? ?getchar();
?? ??? ?printf("-------------請(qǐng)輸入目的地:");
?? ??? ?
?? ??? ?char des[1000];
?? ??? ?while (gets(des))
?? ??? ?{
?? ??? ??? ?if (strlen(des) <= 16)
?? ??? ??? ?{
?? ??? ??? ??? ?strcpy(ahead->des,des);
?? ??? ??? ??? ?break;
?? ??? ??? ?} else?
?? ??? ??? ?{
?? ??? ??? ??? ?printf("-------------請(qǐng)輸入長(zhǎng)度為1到16位的目的地:");
?? ??? ??? ?}
?? ??? ?};
?? ??? ?printf("-------------請(qǐng)輸入機(jī)票數(shù):");
?? ??? ?int ticks;
?? ??? ?while (scanf("%d",&ticks))
?? ??? ?{
?? ??? ??? ?if (ticks <= 0)
?? ??? ??? ?{
?? ??? ??? ??? ?printf("-------------請(qǐng)輸入正確格式的機(jī)票數(shù)!");
?? ??? ??? ?} else if (ticks > 999)
?? ??? ??? ?{
?? ??? ??? ??? ?printf("-------------請(qǐng)輸入0-999以?xún)?nèi)的機(jī)票數(shù)!");
?? ??? ??? ?} else?
?? ??? ??? ?{
?? ??? ??? ??? ?ahead->ticks = ticks;
?? ??? ??? ??? ?break;
?? ??? ??? ?}
?? ??? ?}
?? ??? ?int time;
?? ??? ?printf("-------------請(qǐng)輸入起飛時(shí)間(1-7):");
?? ??? ?while (scanf("%d",&time))
?? ??? ?{
?? ??? ??? ?if (time < 1 || time > 7)
?? ??? ??? ?{
?? ??? ??? ??? ?printf("-------------請(qǐng)輸入正確的起飛時(shí)間(周一到周日用1-7表示):");
?? ??? ??? ?} else?
?? ??? ??? ?{
?? ??? ??? ??? ?ahead->time = time;
?? ??? ??? ??? ?break;
?? ??? ??? ?}
?? ??? ??? ??
?? ??? ?}
?? ??? ?aend = ahead;
?? ??? ?aend->next = NULL;
?? ?} else
?? ?{
?? ??? ?printf("-------------請(qǐng)輸入航班號(hào)(按0返回):");
?? ??? ?getchar();
?? ??? ?while (gets(airlinenum))
?? ??? ?{
?? ??? ??? ?if (strcmp(airlinenum,"0") == 0)
?? ??? ??? ?{
?? ??? ??? ??? ?return ;
?? ??? ??? ?}
?? ??? ??? ?if (strlen(airlinenum) <= 16)
?? ??? ??? ?{
?? ??? ??? ??? ?break;
?? ??? ??? ?} else?
?? ??? ??? ?{
?? ??? ??? ??? ?printf("-------------請(qǐng)輸入長(zhǎng)度為1到16位的航班號(hào):");
?? ??? ??? ?}
?? ??? ?}
?? ??? ?int flag = 0;
?? ??? ?p = ahead;
?? ??? ?while (p)
?? ??? ?{
?? ??? ??? ?if (strcmp(p->airlinenum,airlinenum) == 0)
?? ??? ??? ?{
?? ??? ??? ??? ?flag = 1;
?? ??? ??? ??? ?break;
?? ??? ??? ?}
?? ??? ??? ?p = p->next;
?? ??? ?}
?? ??? ?if(flag == 1)
?? ??? ?{
?? ??? ??? ?int ticks;
?? ??? ??? ?printf("-------------請(qǐng)輸入要增加票的數(shù)量:");
?? ??? ??? ?while (scanf("%d",&ticks))
?? ??? ??? ?{
?? ??? ??? ??? ?if (ticks <= 0)
?? ??? ??? ??? ?{
?? ??? ??? ??? ??? ?printf("-------------請(qǐng)輸入正確格式的機(jī)票數(shù)!");
?? ??? ??? ??? ?} else if (ticks > 999)
?? ??? ??? ??? ?{
?? ??? ??? ??? ??? ?printf("-------------請(qǐng)輸入0-999以?xún)?nèi)的機(jī)票數(shù)!");
?? ??? ??? ??? ?} else?
?? ??? ??? ??? ?{
?? ??? ??? ??? ??? ?p->ticks += ticks;
?? ??? ??? ??? ??? ?printf("-------------航班號(hào)%s票數(shù)添加成功!",p->airlinenum);
?? ??? ??? ??? ??? ?break;
?? ??? ??? ??? ?}
?? ??? ??? ?}
?? ??? ?} else
?? ??? ?{
?? ??? ?p = (airline*)malloc(sizeof(airline));
?? ??? ?strcpy(p->airlinenum,airlinenum);
?? ??? ?printf("-------------請(qǐng)輸入飛機(jī)號(hào):");
?? ??? ?long long int airplanenum;
?? ??? ?while (scanf("%lld",&airplanenum))
?? ??? ?{
?? ??? ??? ?if (airplanenum <= 0)
?? ??? ??? ?{
?? ??? ??? ??? ?printf("-------------請(qǐng)輸入正確格式的飛機(jī)號(hào):");
?? ??? ??? ?} else if (airplanenum > 999999)
?? ??? ??? ?{
?? ??? ??? ??? ?printf("-------------請(qǐng)輸入長(zhǎng)度為1-6位的飛機(jī)號(hào):");
?? ??? ??? ?} else?
?? ??? ??? ?{
?? ??? ??? ??? ?p->airplanenum = airplanenum;
?? ??? ??? ??? ?break;
?? ??? ??? ?}
?? ??? ?}
?? ??? ?printf("-------------請(qǐng)輸入出發(fā)地點(diǎn):");
?? ??? ?getchar();
?? ??? ?char dep[1000];
?? ??? ?while (gets(dep))
?? ??? ?{
?? ??? ??? ?if (strlen(dep) <= 16)
?? ??? ??? ?{
?? ??? ??? ??? ?strcpy(p->dep,dep);
?? ??? ??? ??? ?break;
?? ??? ??? ?} else?
?? ??? ??? ?{
?? ??? ??? ??? ?printf("-------------請(qǐng)輸入長(zhǎng)度為1到16位的出發(fā)地點(diǎn):");
?? ??? ??? ?}
?? ??? ?}
?? ??? ?
?? ??? ?printf("-------------請(qǐng)輸入目的地:");
?? ??? ?char des[1000];
?? ??? ?while (gets(des))
?? ??? ?{
?? ??? ??? ?if (strlen(des) <= 16)
?? ??? ??? ?{
?? ??? ??? ??? ?strcpy(p->des,des);
?? ??? ??? ??? ?break;
?? ??? ??? ?} else?
?? ??? ??? ?{
?? ??? ??? ??? ?printf("-------------請(qǐng)輸入長(zhǎng)度為1到16位的目的地:");
?? ??? ??? ?}
?? ??? ?}
?? ??? ?printf("-------------請(qǐng)輸入機(jī)票數(shù):");
?? ??? ?int ticks;
?? ??? ?while (scanf("%d",&ticks))
?? ??? ?{
?? ??? ??? ?if (ticks < 0)
?? ??? ??? ?{
?? ??? ??? ??? ?printf("-------------請(qǐng)輸入正確格式的機(jī)票數(shù)!");
?? ??? ??? ?} else if (ticks > 999)
?? ??? ??? ?{
?? ??? ??? ??? ?printf("-------------請(qǐng)輸入0-999以?xún)?nèi)的機(jī)票數(shù)!");
?? ??? ??? ?} else?
?? ??? ??? ?{
?? ??? ??? ??? ?p->ticks = ticks;?
?? ??? ??? ??? ?break;
?? ??? ??? ?}
?? ??? ?}
?? ??? ?int time;
?? ??? ?printf("-------------請(qǐng)輸入起飛時(shí)間(1-7):");
?? ??? ?while (scanf("%d",&time))
?? ??? ?{
?? ??? ??? ?if (time < 1 || time > 7)
?? ??? ??? ?{
?? ??? ??? ??? ?printf("-------------請(qǐng)輸入正確的起飛時(shí)間(周一到周日用1-7表示):");
?? ??? ??? ?} else?
?? ??? ??? ?{
?? ??? ??? ??? ?p->time = time;
?? ??? ??? ??? ?break;
?? ??? ??? ?}?
?? ??? ?}
?? ??? ?getchar();
?? ??? ?aend->next = p;
?? ??? ?aend = p;
?? ??? ?aend->next = NULL;?
?? ??? ?}
?? ?}
?? ?acnt ++;
?? ?writefile(2);
?? ?cls();
?? ?printf("\n\n\n\n\n\n");
?? ?printf("\t\t\t\t\t********************************\n");
?? ?printf("\t\t\t\t\t** ? ? ? ? ? ? ? ? ? ? ? ? ? ?**\n");
?? ?printf("\t\t\t\t\t ? ? ? 航班號(hào)%s添加成功! ? ? ? \n",aend->airlinenum);
?? ?printf("\t\t\t\t\t** ? ? ? ? ? ? ? ? ? ? ? ? ? ?**\n");
?? ?printf("\t\t\t\t\t********************************\n");
?? ?printf("頁(yè)面即將跳轉(zhuǎn)...");
?? ?Sleep(2000);
?? ?
}
void writefile(int flag)// 0 寫(xiě)用戶(hù) 1 寫(xiě)管理員 2 寫(xiě)航班?
{
?? ?user *userp = uhead;
?? ?manger *mangerp = mhead;
?? ?airline *airlinep = ahead;
?? ?FILE *fp;
?? ?
?? ?if (flag == 0)
?? ?{
?? ??? ?fp = fopen("user","w");
?? ??? ?while (userp)
?? ??? ?{
?? ??? ??? ?fwrite(userp,sizeof(user),1,fp);
?? ??? ??? ?userp = userp->next;
?? ??? ?}
?? ?} else if(flag == 1)
?? ?{
?? ??? ?fp = fopen("manger","w");
?? ??? ?while (mangerp)
?? ??? ?{
?? ??? ??? ?fwrite(mangerp,sizeof(manger),1,fp);
?? ??? ??? ?mangerp = mangerp->next;
?? ??? ?}
?? ?} else if(flag == 2)
?? ?{
?? ??? ?fp = fopen("airline","w");
?? ??? ?while (airlinep)
?? ??? ?{
?? ??? ??? ?fwrite(airlinep,sizeof(airline),1,fp);
?? ??? ??? ?airlinep = airlinep->next;
?? ??? ?}
?? ?}
?? ?fclose(fp);
}
void deletenum()
{
?? ?airline *p, *sign;
?? ?p = ahead;
?? ?char airlinenum[1000];
?? ?int flag = 0;
?? ?
?? ?FILE *fp;
?? ?fp = fopen("airline","r");
?? ?char ch;
?? ?ch = fgetc(fp);
?? ?rewind(fp);
?? ?if (ch == EOF)
?? ?{
?? ??? ?printf("\n\n\n\n\n\n\n");
?? ??? ?printf("-------------暫無(wú)航班信息?。?);
?? ??? ?getchar();
?? ??? ?printf("pause");
?? ??? ?return ;
?? ?}
?? ?
?? ?printf("-------------請(qǐng)輸入您要?jiǎng)h除的航班號(hào)(按0退出):");
?? ?while (scanf("%s",airlinenum))
?? ?{
?? ??? ?if (strcmp("0",airlinenum) == 0)
?? ??? ?{
?? ??? ??? ?getchar();
?? ??? ??? ?return ;
?? ??? ?}
?? ??? ?while (p)
?? ??? ?{
?? ??? ??? ?if (strcmp(p->airlinenum,airlinenum) == 0)
?? ??? ??? ?{
?? ??? ??? ??? ?flag = 1;
?? ??? ??? ??? ?break;
?? ??? ??? ?}
?? ??? ??? ?p = p->next;
?? ??? ?}
?? ??? ?if (flag == 0)
?? ??? ?{
?? ??? ??? ?printf("-------------查無(wú)此航班!");
?? ??? ??? ?printf("請(qǐng)重新輸入(按0退出):");
?? ??? ??? ?p = ahead;
?? ??? ?} else?
?? ??? ?{
?? ??? ??? ?break;
?? ??? ?}
?? ?}
?? ?deleteusernum(airlinenum);
?? ?p = ahead;
?? ?if (strcmp(ahead->airlinenum,airlinenum) == 0)
?? ?{
?? ??? ?sign = ahead;
?? ??? ?strcpy(sign->airlinenum,ahead->airlinenum);
?? ??? ?ahead = ahead->next;
?? ??? ?ahead1->next = ahead;
?? ?}
?? ?while (p->next != NULL)
?? ?{
?? ??? ?if (strcmp(p->next->airlinenum,airlinenum) == 0)
?? ??? ?{
?? ??? ??? ?sign = p->next;
?? ??? ??? ?strcpy(sign->airlinenum,p->next->airlinenum);
?? ??? ??? ?p->next = p->next->next;
?? ??? ??? ?break;
?? ??? ?}
?? ??? ?p = p->next;
?? ?}?
?? ?getchar();
?? ?printf("\n\n\n\n\n\n");
?? ?printf("-------------航班號(hào)%s刪除成功!\n",sign->airlinenum);
?? ?printf("-------------頁(yè)面即將跳轉(zhuǎn)...");
?? ?Sleep(1000);
//?? ?free(sign);
?? ?writefile(2);
}

void deleteusernum(char *airlinenum)
{
?? ?user *userp = uhead;
?? ?int flag;
?? ?
?? ?while (userp)
?? ?{
?? ??? ?flag = 1;
?? ??? ?for (int i = 0; i < userp->bookcnt; i ++)
?? ??? ?{
?? ??? ??? ?if (strcmp(userp->bookticks[i],airlinenum) == 0)
?? ??? ??? ?{
?? ??? ??? ??? ?flag = i;
?? ??? ??? ??? ?break;
?? ??? ??? ?}
?? ??? ?}
?? ??? ?if (flag != 1)
?? ??? ?{
?? ??? ??? ?for (int j = flag; j < userp->bookcnt - 1; j ++)
?? ??? ??? ?{
?? ??? ??? ??? ?strcpy(userp->bookticks[j],userp->bookticks[j + 1]);
?? ??? ??? ?}
?? ??? ??? ?userp->bookcnt --;
?? ??? ?}
?? ??? ?userp = userp->next;
?? ?}
?? ?writefile(0);
}
void changeairline()
{
?? ?airline *airlinep = ahead1->next;
?? ?char airlinenum[2000];
?? ?int airplanenum, time, ticks;
?? ?char dep[2000], des[2000];
?? ?int exist = 0;
?? ?int flag = 0;
?? ?
?? ?
?? ?printf("\n\n\n\n\n\n");
?? ?FILE *fp;
?? ?fp = fopen("airline","r");
?? ?char ch;
?? ?ch = fgetc(fp);
?? ?rewind(fp);
?? ?if (ch == EOF)
?? ?{
?? ??? ?printf("\n\n\n\n\n\n\n");
?? ??? ?printf("-------------暫無(wú)航班信息??!");
?? ??? ?getchar();
?? ??? ?getchar();
?? ??? ?return ;
?? ?}
?? ?printf("航班號(hào)\t\t飛機(jī)號(hào)\t\t出發(fā)地點(diǎn)\t\t目的地\t\t出發(fā)時(shí)間\t\t票數(shù)\n");
?? ?while (airlinep)
?? ?{
?? ??? ?printf(PRINTF);
?? ??? ?airlinep = airlinep->next;
?? ?}
?? ?airlinep = ahead;
?? ?printf("-------------請(qǐng)輸入您要修改的航班號(hào)(按0返回):");
//?? ?getchar();
?? ?while (gets(airlinenum))
?? ?{
?? ??? ?if (strcmp("0",airlinenum) == 0)
?? ??? ?{
?? ??? ??? ?return ;
?? ??? ?}
?? ??? ?while (airlinep)
?? ??? ?{
?? ??? ??? ?if (strcmp(airlinep->airlinenum,airlinenum) == 0)
?? ??? ??? ?{
?? ??? ??? ??? ?exist = 1;
?? ??? ??? ??? ?break;
?? ??? ??? ?}
?? ??? ??? ?airlinep = airlinep->next;
?? ??? ?}
?? ??? ?if (!exist)
?? ??? ?{
?? ??? ??? ?airlinep = ahead;
?? ??? ??? ?printf("-------------未查詢(xún)到該航班!請(qǐng)重新輸入:");
?? ??? ?} else?
?? ??? ?{
?? ??? ??? ?break;
?? ??? ?}
?? ?}
?? ?if (!exist)
?? ?{
?? ??? ?return ;
?? ?} else?
?? ?{
?? ??? ?int ?choose ;
?? ??? ?cls();
?? ??? ?changemenu();
?? ??? ?while (1)
?? ??? ?{
?? ??? ??? ?printf("-------------請(qǐng)輸入您要進(jìn)行的操作:");
?? ??? ??? ?scanf("%d",&choose);
?? ??? ??? ?switch(choose)
?? ??? ??? ?{
?? ??? ??? ??? ?case 1:
?? ??? ??? ??? ??? ??? ?printf("-------------請(qǐng)輸入修改后的航班號(hào):");
?? ??? ??? ??? ??? ??? ?scanf("%s",airlinenum);
?? ??? ??? ??? ??? ??? ?changeuserairline(airlinep->airlinenum,airlinenum);
?? ??? ??? ??? ??? ??? ?strcpy(airlinep->airlinenum,airlinenum);
?? ??? ??? ??? ??? ??? ?break;
?? ??? ??? ??? ?case 2:
?? ??? ??? ??? ??? ??? ?printf("-------------請(qǐng)輸入修改后的飛機(jī)號(hào):");
?? ??? ??? ??? ??? ??? ?scanf("%lld",&airplanenum);
?? ??? ??? ??? ??? ??? ?airlinep->airplanenum = airplanenum;
?? ??? ??? ??? ??? ??? ?break;
?? ??? ??? ??? ?case 3:
?? ??? ??? ??? ??? ??? ?printf("-------------請(qǐng)輸入修改后的出發(fā)地點(diǎn):");
?? ??? ??? ??? ??? ??? ?scanf("%s",dep);
?? ??? ??? ??? ??? ??? ?strcpy(airlinep->dep,dep);
?? ??? ??? ??? ??? ??? ?break;
?? ??? ??? ??? ?case 4:
?? ??? ??? ??? ??? ??? ?printf("-------------請(qǐng)輸入修改后的目的地:");
?? ??? ??? ??? ??? ??? ?scanf("%s",des);
?? ??? ??? ??? ??? ??? ?strcpy(airlinep->des,des);
?? ??? ??? ??? ??? ??? ?break;
?? ??? ??? ??? ?case 5:
?? ??? ??? ??? ??? ??? ?printf("-------------請(qǐng)輸入修改后的起飛時(shí)間:");
?? ??? ??? ??? ??? ??? ?while (scanf("%d",&time))
?? ??? ??? ??? ??? ??? ?{
?? ??? ??? ??? ??? ??? ??? ?if (time < 1 || time > 7)
?? ??? ??? ??? ??? ??? ?{
?? ??? ??? ??? ??? ??? ??? ?printf("-------------請(qǐng)輸入正確的起飛時(shí)間(周一到周日用1-7表示):");
?? ??? ??? ??? ??? ??? ?} else?
?? ??? ??? ??? ??? ??? ?{
?? ??? ??? ??? ??? ??? ??? ?airlinep->time = time;
?? ??? ??? ??? ??? ??? ??? ?break;
?? ??? ??? ??? ??? ??? ?}
?? ??? ??? ??
?? ??? ??? ??? ??? ??? ?}
?? ??? ??? ??? ??? ??? ?break;
?? ??? ??? ??? ?case 6:
?? ??? ??? ??? ??? ??? ?printf("-------------請(qǐng)輸入修改后的機(jī)票數(shù):");
?? ??? ??? ??? ??? ??? ?while (scanf("%d",&ticks))
?? ??? ??? ??? ??? ??? ?{
?? ??? ??? ??? ??? ??? ??? ?if (ticks <= 0)
?? ??? ??? ??? ??? ??? ??? ?{
?? ??? ??? ??? ??? ??? ??? ??? ?printf("-------------請(qǐng)輸入正確格式的機(jī)票數(shù)!");
?? ??? ??? ??? ??? ??? ??? ?} else if (ticks > 999)
?? ??? ??? ??? ??? ??? ?{
?? ??? ??? ??? ??? ??? ??? ?printf("-------------請(qǐng)輸入0-999以?xún)?nèi)的機(jī)票數(shù)!");
?? ??? ??? ??? ??? ??? ??? ?} else?
?? ??? ??? ??? ??? ??? ??? ?{
?? ??? ??? ??? ??? ??? ??? ??? ?airlinep->ticks = ticks;
?? ??? ??? ??? ??? ??? ??? ??? ?break;
?? ??? ??? ??? ??? ??? ??? ?}
?? ??? ??? ??? ??? ??? ?}
?? ??? ??? ??? ??? ??? ?break;
?? ??? ??? ??? ?case 7:
?? ??? ??? ??? ??? ??? ?flag = 1;
?? ??? ??? ??? ??? ??? ?break;
?? ??? ??? ?}
?? ??? ??? ?if (flag)
?? ??? ??? ?{
?? ??? ??? ??? ?break;
?? ??? ??? ?}
?? ??? ?}
?? ?}
?? ?writefile(2);
}
void changeuserairline(char *userbookticks, char *bookticks)
{
?? ?user *userp = uhead;
?? ?while (userp)
?? ?{
?? ??? ?for (int i = 0; i < userp->bookcnt; i ++)
?? ??? ?{
?? ??? ??? ?if (strcmp(userp->bookticks[i],userbookticks) == 0)
?? ??? ??? ?{
?? ??? ??? ??? ?strcpy(userp->bookticks[i],bookticks);
?? ??? ??? ?}
?? ??? ?}
?? ??? ?userp = userp->next;
?? ?}
?? ?writefile(0);
}
void searchuser()
{
?? ?user *userp = uhead;
?? ?char username[2000];
?? ?int flag = 0;
?? ?
?? ?printf("-------------請(qǐng)輸入您要查詢(xún)的乘客名(按0退出):");
?? ?gets(username);
?? ?if (strcmp(username,"0") == 0)
?? ??? ?{
?? ??? ??? ?return ;
?? ??? ?}?
?? ?while (userp)
?? ?{
?? ??? ?if (strcmp(userp->username,username) == 0)
?? ??? ?{
?? ??? ??? ?flag = 1;
?? ??? ??? ?break;
?? ??? ?}
?? ??? ?userp = userp->next;
?? ?}
?? ?if (!flag)
?? ?{
?? ??? ?cls();
?? ??? ?printf("\n\n\n\n\n\n\n");
?? ??? ?printf("\t\t\t\t\t*******************************\n");?
?? ??? ?printf("\t\t\t\t\t** ? ? ? ? ? ? ? ? ? ? ? ? ? **\n");
?? ??? ?printf("\t\t\t\t\t** ? ? 不存在該乘客信息! ? ?**\n");
?? ??? ?printf("\t\t\t\t\t** ? ? 即將跳轉(zhuǎn)至上一頁(yè)面... **\n");
?? ??? ?printf("\t\t\t\t\t** ? ? ? ? ? ? ? ? ? ? ? ? ? **\n");
?? ??? ?printf("\t\t\t\t\t*******************************\n");
?? ??? ?Sleep(2000);
?? ??? ?return ;?
?? ?} else?
?? ?{
?? ??? ?long long int sign;
?? ??? ?while (1)
?? ??? ?{
?? ??? ??? ?cls();
?? ??? ??? ?printf("\n\n");
?? ??? ??? ?printf("\t\t\t\t\t ?乘客%s的個(gè)人信息\n",userp->username);
?? ??? ??? ?printf("\t\t\t\t***********************************\n");
?? ??? ??? ?printf("\t\t\t\t ? ? ? ? ? 乘客賬號(hào):");
?? ??? ??? ?puts(userp->username);
?? ??? ??? ?printf("\t\t\t\t** ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? **\n");
?? ??? ??? ?printf("\t\t\t\t ? ? ? ? ? 乘客密碼:");
?? ??? ??? ?puts(userp->scert);
?? ??? ??? ?printf("\t\t\t\t** ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? **\n");
?? ??? ??? ?printf("\t\t\t\t ? ? ? ? ? 訂票次數(shù):");
?? ??? ??? ?printf("%d\n",userp->bookcnt);
?? ??? ??? ?printf("\t\t\t\t** ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? **\n");
?? ??? ??? ?if (userp->bookcnt)
?? ??? ??? ?{
?? ??? ??? ??? ?printf("\t\t\t\t ? ? ? ? ? 訂票航班號(hào):");
?? ??? ??? ??? ?for (int i = 0; i < userp->bookcnt; i ++)?
?? ??? ??? ??? ?{
?? ??? ??? ??? ??? ?printf("%s ",userp->bookticks[i]);
?? ??? ??? ??? ?}
?? ??? ??? ??? ?printf("\n");
?? ??? ??? ??? ?printf("\t\t\t\t** ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? **\n");
?? ??? ??? ?} else
?? ??? ??? ?{
?? ??? ??? ??? ?printf("\t\t\t ? ? ? ? ? ? 此乘客還未預(yù)訂任何航班!\n");
?? ??? ??? ?}
?? ??? ??? ?printf("請(qǐng)輸入0返回上一頁(yè)面!");
?? ??? ??? ?while (scanf("%lld",&sign))
?? ??? ??? ?{
?? ??? ??? ??? ?if (sign == 0)
?? ??? ??? ??? ?{
?? ??? ??? ??? ??? ?return ;
?? ??? ??? ??? ?} else?
?? ??? ??? ??? ?{
?? ??? ??? ??? ??? ?printf("無(wú)效的輸入!請(qǐng)重新輸入:");
?? ??? ??? ??? ?}
?? ??? ??? ?}
?? ??? ??? ??
?? ??? ?}
?? ?}
}

void bookticks(user *userp)
{
?? ?char airlinenum[2000];
?? ?airline *airlinep = ahead1->next;
?? ?
?? ?int exist = 0;
?? ?int sign = 1;
?? ?
?? ?printf("\n\n\n\n\n\n");

?? ?FILE *fp;
?? ?fp = fopen("airline","r");?
?? ?char ch;
?? ?ch = ?fgetc(fp);
?? ?if (ch == EOF)
?? ?{
?? ??? ?printf("-------------暫無(wú)航班信息?。?);
?? ??? ?getchar();
?? ??? ?return ;
?? ?}
?? ?printf("航班號(hào)\t\t飛機(jī)號(hào)\t\t出發(fā)地點(diǎn)\t\t目的地\t\t出發(fā)時(shí)間\t\t票數(shù)\n");
?? ?while (airlinep)
?? ?{
?? ??? ?printf(PRINTF);
?? ??? ?airlinep = airlinep->next;
?? ?}
?? ?printf("-------------請(qǐng)輸入您要預(yù)訂的航班號(hào)(按0退出):");
?? ?getchar();
?? ?gets(airlinenum);
?? ?airlinep = ahead;
?? ?if (strcmp("0",airlinenum) == 0)
?? ??? ?{
?? ??? ??? ?return ;
?? ??? ?}
?? ?while (airlinep)
?? ?{
?? ??? ?
?? ??? ?if (strcmp(airlinep->airlinenum,airlinenum) == 0)
?? ??? ?{
?? ??? ??? ?if (airlinep->ticks == 0)
?? ??? ??? ?{
?? ??? ??? ??? ?printf("-------------此航班無(wú)余票!\n");
?? ??? ??? ??? ?sign = 0;
?? ??? ??? ?} else
?? ??? ??? ?{
?? ??? ??? ??? ?int n;
?? ??? ??? ??? ?printf("-------------請(qǐng)輸入要預(yù)訂的機(jī)票數(shù)量:");
?? ??? ??? ??? ?while (scanf("%d",&n))
?? ??? ??? ??? ?{
?? ??? ??? ??? ??? ?if (airlinep->ticks < n)
?? ??? ??? ??? ??? ?{
?? ??? ??? ??? ??? ??? ?printf("-------------機(jī)票數(shù)量不夠!請(qǐng)重新輸入:");
?? ??? ??? ??? ??? ?} else if (airlinep->ticks >= n)
?? ??? ??? ??? ??? ?{
?? ??? ??? ??? ??? ??? ?userp->ticks += n;?
?? ??? ??? ??? ??? ??? ?airlinep->ticks -= n;
?? ??? ??? ??? ??? ??? ?break;
?? ??? ??? ??? ??? ?}
?? ??? ??? ??? ?}
?? ??? ??? ??? ?userp->bookcnt ++;
?? ??? ??? ??? ?strcpy(userp->bookticks[userp->bookcnt - 1],airlinenum);
//?? ??? ??? ??? ?userp->usertime = airlinep->time;
?? ??? ??? ??? ?writefile(0);
?? ??? ??? ??? ?writefile(2);
?? ??? ??? ??? ?exist = 1;
?? ??? ??? ??? ?break;
?? ??? ??? ?}
?? ??? ?}
?? ??? ?airlinep = airlinep->next;
?? ?}
?? ?if (exist == 0 && sign == 1)
?? ?{
?? ??? ?printf("-------------不存在此航班!\n");
?? ?} else if (exist == 1)
?? ?{
?? ??? ?printf("-------------航班%s訂票成功!\n",airlinep->airlinenum);
?? ?}
?? ?printf("-------------頁(yè)面即將跳轉(zhuǎn)...");
?? ?Sleep(2000);
}
void returnticks(user *userp)
{
?? ?airline *airlinep = ahead;
?? ?char airlinenum[2000];
?? ?int exist = 0;
?? ?int flag = 0;
?? ?int cnt = userp->bookcnt;
?? ?if (cnt == 0)
?? ?{
?? ??? ?printf("\n\n\n\n\n\n\n");
?? ??? ?printf("\t\t\t\t\t\t您還未預(yù)訂任何航班!");
?? ??? ?getchar();
?? ??? ?return ;
?? ?}
?? ?
?? ?printf("\n\n\n\n\n\n");
?? ?
?? ?for (int i = 0; i < cnt; i ++)
?? ?{
?? ??? ?printf("-------------第%d次預(yù)訂的航班號(hào):",i + 1);
?? ??? ?printf("%s\n",userp->bookticks[i]);
?? ?}
?? ?printf("-------------請(qǐng)輸入要退還機(jī)票的航班號(hào)(按0退出):");
?? ?
?? ?getchar();
?? ?while (gets(airlinenum))
?? ?{
?? ??? ?if (strcmp(airlinenum,"0") == 0)
?? ??? ?{
?? ??? ??? ?return ;
?? ??? ?}
?? ??? ?for (int i = 0; i < userp->bookcnt; i ++)
?? ??? ?{
?? ??? ??? ?if (strcmp(airlinenum,userp->bookticks[i]) == 0)
?? ??? ??? ?{
?? ??? ??? ??? ?flag = i;
?? ??? ??? ??? ?exist = 1;
?? ??? ??? ??? ?break;
?? ??? ??? ?}
?? ??? ?}
?? ??? ?if (!exist)
?? ??? ?{
?? ??? ??? ?printf("-------------為查詢(xún)到該航班號(hào)!\n");
?? ??? ??? ?printf("-------------請(qǐng)重新輸入航班號(hào)(按0退出):");
?? ??? ?} else?
?? ??? ?{
?? ??? ??? ?break;
?? ??? ?}
?? ?}
?? ?int n;
?? ?while (airlinep)
?? ?{
?? ??? ?if (strcmp(airlinep->airlinenum,airlinenum) == 0)
?? ??? ?{
?? ??? ??? ?printf("-------------請(qǐng)輸入要退訂票數(shù)量:");
?? ??? ??? ?while (scanf("%d",&n))
?? ??? ??? ?{
?? ??? ??? ??? ?if (userp->ticks < n)
?? ??? ??? ??? ?{
?? ??? ??? ??? ??? ?printf("-------------您未持有此數(shù)量票量!\n");
?? ??? ??? ??? ??? ?printf("-------------請(qǐng)重新輸入:");
?? ??? ??? ??? ?} else if (userp->ticks >= n)
?? ??? ??? ??? ?{
?? ??? ??? ??? ??? ?userp->ticks -= n;
?? ??? ??? ??? ??? ?airlinep->ticks += n;
?? ??? ??? ??? ??? ?break;
?? ??? ??? ??? ?}
?? ??? ??? ?}
?? ??? ?}
?? ??? ?airlinep = airlinep->next;
?? ?}
?? ?
?? ?if (userp->ticks == 0)
?? ?{
?? ??? ?for (int i = flag; i < userp->bookcnt - 1; i ++)
?? ??? ?{
?? ??? ??? ?strcpy(userp->bookticks[i],userp->bookticks[i + 1]);
?? ??? ?}
?? ??? ??? ?userp->bookcnt --;
?? ?}

?? ?writefile(0);
?? ?writefile(2);
?? ?printf("-------------%s號(hào)航班退票成功!\n",userp->bookticks[flag]);
?? ?printf("-------------即將返回上一頁(yè)面...");
?? ?Sleep(2000);
}
void findairline(user *userp)
{
?? ?int cnt = userp->bookcnt;
?? ?long long ?sign;
?? ?if (cnt == 0)
?? ?{
?? ??? ?printf("\n\n\n\n\n\n\n");
?? ??? ?printf("\t\t\t\t\t\t您還未預(yù)訂任何航班!\n");
?? ?}
?? ?printf("\n\n\n\n\n\n");

?? ?
?? ?for (int i = 0; i < cnt; i ++)
?? ?{
?? ??? ?printf("\t\t\t\t\t\t第%d次預(yù)訂的航班號(hào):%s\t第%d預(yù)定航班的票數(shù):%d\n",i + 1, userp->bookticks[i], i+1, userp->ticks);
?? ?}
?? ?printf("\n\n請(qǐng)輸入0退出:");
?? ?while (scanf("%lld",&sign))
?? ?{
?? ??? ?if (sign == 0)
?? ??? ?{
?? ??? ??? ?break;
?? ??? ?} else
?? ??? ?{
?? ??? ??? ?printf("-------------無(wú)效的輸入!請(qǐng)重新輸入!");
?? ??? ?}
?? ?}
}
void search()
{
?? ?int sign;
?? ?while (1)
?? ?{
?? ??? ?cls();
?? ??? ?date();
?? ??? ?searchmenu();
?? ??? ?char choose = getch();
?? ??? ?switch(choose)
?? ??? ?{
?? ??? ??? ?case '1':
?? ??? ??? ??? ??? ?cls();
?? ??? ??? ??? ??? ?print_message();
?? ??? ??? ??? ??? ?break;
?? ??? ??? ?case '2':
?? ??? ??? ??? ??? ?cls();
?? ??? ??? ??? ??? ?printairline();
?? ??? ??? ??? ??? ?break;
?? ??? ??? ?case '3':
?? ??? ??? ??? ??? ?cls();
?? ??? ??? ??? ??? ?printtime();
?? ??? ??? ??? ??? ?break;
?? ??? ??? ?case '4':
?? ??? ??? ??? ??? ?cls();
?? ??? ??? ??? ??? ?printticks();
?? ??? ??? ??? ??? ?break;?
?? ??? ??? ?case '5':
?? ??? ??? ??? ??? ?cls();
?? ??? ??? ??? ??? ?sign = 1;
?? ??? ??? ??? ??? ?break;
?? ??? ??? ?case '6':
?? ??? ??? ??? ??? ?cls();
?? ??? ??? ??? ??? ?over();
?? ??? ??? ??? ??? ?cls();
?? ??? ??? ?default :
?? ??? ??? ??? ??? ?break;
?? ??? ?}
?? ??? ?if (sign)
?? ??? ?{
?? ??? ??? ?break;
?? ??? ?}
?? ?}
}

void airlinesort()
{
?? ?airline *f, *x, *y, *p;
?? ?f = NULL;
?? ?if (ahead1->next == NULL || ahead1->next->next == NULL)
?? ?{
?? ??? ?return ;
?? ?}
?? ?while (f != ahead1->next->next)
?? ?{
?? ??? ?for (p = ahead1; p->next->next != f; p = p->next)
?? ??? ?{
?? ??? ??? ?if (strcmp(p->next->airlinenum,p->next->next->airlinenum) > 0)
?? ??? ??? ?{
?? ??? ??? ??? ?x = p->next;
?? ??? ??? ??? ?y = p->next->next;
?? ??? ??? ??? ?p->next = y;
?? ??? ??? ??? ?x->next = y->next;
?? ??? ??? ??? ?y->next = x;
?? ??? ??? ?}
?? ??? ?}
?? ??? ?f = p->next;
?? ?}
?? ?return ;
}


void timesort()
{
?? ?airline *f, *x, *y, *p;
?? ?f = NULL;
?? ?if (ahead1->next == NULL || ahead1->next->next == NULL)
?? ?{
?? ??? ?return ;
?? ?}
?? ?while (f != ahead1->next->next)
?? ?{
?? ??? ?for (p = ahead1; p->next->next != f; p = p->next)
?? ??? ?{
?? ??? ??? ?if (p->next->time > p->next->next->time)
?? ??? ??? ?{
?? ??? ??? ??? ?x = p->next;
?? ??? ??? ??? ?y = p->next->next;
?? ??? ??? ??? ?p->next = y;
?? ??? ??? ??? ?x->next = y->next;
?? ??? ??? ??? ?y->next = x;
?? ??? ??? ?}
?? ??? ?}
?? ??? ?f = p->next;
?? ?}
?? ?return ;
}
void tickssort()
{
?? ?airline *f, *x, *y, *p;
?? ?f = NULL;
?? ?if (ahead1->next == NULL || ahead1->next->next == NULL)
?? ?{
?? ??? ?return ;
?? ?}
?? ?while (f != ahead1->next->next)
?? ?{
?? ??? ?for (p = ahead1; p->next->next != f; p = p->next)
?? ??? ?{
?? ??? ??? ?if (p->next->ticks > p->next->next->ticks)
?? ??? ??? ?{
?? ??? ??? ??? ?x = p->next;
?? ??? ??? ??? ?y = p->next->next;
?? ??? ??? ??? ?p->next = y;
?? ??? ??? ??? ?x->next = y->next;
?? ??? ??? ??? ?y->next = x;
?? ??? ??? ?}
?? ??? ?}
?? ??? ?f = p->next;
?? ?}
?? ?return ;
}
void printairline()
{
?? ?date();
?? ?airlinesort();
?? ?airline *airlinep = ahead1->next;
?? ?printf("\n\n\n\n\n\n");
?? ?FILE *fp;
?? ?fp = fopen("airline","r");
?? ?char ch;
?? ?ch = fgetc(fp);
?? ?rewind(fp);
?? ?if (ch == EOF)
?? ?{
?? ??? ?printf("-------------暫無(wú)航班信息!!");
?? ??? ?getchar();
?? ??? ?return ;
?? ?}

?? ?printf("航班號(hào)\t\t飛機(jī)號(hào)\t\t出發(fā)地點(diǎn)\t\t目的地\t\t出發(fā)時(shí)間\t\t票數(shù)\n");
?? ?while (airlinep)
?? ?{
?? ??? ?printf(PRINTF);
?? ??? ?airlinep = airlinep->next;
?? ?}
?? ?system("pause");
}

void printticks()
{
?? ?date();
?? ?tickssort();
?? ?airline *airlinep = ahead1->next;
?? ?printf("\n\n\n\n\n\n");
?? ?FILE *fp;
?? ?fp = fopen("airline","r");
?? ?char ch;
?? ?ch = fgetc(fp);
?? ?rewind(fp);
?? ?if (ch == EOF)
?? ?{
?? ??? ?printf("-------------暫無(wú)航班信息??!");
?? ??? ?getchar();
?? ??? ?return ;
?? ?}
?? ?printf("航班號(hào)\t\t飛機(jī)號(hào)\t\t出發(fā)地點(diǎn)\t\t目的地\t\t出發(fā)時(shí)間\t\t票數(shù)\n");
?? ?while (airlinep)
?? ?{
//?? ??? ?printf("666\n");
?? ??? ?printf(PRINTF);
?? ??? ?airlinep = airlinep->next;
?? ?}
?? ?system("pause");
}
void printtime()
{
?? ?date();
?? ?timesort();
?? ?airline *airlinep = ahead1->next;
?? ?printf("\n\n\n\n\n\n");
?? ?FILE *fp;
?? ?fp = fopen("airline","r");
?? ?char ch;
?? ?ch = fgetc(fp);
?? ?rewind(fp);
?? ?if (ch == EOF)
?? ?{
?? ??? ?printf("-------------暫無(wú)航班信息!!");
?? ??? ?getchar();
?? ??? ?return ;
?? ?}
?? ?printf("航班號(hào)\t\t飛機(jī)號(hào)\t\t出發(fā)地點(diǎn)\t\t目的地\t\t出發(fā)時(shí)間\t\t票數(shù)\n");
?? ?while (airlinep)
?? ?{
?? ??? ?printf(PRINTF);
?? ??? ?airlinep = airlinep->next;
?? ?}
?? ?system("pause");
}
void searchscert()
{
?? ?printf("\n\n\n\n\n\n");
?? ?printf("\t\t\t\t\t********************************\n");
?? ?printf("\t\t\t\t\t** ? ? ? ? ? ? ? ? ? ? ? ? ? ?**\n");
?? ?printf("\t\t\t\t\t** ? ? ?1.管理員找回密碼 ? ? ?**\n");
?? ?printf("\t\t\t\t\t** ? ? ? ? ? ? ? ? ? ? ? ? ? ?**\n");
?? ?printf("\t\t\t\t\t** ? ? ?2.乘客找回密碼 ? ? ? ?**\n");
?? ?printf("\t\t\t\t\t** ? ? ? ? ? ? ? ? ? ? ? ? ? ?**\n");
?? ?printf("\t\t\t\t\t** ? ? ?3.返回 ? ? ? ? ? ? ? ?**\n");
?? ?printf("\t\t\t\t\t** ? ? ? ? ? ? ? ? ? ? ? ? ? ?**\n");
?? ?printf("\t\t\t\t\t********************************\n");
?? ?printf("請(qǐng)按鍵選擇:");
?? ?int sign = 0;
?? ?char choose = getch();
?? ?while (1)
?? ?{
?? ??? ?cls();
?? ??? ?
?? ??? ?switch (choose)
?? ??? ?{
?? ??? ??? ?case '1':
?? ??? ??? ??? ??? ?cls();
?? ??? ??? ? ?? ??? ?searchmangerscert();
?? ??? ??? ? ?? ??? ?sign = 1;
?? ??? ??? ??? ??? ?break;
?? ??? ??? ?case '2':
?? ??? ??? ??? ??? ?cls();
?? ??? ??? ??? ??? ?searchuserscert();
?? ??? ??? ??? ??? ?sign = 1;
?? ??? ??? ??? ??? ?break;
?? ??? ??? ?case '3':
?? ??? ??? ??? ??? ?sign = 1;
?? ??? ??? ??? ??? ?break;
?? ??? ??? ?default :
?? ??? ??? ??? ??? ?printf("輸入無(wú)效!");
?? ??? ??? ??? ??? ?break;
?? ??? ?}
?? ??? ?if (sign)
?? ??? ?{
?? ??? ??? ?break;
?? ??? ?}
?? ?}
}
void searchmangerscert()
{
?? ?date();
?? ?manger *p = mhead;
?? ?char mangername[2000];
?? ?int flag = 0;
?? ?int sign = 0;
?? ?printf("\n\n\n\n\n\n\n");
?? ?FILE *fp;
?? ?fp = fopen("manger","r");
?? ?char ch;
?? ?ch = fgetc(fp);
?? ?rewind(fp);
?? ?if (ch == EOF)
?? ?{
?? ??? ?printf("-------------暫無(wú)管理員賬號(hào)?。n-------------請(qǐng)先前往注冊(cè)!");
?? ??? ?getchar();
?? ??? ?return ;
?? ?}
?? ?printf("-------------請(qǐng)輸入您的賬號(hào)(按0退出):");
//?? ?getchar();
?? ?while (gets(mangername))
?? ?{
?? ??? ?if (strcmp(mangername,"0") == 0)
?? ??? ?{
?? ??? ??? ?return ;
?? ??? ?}
?? ??? ?while (p)
?? ??? ?{
?? ??? ??? ?if (strcmp(p->mangername,mangername) == 0)
?? ??? ??? ?{
?? ??? ??? ??? ?flag = 1;
?? ??? ??? ??? ?break;
?? ??? ??? ?}
?? ??? ??? ?p = p->next;?
?? ??? ?}
?? ??? ?if (flag)
?? ??? ?{
?? ??? ??? ?break;
?? ??? ?} else
?? ??? ?{
?? ??? ??? ?printf("-------------此賬號(hào)不存在!請(qǐng)重新輸入(按0退出):");
?? ??? ??? ?p = mhead;
?? ??? ?}
?? ?}
?? ?if (flag)
?? ?{
?? ??? ?p = mhead;
?? ??? ?char securityscert[2000];
?? ??? ?printf("-------------請(qǐng)輸入您設(shè)置的密保(按0退出):");
?? ??? ?while (gets(securityscert))
?? ??? ?{
?? ??? ??? ?if (strcmp(securityscert,"0") == 0)
?? ??? ??? ?{
?? ??? ??? ??? ?return ;
?? ??? ??? ?}
?? ??? ??? ?while (p)
?? ??? ??? ?{
?? ??? ??? ??? ?if (strcmp(p->securityscert,securityscert) == 0)
?? ??? ??? ??? ?{
?? ??? ??? ??? ??? ?sign = 1;
?? ??? ??? ??? ??? ?break;
?? ??? ??? ??? ?}
?? ??? ??? ??? ?p = p->next;
?? ??? ??? ?}
?? ??? ??? ?if (sign)
?? ??? ??? ?{
?? ??? ??? ??? ?printf("-------------密保輸入正確!\n");
?? ??? ??? ??? ?printf("-------------您的密碼為%s\n",p->scert);
?? ??? ??? ??? ?getchar();
?? ??? ??? ??? ?return ;
?? ??? ??? ?} else?
?? ??? ??? ?{
?? ??? ??? ??? ?printf("-------------密保輸入錯(cuò)誤!請(qǐng)重新輸入(按0退出):");
?? ??? ??? ??? ?p = mhead;
?? ??? ??? ?}
?? ??? ?}
?? ?}
}
void searchuserscert()
{
?? ?date();
?? ?user *p = uhead;
?? ?char username[2000];
?? ?int flag = 0;
?? ?int sign = 0;
?? ?printf("\n\n\n\n\n\n\n");
?? ?FILE *fp;
?? ?fp = fopen("user","r");
?? ?char ch;
?? ?ch = fgetc(fp);
?? ?rewind(fp);
?? ?if (ch == EOF)
?? ?{
?? ??? ?printf("-------------暫無(wú)乘客賬號(hào)?。n-------------請(qǐng)先前往注冊(cè)!");
?? ??? ?getchar();
?? ??? ?return ;
?? ?}
?? ?printf("-------------請(qǐng)輸入您的賬號(hào)(按0退出):");
//?? ?getchar();
?? ?while (gets(username))
?? ?{
?? ??? ?if (strcmp(username,"0") == 0)
?? ??? ?{
?? ??? ??? ?return ;
?? ??? ?}
?? ??? ?while (p)
?? ??? ?{
?? ??? ??? ?if (strcmp(p->username,username) == 0)
?? ??? ??? ?{
?? ??? ??? ??? ?flag = 1;
?? ??? ??? ??? ?break;
?? ??? ??? ?}
?? ??? ??? ?p = p->next;?
?? ??? ?}
?? ??? ?if (flag)
?? ??? ?{
?? ??? ??? ?break;
?? ??? ?} else
?? ??? ?{
?? ??? ??? ?printf("-------------此賬號(hào)不存在!請(qǐng)重新輸入(按0退出):");
?? ??? ??? ?p = uhead;
?? ??? ?}
?? ?}
?? ?if (flag)
?? ?{
?? ??? ?p = uhead;
?? ??? ?char securityscert[2000];
?? ??? ?printf("-------------請(qǐng)輸入您設(shè)置的密保(按0退出):");
?? ??? ?while (gets(securityscert))
?? ??? ?{
?? ??? ??? ?if (strcmp(securityscert,"0") == 0)
?? ??? ??? ?{
?? ??? ??? ??? ?return ;
?? ??? ??? ?}
?? ??? ??? ?while (p)
?? ??? ??? ?{
?? ??? ??? ??? ?if (strcmp(p->securityscert,securityscert) == 0)
?? ??? ??? ??? ?{
?? ??? ??? ??? ??? ?sign = 1;
?? ??? ??? ??? ??? ?break;
?? ??? ??? ??? ?}
?? ??? ??? ??? ?p = p->next;
?? ??? ??? ?}
?? ??? ??? ?if (sign)
?? ??? ??? ?{
?? ??? ??? ??? ?printf("-------------密保輸入正確!\n");
?? ??? ??? ??? ?printf("-------------您的密碼為%s\n",p->scert);
?? ??? ??? ??? ?getchar();
?? ??? ??? ??? ?return ;
?? ??? ??? ?} else?
?? ??? ??? ?{
?? ??? ??? ??? ?printf("-------------密保輸入錯(cuò)誤!請(qǐng)重新輸入(按0退出):");
?? ??? ??? ??? ?p = uhead;
?? ??? ??? ?}
?? ??? ?}
?? ?}
}
void changescert()
{
?? ?printf("\n\n\n\n\n\n");
?? ?printf("\t\t\t\t\t********************************\n");
?? ?printf("\t\t\t\t\t** ? ? ? ? ? ? ? ? ? ? ? ? ? ?**\n");
?? ?printf("\t\t\t\t\t** ? ? ?1.管理員修改密碼 ? ? ?**\n");
?? ?printf("\t\t\t\t\t** ? ? ? ? ? ? ? ? ? ? ? ? ? ?**\n");
?? ?printf("\t\t\t\t\t** ? ? ?2.乘客修改密碼 ? ? ? ?**\n");
?? ?printf("\t\t\t\t\t** ? ? ? ? ? ? ? ? ? ? ? ? ? ?**\n");
?? ?printf("\t\t\t\t\t** ? ? ?3.返回 ? ? ? ? ? ? ? ?**\n");
?? ?printf("\t\t\t\t\t** ? ? ? ? ? ? ? ? ? ? ? ? ? ?**\n");
?? ?printf("\t\t\t\t\t********************************\n");
?? ?printf("請(qǐng)按鍵選擇:");
?? ?char choose = getch();
?? ?int sign = 0;?
?? ?while (1)
?? ?{
?? ??? ?cls();
?? ??? ?switch (choose)
?? ??? ?{
?? ??? ??? ?case '1':
?? ??? ??? ??? ??? ?cls();
?? ??? ??? ? ?? ??? ?changemangerscert();
?? ??? ??? ? ?? ??? ?sign = 1;
?? ??? ??? ??? ??? ?break;
?? ??? ??? ?case '2':
?? ??? ??? ??? ??? ?cls();
?? ??? ??? ??? ??? ?changeuserscert();
?? ??? ??? ??? ??? ?sign = 1;
?? ??? ??? ??? ??? ?break;
?? ??? ??? ?case '3':
?? ??? ??? ??? ??? ?sign = 1;
?? ??? ??? ??? ??? ?break;
?? ??? ??? ?default :
?? ??? ??? ??? ??? ?printf("輸入無(wú)效!");
?? ??? ??? ??? ??? ?break;
?? ??? ?}
?? ??? ?if (sign)
?? ??? ?{
?? ??? ??? ?break;
?? ??? ?}
?? ?}
}
void changemangerscert()
{
?? ?date();
?? ?manger *p = mhead;
?? ?char mangername[2000];
?? ?char scert[2000];
?? ?int flag = 0;
?? ?int sign = 0;
?? ?char securityscert[2000];
?? ?FILE *fp;
?? ?fp = fopen("manger","r");
?? ?char ch;
?? ?ch = fgetc(fp);
?? ?rewind(fp);
?? ?if (ch == EOF)
?? ?{
?? ??? ?printf("-------------暫無(wú)管理員賬號(hào)信息?。n-------------請(qǐng)先前往注冊(cè)!");
?? ??? ?getchar();
?? ??? ?return ;?
?? ?}
?? ?printf("\n\n\n\n\n\n\n");
?? ?printf("-------------請(qǐng)輸入您的賬號(hào)(按0退出):");
?? ?while (gets(mangername))
?? ?{
?? ??? ?if (strcmp(mangername,"0") == 0)
?? ??? ?{
?? ??? ??? ?return ;
?? ??? ?}
?? ??? ?while (p)
?? ??? ?{
?? ??? ??? ?if (strcmp(p->mangername,mangername) == 0)
?? ??? ??? ?{
?? ??? ??? ??? ?flag = 1;
?? ??? ??? ??? ?break;
?? ??? ??? ?}
?? ??? ??? ?p = p->next;?
?? ??? ?}
?? ??? ?if (flag)
?? ??? ?{
?? ??? ??? ?break;
?? ??? ?} else
?? ??? ?{
?? ??? ??? ?printf("-------------此賬號(hào)不存在!請(qǐng)重新輸入:");
?? ??? ??? ?p = mhead;
?? ??? ?}
?? ?}
?? ?if (flag)
?? ?{
?? ??? ?p = mhead;
?? ??? ?printf("-------------請(qǐng)輸入您設(shè)置的密保(按0退出):");
?? ??? ?while (gets(securityscert))
?? ??? ?{
?? ??? ??? ?if (strcmp(securityscert,"0") == 0)
?? ??? ??? ?{
?? ??? ??? ??? ?return ;
?? ??? ??? ?}
?? ??? ??? ?while (p)
?? ??? ??? ?{
?? ??? ??? ??? ?if (strcmp(p->securityscert,securityscert) == 0)
?? ??? ??? ??? ?{
?? ??? ??? ??? ??? ?sign = 1;
?? ??? ??? ??? ??? ?break;
?? ??? ??? ??? ?}
?? ??? ??? ??? ?p = p->next;
?? ??? ??? ?}
?? ??? ??? ?if (sign)
?? ??? ??? ?{
?? ??? ??? ??? ?printf("-------------請(qǐng)輸入修改后的密碼(按0退出):");
?? ??? ??? ??? ?while (gets(scert))
?? ??? ??? ??? ?{
?? ??? ??? ??? ??? ?if (strcmp(scert,"0") == 0)
?? ??? ??? ??? ??? ?{
?? ??? ??? ??? ??? ??? ?return ;
?? ??? ??? ??? ??? ?}?
?? ??? ??? ??? ??? ?if (strlen(scert) <= 16)
?? ??? ??? ??? ??? ?{
?? ??? ??? ??? ??? ??? ?break;
?? ??? ??? ??? ??? ?} else?
?? ??? ??? ??? ??? ?{
?? ??? ??? ??? ??? ??? ?printf("-------------請(qǐng)輸入1到16位的密碼:");
?? ??? ??? ??? ??? ?}
?? ??? ??? ??? ?}
?? ??? ??? ??? ?strcpy(p->scert,scert);
?? ??? ??? ??? ?printf("-------------密碼修改成功!");
?? ??? ??? ??? ?writefile(1);
?? ??? ??? ??? ?getchar();
?? ??? ??? ??? ?return ;
?? ??? ??? ?} else?
?? ??? ??? ?{
?? ??? ??? ??? ?printf("-------------密保輸入錯(cuò)誤!請(qǐng)重新輸入:");
?? ??? ??? ??? ?p = mhead;
?? ??? ??? ?}
?? ??? ?}
?? ?}
}
void changeuserscert()
{
?? ?date();
?? ?user *p = uhead;
?? ?char username[2000];
?? ?char scert[2000];
?? ?char securityscert[2000];
?? ?int flag = 0;
?? ?int sign = 0;
?? ?FILE *fp;
?? ?fp = fopen("user","r");
?? ?char ch;
?? ?ch = fgetc(fp);
?? ?rewind(fp);
?? ?if (ch == EOF)
?? ?{
?? ??? ?printf("-------------暫無(wú)管理員賬號(hào)信息!!\n-------------請(qǐng)先前往注冊(cè)!");
?? ??? ?getchar();
?? ??? ?return ;?
?? ?}
?? ?printf("\n\n\n\n\n\n\n");
?? ?printf("-------------請(qǐng)輸入您的賬號(hào)(按0退出):");
?? ?while (gets(username))
?? ?{
?? ??? ?if (strcmp(username,"0") == 0)
?? ??? ?{
?? ??? ??? ?return ;
?? ??? ?}
?? ??? ?while (p)
?? ??? ?{
?? ??? ??? ?if (strcmp(p->username,username) == 0)
?? ??? ??? ?{
?? ??? ??? ??? ?flag = 1;
?? ??? ??? ??? ?break;
?? ??? ??? ?}
?? ??? ??? ?p = p->next;?
?? ??? ?}
?? ??? ?if (flag)
?? ??? ?{
?? ??? ??? ?break;
?? ??? ?} else
?? ??? ?{
?? ??? ??? ?printf("-------------此賬號(hào)不存在!請(qǐng)重新輸入:");
?? ??? ??? ?p = uhead;
?? ??? ?}
?? ?}
?? ?if (flag)
?? ?{
?? ??? ?p = uhead;
?? ??? ?printf("-------------請(qǐng)輸入您設(shè)置的密保(按0退出):");
?? ??? ?while (gets(securityscert))
?? ??? ?{
?? ??? ??? ?if (strcmp(securityscert,"0") == 0)
?? ??? ??? ?{
?? ??? ??? ??? ?return ;
?? ??? ??? ?}
?? ??? ??? ?while (p)
?? ??? ??? ?{
?? ??? ??? ??? ?if (strcmp(p->securityscert,securityscert) == 0)
?? ??? ??? ??? ?{
?? ??? ??? ??? ??? ?sign = 1;
?? ??? ??? ??? ??? ?break;
?? ??? ??? ??? ?}
?? ??? ??? ??? ?p = p->next;
?? ??? ??? ?}
?? ??? ??? ?if (sign)
?? ??? ??? ?{
?? ??? ??? ??? ?printf("-------------請(qǐng)輸入修改后的密碼(按0退出):");
?? ??? ??? ??? ?while (gets(scert))
?? ??? ??? ??? ?{
?? ??? ??? ??? ??? ?if (strcmp(scert,"0") == 0)
?? ??? ??? ??? ??? ?{
?? ??? ??? ??? ??? ??? ?return ;
?? ??? ??? ??? ??? ?}?
?? ??? ??? ??? ??? ?if (strlen(scert) <= 16)
?? ??? ??? ??? ??? ?{
?? ??? ??? ??? ??? ??? ?break;
?? ??? ??? ??? ??? ?} else?
?? ??? ??? ??? ??? ?{
?? ??? ??? ??? ??? ??? ?printf("-------------請(qǐng)輸入1到16位的密碼:");
?? ??? ??? ??? ??? ?}
?? ??? ??? ??? ?}
?? ??? ??? ??? ?strcpy(p->scert,scert);
?? ??? ??? ??? ?printf("-------------密碼修改成功!");
?? ??? ??? ??? ?writefile(0);
?? ??? ??? ??? ?getchar();
?? ??? ??? ??? ?return ;
?? ??? ??? ?} else?
?? ??? ??? ?{
?? ??? ??? ??? ?printf("-------------密保輸入錯(cuò)誤!請(qǐng)重新輸入:");
?? ??? ??? ??? ?p = uhead;
?? ??? ??? ?}
?? ??? ?}
?? ?}
}

void print_message()
{
?? ?date();
?? ?airline *airlinep = ahead1->next;
?? ?printf("\n\n\n\n\n\n");
?? ?FILE *fp;
?? ?fp = fopen("airline","r");
?? ?char ch;
?? ?ch = fgetc(fp);
?? ?rewind(fp);
?? ?if (ch == EOF)
?? ?{
?? ??? ?printf("-------------暫無(wú)航班信息?。?);
?? ??? ?getchar();
?? ??? ?return ;
?? ?}
?? ?printf("航班號(hào)\t\t飛機(jī)號(hào)\t\t出發(fā)地點(diǎn)\t\t目的地\t\t出發(fā)時(shí)間\t\t票數(shù)\n");
?? ?while (airlinep)
?? ?{
//?? ??? ?printf("666\n");
?? ??? ?printf(PRINTF);
?? ??? ?airlinep = airlinep->next;
?? ?}
?? ?system("pause");
}

void hualihushao1()
{
?? ?printf("\n\n\n\n\n\n\n\n\n\n\n\n");
?? ?printf("\t\t\t\t\t\t即將進(jìn)入訂票系統(tǒng)...");
?? ?system("color 40");
?? ?Sleep(250);
?? ?system("color 04");
?? ?Sleep(250);
?? ?system("color 60");
?? ?Sleep(250);
?? ?system("color 24");
?? ?Sleep(250);
?? ?system("color AF");
?? ?Sleep(250);
?? ?system("color 92");
?? ?Sleep(250);
?? ?system("color 57");
?? ?Sleep(250);
?? ?system("color F4");
?? ?Sleep(250);
?? ?system("color F4");
?? ?Sleep(250);
}
void hualihushao2()
{
?? ?printf("\n\n\n\n\n\n\n\n\n\n\n\n");
?? ?printf("\t\t\t\t\t\t訂票系統(tǒng)即將關(guān)閉...");
?? ?system("color 40");
?? ?Sleep(250);
?? ?system("color 04");
?? ?Sleep(250);
?? ?system("color 60");
?? ?Sleep(250);
?? ?system("color 24");
?? ?Sleep(250);
?? ?system("color AF");
?? ?Sleep(250);
?? ?system("color 92");
?? ?Sleep(250);
?? ?system("color 57");
?? ?Sleep(250);
?? ?system("color F4");
?? ?Sleep(250);
?? ?system("color F4");
?? ?Sleep(250);
}

void load()
{
?? ?system("color 8b"); //F1
?? ?cout << "\n\n\n\n\n\n\n\n\n\n\n\n";
?? ?cout << "\t\t\t\t\t正在進(jìn)入系統(tǒng)..請(qǐng)稍等...";
?? ?for (int i = 0; i <= 100; i += 2)
?? ?{
?? ??? ?cout << "\r\t\t\t\t\t\t\t\t" << i << "%";
?? ??? ?Sleep(50);
?? ??? ?if (i == 48)
?? ??? ?{
?? ??? ??? ?Sleep(1000);
?? ??? ?}
?? ??? ?if (i == 76)
?? ??? ?{
?? ??? ??? ?Sleep(800);
?? ??? ?}
?? ??? ?if (i == 100)
?? ??? ?{
?? ??? ??? ?Sleep(500);
?? ??? ?}
?? ?}
}

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • 詳解C/C++ 的*和&用法

    詳解C/C++ 的*和&用法

    這篇文章主要介紹了C/C++ 的*和&的相關(guān)知識(shí),本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-11-11
  • 深入解析Linux下\r\n的問(wèn)題

    深入解析Linux下\r\n的問(wèn)題

    本篇文章是對(duì)Linux下\r\n的問(wèn)題進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-05-05
  • Qt實(shí)現(xiàn)簡(jiǎn)易QQ聊天界面

    Qt實(shí)現(xiàn)簡(jiǎn)易QQ聊天界面

    這篇文章主要為大家詳細(xì)介紹了Qt實(shí)現(xiàn)簡(jiǎn)易QQ聊天界面,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-06-06
  • C語(yǔ)言超全面講解函數(shù)的使用方法上

    C語(yǔ)言超全面講解函數(shù)的使用方法上

    函數(shù)是一組一起執(zhí)行一個(gè)任務(wù)的語(yǔ)句。每個(gè)?C?程序都至少有一個(gè)函數(shù),即主函數(shù)?main()?,所有簡(jiǎn)單的程序都可以定義其他額外的函數(shù),由于篇幅過(guò)大,分為兩篇講解,下面開(kāi)始上篇
    2022-04-04
  • C語(yǔ)言大作業(yè)之圖書(shū)管理系統(tǒng)的實(shí)現(xiàn)詳程

    C語(yǔ)言大作業(yè)之圖書(shū)管理系統(tǒng)的實(shí)現(xiàn)詳程

    隨著網(wǎng)絡(luò)技術(shù)的高速發(fā)展,計(jì)算機(jī)應(yīng)用的普及,利用計(jì)算機(jī)對(duì)圖書(shū)館的日常工作進(jìn)行管理勢(shì)在必行,趁著寒假時(shí)間手把手帶你用C語(yǔ)言實(shí)現(xiàn)一個(gè)圖書(shū)管理系統(tǒng),大家可以在過(guò)程中查缺補(bǔ)漏,提升水平
    2022-01-01
  • Cocos2dx實(shí)現(xiàn)數(shù)字跳動(dòng)效果

    Cocos2dx實(shí)現(xiàn)數(shù)字跳動(dòng)效果

    這篇文章主要為大家詳細(xì)介紹了Cocos2dx實(shí)現(xiàn)數(shù)字跳動(dòng)效果,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-09-09
  • C/C++中extern

    C/C++中extern "C" 的作用分析

    這篇文章主要介紹了C/C++中extern "C" 的作用,是在進(jìn)行C/C++程序設(shè)計(jì)中非常常見(jiàn)的用法,需要的朋友可以參考下
    2014-09-09
  • C++實(shí)現(xiàn)簡(jiǎn)單的計(jì)算器功能

    C++實(shí)現(xiàn)簡(jiǎn)單的計(jì)算器功能

    這篇文章主要為大家詳細(xì)介紹了C++實(shí)現(xiàn)簡(jiǎn)單的計(jì)算器功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-01-01
  • C++ clock()解析如何使用時(shí)鐘計(jì)時(shí)的應(yīng)用

    C++ clock()解析如何使用時(shí)鐘計(jì)時(shí)的應(yīng)用

    本篇文章是對(duì)c++中的clock()函數(shù)進(jìn)行了詳細(xì)的分析介紹,需要的朋友參考下
    2013-06-06
  • C語(yǔ)言每日練習(xí)之進(jìn)制轉(zhuǎn)換

    C語(yǔ)言每日練習(xí)之進(jìn)制轉(zhuǎn)換

    這篇文章主要介紹了C語(yǔ)言進(jìn)制轉(zhuǎn)換,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2021-11-11

最新評(píng)論