C語言課程設(shè)計(jì)-簡易公交車管理系統(tǒng)(數(shù)組實(shí)現(xiàn))_第1頁
C語言課程設(shè)計(jì)-簡易公交車管理系統(tǒng)(數(shù)組實(shí)現(xiàn))_第2頁
C語言課程設(shè)計(jì)-簡易公交車管理系統(tǒng)(數(shù)組實(shí)現(xiàn))_第3頁
C語言課程設(shè)計(jì)-簡易公交車管理系統(tǒng)(數(shù)組實(shí)現(xiàn))_第4頁
C語言課程設(shè)計(jì)-簡易公交車管理系統(tǒng)(數(shù)組實(shí)現(xiàn))_第5頁
已閱讀5頁,還剩16頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

精品文檔C語言課程設(shè)計(jì)——簡易公交車管理系統(tǒng)(數(shù)組實(shí)現(xiàn))可編輯可編輯精品文檔可編輯/**************************頭文件聲明************************************/#include"stdio.h"#include"stdlib.h"#include"string.h"#include"conio.h"/**************************函數(shù)聲明************************************/voidinit(); //初始化函數(shù)voidadd();//信息錄入函數(shù)voidview();//信息顯示函數(shù)voidmod();//信息修改函數(shù)voidmodmeun();//修改菜單voidmodnavimeun();//路線修改菜單voiddel();//信息刪除函數(shù)voidfind();//信息查詢函數(shù)voidfindmeun();//查詢菜單voidfindnavi();//路線導(dǎo)航查詢函數(shù)voidfindnum();//路線編號(hào)查詢函數(shù)voidfindstameun();//站臺(tái)信息查詢菜單voidfindsta();//站臺(tái)信息查詢函數(shù)voidsave();//信息保存函數(shù)voidmainmeun();//主菜單charTest(chara,charb,charc);//菜單輸入檢測(cè)函數(shù)/**************************宏定義聲明************************************/#defineN100//公交車數(shù)量/**************************結(jié)構(gòu)體定義************************************/structstation//途徑站點(diǎn)信息{ charc[20];//站點(diǎn)名稱};structbus//公交車信息{ charnum[20];//公交車路線編號(hào) charname[20];//司機(jī)姓名C語言課程設(shè)計(jì)——簡易公交車管理系統(tǒng)(數(shù)組實(shí)現(xiàn))全文共21頁,當(dāng)前為第1頁。 intn;//站臺(tái)數(shù)目C語言課程設(shè)計(jì)——簡易公交車管理系統(tǒng)(數(shù)組實(shí)現(xiàn))全文共21頁,當(dāng)前為第1頁。 structstationb[12];//站臺(tái)名稱 chartopen[20];//起始時(shí)間 chartclose[20];//終止時(shí)間 intmoney;//票價(jià)}a[N];/**************************函數(shù)定義************************************/intmain(){ chara; init(); printf("\n\t\t目前所能錄入的公交車數(shù)量上限為%d輛\n\n",N); printf("\n\t\t輸入回車鍵繼續(xù)\n"); fflush(stdin);//清除鍵盤緩沖區(qū) while(1) { system("cls"); mainmeun(); a=Test(getchar(),'1','6');//菜單檢測(cè)輸入函數(shù) switch(a) { case'1': system("cls");add();break; case'2': system("cls");view();break; case'3': system("cls");mod();break; case'4': system("cls");del();break; case'5':system("cls");find();break; case'6':return0; } } return0;}voidinit()//初始化函數(shù){ FILE*fp;//文件指針 inti;C語言課程設(shè)計(jì)——簡易公交車管理系統(tǒng)(數(shù)組實(shí)現(xiàn))全文共21頁,當(dāng)前為第2頁。 if((fp=fopen("bus.txt","r+"))==NULL)//初次嘗試打開"bus.txt"文本文件C語言課程設(shè)計(jì)——簡易公交車管理系統(tǒng)(數(shù)組實(shí)現(xiàn))全文共21頁,當(dāng)前為第2頁。 { printf("\n\t\t文件打開失敗\n\n\t\t正在嘗試創(chuàng)建新文件...\n"); fp=fopen("bus.txt","w");//創(chuàng)建"bus.txt"文本文件 if((fp=fopen("bus.txt","r+"))==NULL)//再次判斷是否打開成功 { printf("\t\t文件創(chuàng)建失敗!!!\n"); return; } } fp=fopen("bus.txt","r+"); for(i=0;i<N;i++)//將磁盤中的信息輸出到內(nèi)存中 if(fread(&a[i],sizeof(structbus),1,fp)!=1) break; fclose(fp); printf("\n\t\t初始化完成!!!\n\n"); return;}voidadd()//信息錄入函數(shù){ FILE*fp=NULL;//文件指針 inti,j; charcc[20]; for(i=0;i<N;i++) { if(*a[i].num!='\0') continue; else { printf("\n添加第%d輛公交車路線記錄:\n",i+1); printf("\n請(qǐng)輸入路線編碼(3位編碼,第一位為大寫字母,后兩位為數(shù)字):\n");//路線編碼 scanf("%s",cc); for(j=0;j<N;j++)//檢驗(yàn)是否重復(fù) if(strcmp(a[j].num,cc)==0)C語言課程設(shè)計(jì)——簡易公交車管理系統(tǒng)(數(shù)組實(shí)現(xiàn))全文共21頁,當(dāng)前為第3頁。 {C語言課程設(shè)計(jì)——簡易公交車管理系統(tǒng)(數(shù)組實(shí)現(xiàn))全文共21頁,當(dāng)前為第3頁。 printf("\n與已有路線編碼重復(fù),按回車鍵返回!!!\n"); fflush(stdin);//清除鍵盤緩沖區(qū) getchar(); system("cls"); return; } strcpy(a[i].num,cc); printf("\n請(qǐng)輸入司機(jī)姓名:");//司機(jī)姓名 scanf("%s",a[i].name); printf("\n請(qǐng)輸入途徑站臺(tái)總數(shù)(>=2):");//站臺(tái)總數(shù) scanf("%d",&a[i].n); printf("\n"); if(a[i].n<2||a[i].n>12) { while(a[i].n<2||a[i].n>12) { printf("\n站臺(tái)總數(shù)應(yīng)滿足(2<=n<=12),請(qǐng)重新輸入:"); scanf("%d",&a[i].n); printf("\n"); } } for(j=0;j<a[i].n;j++) { printf("請(qǐng)輸入第%d個(gè)站臺(tái)名稱:",j+1);//站臺(tái)名稱 scanf("%s",a[i].b[j].c); } printf("\n自動(dòng)生成公交路線:(1)%s",a[i].b[0].c); for(j=1;j<a[i].n;j++) { printf("---->(%d)%s",j+1,a[i].b[j].c); } printf("\n\n請(qǐng)輸入公交車的起始時(shí)間(格式為:時(shí):分):");//起始時(shí)間 scanf("%s",a[i].topen); printf("請(qǐng)輸入公交車的終止時(shí)間(格式為:時(shí):分):");//終止時(shí)間C語言課程設(shè)計(jì)——簡易公交車管理系統(tǒng)(數(shù)組實(shí)現(xiàn))全文共21頁,當(dāng)前為第4頁。 scanf("%s",a[i].tclose);C語言課程設(shè)計(jì)——簡易公交車管理系統(tǒng)(數(shù)組實(shí)現(xiàn))全文共21頁,當(dāng)前為第4頁。 printf("\n請(qǐng)輸入公交車的票價(jià):");//票價(jià) scanf("%d",&a[i].money); printf("\n第%d輛公交車路線記錄創(chuàng)建成功!!!\n",i+1); save(); printf("\n\t按回車鍵返回!!!\n"); fflush(stdin);//清除鍵盤緩沖區(qū) getchar(); system("cls"); return; } } if(i==N) printf("\n\n\n\t空間已滿,不能錄入!!!\n"); printf("\n\t按回車鍵返回!!!\n"); fflush(stdin);//清除鍵盤緩沖區(qū) getchar(); system("cls"); return;}voidview()//信息顯示函數(shù){ inti,j,min; structbust; for(i=0;*a[i].num!='\0'&&i<N;i++)//按“路線編號(hào)”用選擇法排序 { min=i; for(j=i+1;*a[j].num!='\0'&&j<N;j++) if(strcmp(a[i].num,a[j].num)>0) min=j; t=a[i]; a[i]=a[min]; a[min]=t; } printf("\n\n公交車信息庫"); printf("\n********************************************************************************\n");C語言課程設(shè)計(jì)——簡易公交車管理系統(tǒng)(數(shù)組實(shí)現(xiàn))全文共21頁,當(dāng)前為第5頁。 for(i=0;*a[i].num!='\0'&&i<N;i++)C語言課程設(shè)計(jì)——簡易公交車管理系統(tǒng)(數(shù)組實(shí)現(xiàn))全文共21頁,當(dāng)前為第5頁。 { printf("\t路線編號(hào):%-6s\t單程票價(jià):%d元\t\t司機(jī)姓名:%s\n",a[i].num,a[i].money,a[i].name); printf("\t起始時(shí)間:%-6s\t終止時(shí)間:%-6s\t站臺(tái)總數(shù):%d\n",a[i].topen,a[i].tclose,a[i].n); printf("\t公交路線:(1)%s",a[i].b[0].c); for(j=1;j<a[i].n;j++) printf("---->(%d)%s",j+1,a[i].b[j].c); printf("\n\n"); } printf("\n********************************************************************************\n"); printf("\n\t\t公交車信息顯示完畢!!!\n"); printf("\n\t\t輸入回車鍵返回主菜單:"); fflush(stdin);//清除鍵盤緩沖區(qū) getchar(); system("cls"); return;}voidmod()//信息修改函數(shù){ inti,j,m=0; chart,cc[20],mod[20]; printf("請(qǐng)輸入要修改信息的公交車路線編號(hào):\n"); scanf("%s",cc); for(i=0;*a[i].num!='\0'&&i<N;i++)//查找所輸入的公交車 { if(strcmp(a[i].num,cc)==0) { m=1; printf("\n\n\t\t已找到!!!\n"); while(1) { system("cls"); printf("\n\n正在修改的公交車信息\n");C語言課程設(shè)計(jì)——簡易公交車管理系統(tǒng)(數(shù)組實(shí)現(xiàn))全文共21頁,當(dāng)前為第6頁。 printf("\n-----------------------------------------------\n");C語言課程設(shè)計(jì)——簡易公交車管理系統(tǒng)(數(shù)組實(shí)現(xiàn))全文共21頁,當(dāng)前為第6頁。 printf("\t路線編號(hào):%-6s\t單程票價(jià):%d元\t\t司機(jī)姓名:%s\n",a[i].num,a[i].money,a[i].name); printf("\t起始時(shí)間:%-6s\t終止時(shí)間:%-6s\t站臺(tái)總數(shù):%d\n",a[i].topen,a[i].tclose,a[i].n); printf("\t公交路線:(1)%s",a[i].b[0].c); for(j=1;j<a[i].n;j++) printf("---->(%d)%s",j+1,a[i].b[j].c); printf("\n\n"); printf("\n-----------------------------------------------\n\n"); modmeun(); fflush(stdin);//清除鍵盤緩沖區(qū) t=Test(getchar(),'1','5');//菜單檢測(cè)輸入函數(shù) system("cls"); switch(t) { case'1'://修改路線編號(hào) { intk; printf("\n請(qǐng)輸入新的公交車編號(hào):"); scanf("%s",mod); for(k=0;*a[k].num!='\0'&&k<N;k++) { if(strcmp(a[k].num,mod)==0) { printf("與已有編號(hào)重復(fù),按回車鍵返回主菜單\n"); fflush(stdin);//清除鍵盤緩沖區(qū) getchar(); system("cls"); return; } } strcpy(a[i].num,mod); save(); break; }C語言課程設(shè)計(jì)——簡易公交車管理系統(tǒng)(數(shù)組實(shí)現(xiàn))全文共21頁,當(dāng)前為第7頁。 case'2'://修改車輛信息C語言課程設(shè)計(jì)——簡易公交車管理系統(tǒng)(數(shù)組實(shí)現(xiàn))全文共21頁,當(dāng)前為第7頁。 { printf("\n請(qǐng)輸入新的司機(jī)姓名:"); scanf("%s",a[i].name); printf("\n請(qǐng)輸入新的公交車票價(jià):"); scanf("%d",&a[i].money); save(); break; } case'3'://修改行車路線 { voidmodnavimeun();//路線修改菜單 intk; charz; while(1) { system("cls"); modnavimeun(); fflush(stdin);//清除鍵盤緩沖區(qū) z=Test(getchar(),'1','5');//菜單檢測(cè)輸入函數(shù) system("cls"); switch(z) { case'1'://添加站點(diǎn) { if(a[i].n+1>12)//判斷是否滿足條件 { printf("\n站臺(tái)總數(shù)達(dá)到12個(gè),無法添加新站點(diǎn)\n\n按回車鍵返回\n"); fflush(stdin);//清除鍵盤緩沖區(qū) getchar(); system("cls"); return; } printf("\n請(qǐng)輸入需要添加第幾個(gè)站點(diǎn):"); scanf("%d",&k);C語言課程設(shè)計(jì)——簡易公交車管理系統(tǒng)(數(shù)組實(shí)現(xiàn))全文共21頁,當(dāng)前為第8頁。 while(a[i].n+1<k)C語言課程設(shè)計(jì)——簡易公交車管理系統(tǒng)(數(shù)組實(shí)現(xiàn))全文共21頁,當(dāng)前為第8頁。 { printf("目前共%d個(gè)站點(diǎn),無法添加第%d個(gè)站點(diǎn)\n請(qǐng)重新輸入:",a[i].n,k); scanf("%d",&k); printf("\n"); } a[i].n=a[i].n+1; for(j=a[i].n;j>k-1;j--) { a[i].b[j]=a[i].b[j-1]; } printf("\n請(qǐng)輸入新添加的站點(diǎn)名稱:"); scanf("%s",a[i].b[k-1].c); save(); break; } case'2'://修改站點(diǎn) { printf("\n請(qǐng)輸入需要修改第幾個(gè)站點(diǎn):"); scanf("%d",&k); printf("\n請(qǐng)輸入新的站點(diǎn)名稱:"); scanf("%s",a[i].b[k-1].c); save(); break; } case'3'://刪除站點(diǎn) { printf("\n請(qǐng)輸入需要?jiǎng)h除第幾個(gè)站點(diǎn):"); scanf("%d",&k); for(j=k-1;j<a[i].n;j++) { a[i].b[j]=a[i].b[j+1]; } a[i].n=a[i].n-1; save(); break; } case'4'://重置路線C語言課程設(shè)計(jì)——簡易公交車管理系統(tǒng)(數(shù)組實(shí)現(xiàn))全文共21頁,當(dāng)前為第9頁。 {C語言課程設(shè)計(jì)——簡易公交車管理系統(tǒng)(數(shù)組實(shí)現(xiàn))全文共21頁,當(dāng)前為第9頁。 printf("\n請(qǐng)輸入新的途徑站臺(tái)總數(shù)(2<=n<=12):"); scanf("%d",&a[i].n); printf("\n"); while(a[i].n<2||a[i].n>12)//判斷是否滿足條件 { printf("\n站臺(tái)總數(shù)應(yīng)滿足(2<=n<=12),請(qǐng)重新輸入:"); scanf("%d",&a[i].n); printf("\n"); } for(j=0;j<a[i].n;j++) { printf("請(qǐng)輸入新的第%d個(gè)站臺(tái)名稱:",j+1); scanf("%s",a[i].b[j].c); } printf("\t公交路線:(1)%s",a[i].b[0].c); for(j=1;j<a[i].n;j++) printf("---->(%d)%s",j+1,a[i].b[j].c); printf("\n\n"); save(); break; } case'5'://返回菜單 { printf("\n\t\t按回車鍵返回菜單\n"); fflush(stdin);//清除鍵盤緩沖區(qū) getchar(); system("cls"); return;//返回主菜單 } } } } case'4'://修改行車時(shí)間C語言課程設(shè)計(jì)——簡易公交車管理系統(tǒng)(數(shù)組實(shí)現(xiàn))全文共21頁,當(dāng)前為第10頁。 {C語言課程設(shè)計(jì)——簡易公交車管理系統(tǒng)(數(shù)組實(shí)現(xiàn))全文共21頁,當(dāng)前為第10頁。 printf("\n\n請(qǐng)輸入公交車的起始時(shí)間(格式為:時(shí):分):"); scanf("%s",a[i].topen); printf("請(qǐng)輸入公交車的終止時(shí)間(格式為:時(shí):分):"); scanf("%s",a[i].tclose); save(); break; } case'5': { printf("\n\t\t按回車鍵返回主菜單\n"); fflush(stdin);//清除鍵盤緩沖區(qū) getchar(); system("cls"); return;//返回主菜單 } } } } } if(m==0) printf("\n\n\t\t無此公交車信息!!!\n"); printf("\n\t\t按回車鍵返回\n"); fflush(stdin);//清除鍵盤緩沖區(qū) getchar(); system("cls"); return;}voidmodmeun()//修改菜單{ printf("\n\t\t修改菜單"); printf("\n\t\t********************************************"); printf("\n\t\t*1、修改路線編號(hào)*"); printf("\n\t\t*2、修改車輛信息*"); printf("\n\t\t*3、修改行車路線*"); printf("\n\t\t*4、修改行車時(shí)間*");C語言課程設(shè)計(jì)——簡易公交車管理系統(tǒng)(數(shù)組實(shí)現(xiàn))全文共21頁,當(dāng)前為第11頁。 printf("\n\t\t*5、返回到主菜單*");C語言課程設(shè)計(jì)——簡易公交車管理系統(tǒng)(數(shù)組實(shí)現(xiàn))全文共21頁,當(dāng)前為第11頁。 printf("\n\t\t********************************************"); printf("\n\n\t\t請(qǐng)輸入您的選擇:");}voidmodnavimeun()//路線修改菜單{ printf("\n\t\t路線修改菜單"); printf("\n\t\t********************************************"); printf("\n\t\t*1、站點(diǎn)添加*"); printf("\n\t\t*2、站點(diǎn)修改*"); printf("\n\t\t*3、站點(diǎn)刪除*"); printf("\n\t\t*4、路線重置*"); printf("\n\t\t*5、返回菜單*"); printf("\n\t\t********************************************"); printf("\n\n\t\t請(qǐng)輸入您的選擇:");}voiddel()//信息刪除函數(shù){ inti,j,t,m=0; charcc[20]; printf("\n請(qǐng)輸入要?jiǎng)h改信息的公交車路線編號(hào):\n"); scanf("%s",cc); for(i=0;*a[i].num!='\0'&&i<N;i++)//查找所輸入的公交車 { if(strcmp(a[i].num,cc)==0) { m=1; printf("\n已找到:\n"); printf("\n-----------------------------------------------\n"); printf("\t路線編號(hào):%-6s\t單程票價(jià):%d元\t\t司機(jī)姓名:%s\n",a[i].num,a[i].money,a[i].name); printf("\t起始時(shí)間:%-6s\t終止時(shí)間:%-6s\t站臺(tái)總數(shù):%d\n",a[i].topen,a[i].tclose,a[i].n); printf("\t公交路線:(1)%s",a[i].b[0].c); for(j=1;j<a[i].n;j++)C語言課程設(shè)計(jì)——簡易公交車管理系統(tǒng)(數(shù)組實(shí)現(xiàn))全文共21頁,當(dāng)前為第12頁。 printf("---->(%d)%s",j+1,a[i].b[j].c);C語言課程設(shè)計(jì)——簡易公交車管理系統(tǒng)(數(shù)組實(shí)現(xiàn))全文共21頁,當(dāng)前為第12頁。 printf("\n\n"); printf("\n-----------------------------------------------\n\n"); printf("即將刪除該公交車信息!!!\n確定請(qǐng)按1:"); scanf("%d",&t); if(t==1) { if(i+1==N) memset(&a[i],'\0',sizeof(structbus));//最后一輛直接進(jìn)行清空 else for(j=i;*a[j].num!='\0'&&j+1<N;j++)//后面的公交車信息補(bǔ)上刪去的公家車信息 a[j]=a[j+1]; printf("編號(hào)為%s的公交車信息刪除完畢!\n",cc); save(); break; } } } if(m==0) printf("\n\n\t\t無此公交車信息!!!\n"); printf("\n\n\t輸入回車鍵返回主菜單:"); fflush(stdin);//清除鍵盤緩沖區(qū) getchar(); system("cls"); return;}voidfind()//信息查詢函數(shù){ chart; while(1) { findmeun(); fflush(stdin);//清除鍵盤緩沖區(qū) t=Test(getchar(),'1','4');//菜單檢測(cè)輸入函數(shù) switch(t)C語言課程設(shè)計(jì)——簡易公交車管理系統(tǒng)(數(shù)組實(shí)現(xiàn))全文共21頁,當(dāng)前為第13頁。 {C語言課程設(shè)計(jì)——簡易公交車管理系統(tǒng)(數(shù)組實(shí)現(xiàn))全文共21頁,當(dāng)前為第13頁。 case'1':system("cls");findnavi();break;//路線導(dǎo)航查詢 case'2':system("cls");findnum();break;//路線編號(hào)查詢函數(shù) case'3':system("cls");findsta();break;//站臺(tái)信息查詢函數(shù) case'4':system("cls");return;//返回主菜單 } } return;}voidfindmeun()//查詢菜單{ printf("\n\t\t查詢菜單"); printf("\n\t\t********************************************"); printf("\n\t\t*1、路線導(dǎo)航查詢*"); printf("\n\t\t*2、路線編號(hào)查詢*"); printf("\n\t\t*3、站臺(tái)信息查詢*"); printf("\n\t\t*4、返回到主菜單*"); printf("\n\t\t********************************************"); printf("\n\n\t\t請(qǐng)輸入您的選擇:");}voidfindnavi()//路線導(dǎo)航查詢函數(shù){ inti,j,k,m=0; charc1[20],c2[20]; printf("請(qǐng)輸入您目前所在的站點(diǎn):\n\t\t"); scanf("%s",c1); printf("請(qǐng)輸入您想要前往的站點(diǎn):\n\t\t"); scanf("%s",c2); printf("\n\n您可選擇的公交車信息如下\n"); printf("\n-----------------------------------------------\n"); for(i=0;*a[i].num!='\0'&&i<N;i++) { for(j=0;j<a[i].n;j++) for(k=j+1;k<a[i].n;k++) if(strcmp(a[i].b[j].c,c1)==0&&strcmp(a[i].b[k].c,c2)==0)C語言課程設(shè)計(jì)——簡易公交車管理系統(tǒng)(數(shù)組實(shí)現(xiàn))全文共21頁,當(dāng)前為第14頁。 {C語言課程設(shè)計(jì)——簡易公交車管理系統(tǒng)(數(shù)組實(shí)現(xiàn))全文共21頁,當(dāng)前為第14頁。 m=1; printf("\n"); printf("\t路線編號(hào):%-6s\t單程票價(jià):%d元\t\t司機(jī)姓名:%s\n",a[i].num,a[i].money,a[i].name); printf("\t起始時(shí)間:%-6s\t終止時(shí)間:%-6s\t站臺(tái)總數(shù):%d\n",a[i].topen,a[i].tclose,a[i].n); printf("\t公交路線:(1)%s",a[i].b[0].c); for(j=1;j<a[i].n;j++) printf("---->(%d)%s",j+1,a[i].b[j].c); printf("\n\n"); } } printf("\n-----------------------------------------------\n\n"); printf("\t\t\t\t顯示完畢\n"); if(m==0) printf("\n\n\t\t\t\t抱歉,無途徑此路線的公交車\n"); printf("\n\t\t\t\t輸入回車鍵返回查詢菜單:"); fflush(stdin);//清除鍵盤緩沖區(qū) getchar(); system("cls"); return;}voidfindnum()//路線編號(hào)查詢函數(shù){ inti,j,m=0; charcc[20]; printf("請(qǐng)輸入您想要查找的公交路線編號(hào):\n"); scanf("%s",cc); for(i=0;*a[i].num!='\0'&&i<N;i++) { if(strcmp(a[i].num,cc)==0) { m=1; printf("\n已找到:\n"); printf("\n-----------------------------------------------\n");C語言課程設(shè)計(jì)——簡易公交車管理系統(tǒng)(數(shù)組實(shí)現(xiàn))全文共21頁,當(dāng)前為第15頁。 printf("\t路線編號(hào):%-6s\t單程票價(jià):%d元\t\t司機(jī)姓名:%s\n",a[i].num,a[i].money,a[i].name);C語言課程設(shè)計(jì)——簡易公交車管理系統(tǒng)(數(shù)組實(shí)現(xiàn))全文共21頁,當(dāng)前為第15頁。 printf("\t起始時(shí)間:%-6s\t終止時(shí)間:%-6s\t站臺(tái)總數(shù):%d\n",a[i].topen,a[i].tclose,a[i].n); printf("\t公交路線:(1)%s",a[i].b[0].c); for(j=1;j<a[i].n;j++) printf("---->(%d)%s",j+1,a[i].b[j].c); printf("\n\n"); printf("\n-----------------------------------------------\n\n"); break; } } if(m==0) printf("\n\t\t無此公交車信息\n"); printf("\n\t\t輸入回車鍵返回查詢菜單:"); fflush(stdin);//清除鍵盤緩沖區(qū) getchar(); system("cls"); return;}voidfindstameun()//站臺(tái)信息查詢菜單{ printf("\n\t\t站臺(tái)信息查詢菜單"); printf("\n\t\t********************************************"); printf("\n\t\t*1、起始站臺(tái)查詢*"); printf("\n\t\t*2、終止站臺(tái)查詢*"); printf("\n\t\t*3、途徑站臺(tái)查詢*"); printf("\n\t\t*4、返回查詢菜單*"); printf("\n\t\t********************************************"); printf("\n\n\t\t請(qǐng)輸入您的選擇:");}voidfindsta()//站臺(tái)信息查詢函數(shù){ inti,j,k; chart;C語言課程設(shè)計(jì)——簡易公交車管理系統(tǒng)(數(shù)組實(shí)現(xiàn))全文共21頁,當(dāng)前為第16頁。C語言課程設(shè)計(jì)——簡易公交車管理系統(tǒng)(數(shù)組實(shí)現(xiàn))全文共21頁,當(dāng)前為第16頁。 while(1) { intm=0; findstameun(); fflush(stdin);//清除鍵盤緩沖區(qū) t=Test(getchar(),'1','4');//菜單檢測(cè)輸入函數(shù) system("cls"); switch(t) { case'1': { printf("請(qǐng)輸入您所要查詢的起始站臺(tái)名稱:\n"); scanf("%s",cc); printf("\n以%s為起始站臺(tái)的公交車如下:\n",cc); printf("\n-----------------------------------------------\n"); for(i=0;*a[i].num!='\0'&&i<N;i++) { if(strcmp(a[i].b[0].c,cc)==0) { m=1; printf("\n"); printf("\t路線編號(hào):%-6s\t單程票價(jià):%d元\t\t司機(jī)姓名:%s\n",a[i].num,a[i].money,a[i].name); printf("\t起始時(shí)間:%-6s\t終止時(shí)間:%-6s\t站臺(tái)總數(shù):%d\n",a[i].topen,a[i].tclose,a[i].n); printf("\t公交路線:(1)%s",a[i].b[0].c); for(j=1;j<a[i].n;j++) printf("---->(%d)%s",j+1,a[i].b[j].c); printf("\n\n"); } } printf("\n-----------------------------------------------\n\n"); printf("\t已全部顯示完畢!!!\n"); if(m==0) printf("\n\t沒有公交車以該站點(diǎn)為起始站臺(tái)\n"); break;C語言課程設(shè)計(jì)——簡易公交車管理系統(tǒng)(數(shù)組實(shí)現(xiàn))全文共21頁,當(dāng)前為第17頁。 }C語言課程設(shè)計(jì)——簡易公交車管理系統(tǒng)(數(shù)組實(shí)現(xiàn))全文共21頁,當(dāng)前為第17頁。 case'2': { printf("請(qǐng)輸入您所要查詢的終止站臺(tái)名稱:\n"); scanf("%s",cc); printf("\n以%s為終止站臺(tái)的公交車如下:\n",cc); printf("\n-----------------------------------------------\n"); for(i=0;*a[i].num!='\0'&&i<N;i++) { k=a[i].n; if(strcmp(a[i].b[k-1].c,cc)==0) { m=1; printf("\n"); printf("\t路線編號(hào):%-6s\t單程票價(jià):%d元\t\t司機(jī)姓名:%s\n",a[i].num,a[i].money,a[i].name); printf("\t起始時(shí)間:%-6s\t終止時(shí)間:%-6s\t站臺(tái)總數(shù):%d\n",a[i].topen,a[i].tclose,a[i].n); printf("\t公交路線:(1)%s",a[i].b[0].c); for(j=1;j<a[i].n;j++) printf("---->(%d)%s",j+1,a[i].b[j].c); printf("\n\n"); } } printf("\n-----------------------------------------------\n\n"); printf("\t已全部顯示完畢!!!\n"); if(m==0) printf("\n\t沒有公交車以該站點(diǎn)為起始站臺(tái)\n"); break; } case'3': { printf("請(qǐng)輸入您所要查詢的途徑站臺(tái)名稱:\n"); scanf("%s",cc); printf("\n-----------------------------------------------\n"); for(i=0;*a[i].num!='\0'&&i<N;i++)C語言課程設(shè)計(jì)——簡易公交車管理系統(tǒng)(數(shù)組實(shí)現(xiàn))全文共21頁,當(dāng)前為第18頁。 for(k=1;k<a[i].n-1;k++)C語言課程設(shè)計(jì)——簡易公交車管理系統(tǒng)(數(shù)組實(shí)現(xiàn))全文共21頁,當(dāng)前為第18頁。 if(strcmp(a[i].b[k].c,cc)==0)

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論