資源簡介
大一時做的課程設計
模擬北京長途汽車站的汽車票管理過程,設計一個系統能夠實現車次信息的維護,顧客可以瀏覽車次信息,可以購票或退票。
程序要求編寫登陸的功能選項界面。例如:
1--管理人員登錄
A--增加車次信息
B--刪除車次信息
C--更改車次信息
D--返回主菜單
2--售票員登錄
A--路線查詢
B--售出車票
3--退出系統
各個選項分別代表不同的功能,并由此進入到不同功能模塊中。要求,從不同的功能模塊退出時要返回到這個功能界面。
選擇1:以管理員的身份登錄,可以對車次信息(班次、發車時間、起點站、終點站 行車時間、額定載量、已售出票數)進行增、刪、改的操作,將更新的信息文件存儲,并可以返回主菜單。
選擇2:以售票員身份登錄,可以按車次號查詢,或者起點或終點站查詢;并能夠完成售出車票的功能。
選擇3:結束程序,退出系統。
代碼片段和文件信息
#include?
#include?
#include?
#include?
#define?LEN?50
int?nm;
char?choicen1choicen2choicen3;
struct?data /*利用結構體數組臨時儲存車輛信息*/
?{
int?number;
int?time;
char?strat_position[50];
char?end_position[50];
int?long1;
int?capacity;
int?sell_ticket;
struct?data?*next;
}*headdatas*p;
void?mmenu()
{
void?judge1(int?ychar?x[5]);
void?judge2(int?ychar?x[5]);
int?d;
char?fe[5];
system(“cls“); /*清屏*/
printf(“\n******歡迎來到汽車票管理系統******\n“);?????/*登陸界面*/
printf(“**********************************\n“);
printf(“**??????????????????????????????**\n“);
printf(“**?????????1.管理員登陸?????????**\n“);
printf(“**?????????2.售票員登陸?????????**\n“);
printf(“**?????????3.退出???????????????**\n“);
printf(“**??????????????????????????????**\n“);
printf(“**********************************\n“);
printf(“**********************************\n“);
printf(“請選擇:“);
scanf(“%c“&f); /*根據提示輸入f值,判斷進入子菜單。*/
if(f==‘1‘) /*進入管理員登錄的密碼保護系統*/
{
printf(“\n請輸入您的帳號:“);
scanf(“%s“e);
printf(“請輸入您的密碼:“);
scanf(“%d“&d);
judge1(de);
}
else?if(f==‘2‘) /*進入售票員登錄的密碼保護系統*/
{
printf(“\n請輸入您的帳號:“);
scanf(“%s“e);
printf(“請輸入您的密碼:“);
scanf(“%d“&d);
judge2(de);
}
else?if(f==‘3‘)?exit(0); /*退出*/
? else /*防錯處理,若輸入錯誤則返回至mmenu()函數*/
{
printf(“沒有這個選項請重新選擇“);
mmenu();
}
}
void?judge1(int?ychar?x[5]) /*確定是否登錄正確*/
{
void?manager();
int?d;
char?e[5];
if(y==131&&strcmp(x“sj“)==0) /*若登錄信息正確則進入管理員界面*/
manager();
else /*若登錄信息不正確則返回judge1函數重新輸入*/
{
fflush?stdin; /*由于會出現帳號與密碼在同一行出現的bug,所以清內存解決*/
printf(“您輸入的帳號或密碼貌似有誤~好好想想,再試試?“);
printf(“\n請輸入您的帳號:“);
scanf(“%s“&e);
fflush?stdin;
printf(“請輸入您的密碼:“);
scanf(“%d“&d);
fflush?stdin;
judge1(de);
}
}
void?manager()
{
char?choicen=0;
void?mmenu();
void?print(struct?data?*head);
char?menu();
FILE?*fp;
struct?data?*a();
struct?data?*b(struct?data?*head);
struct?data?*c(struct?data?*head);
struct?data?*insert(struct?data?*head);
while(choicen!=‘F‘)
{
choicen=menu();
if?(choicen==‘A‘)
head=a(head);
else?if(choicen==‘B‘)
head=b(head);
else?if?(choicen==‘C‘)
head=c(head);
else?if?(choicen==‘D‘)
head=insert(head);
else?if?(choicen==‘E‘)
print(head);
}
fp=fopen(“c:\\bus.txt““w“);
p=head;
printf(“信息:\n“);
if(head!=NULL)
do
{
fprintf(fp“%d?%d?%s?%s?%d?%d?%d\n“p->numberp->timep->strat_positionp->end_positionp->long1p->capacityp->sell_ticket);
p=p->next;
m++;
}
while(p!=NULL);
fclose(fp);
mmenu();
}
void?judge2(int?ychar?x[5]) /*確定登陸是否正確*/
{
void?solder();
int?d;
char?e[5];
if(y==181&&strcmp(x“xbf“)==0) /*若登錄信息正確則進入售票員界面*/
solder();
else /*若登錄信息不正確則返回judge2函數重新輸入*/
{
fflush?stdin;
printf(“您輸入的帳號或密碼貌似有誤~好好想想,再試試?“);
printf(“\n請輸入您的帳號
- 上一篇:C++編寫S-G濾波
- 下一篇:仿真足球機器人比賽C++源代碼.zip
評論
共有 條評論