久久久久久久999_99精品久久精品一区二区爱城_成人欧美一区二区三区在线播放_国产精品日本一区二区不卡视频_国产午夜视频_欧美精品在线观看免费

 找回密碼
 立即注冊

QQ登錄

只需一步,快速開始

搜索
查看: 4985|回復: 0
打印 上一主題 下一主題
收起左側

C語言飛機訂票系統(tǒng)源代碼

[復制鏈接]
跳轉到指定樓層
樓主
ID:773558 發(fā)表于 2020-6-9 09:40 | 只看該作者 回帖獎勵 |倒序瀏覽 |閱讀模式
(需求分析):
任務:通過此系統(tǒng)可以實現如下功能:
錄入: 可以錄入航班情況(數據可以存儲在一個數據文件中)
瀏覽:航班信息瀏覽功能需要提供顯示操作;
查詢:可提供按照航班號、起點站、終點站、飛行時間、查詢,可以查詢某個航線的情況(如,輸入航班號,起飛抵達城市,確定航班是否滿倉);另外要提供鍵盤式選擇菜單以實現功能選擇。
要求:根據以上功能說明,設計航班信息,訂票信息的存儲結構,設計程序完成功能?梢越⒑桨嘟Y構體,結構體成員包括航班號、起點站、終點站、飛行時間、預售票總數、已售票數。

源代碼:
  1. #include<stdio.h>         /*頭文件包含命令*/
  2. #include<stdlib.h>
  3. #define N 50

  4. struct flight             /*結構體存放航班信息的結構*/
  5. {
  6.         int flight_no;
  7.         char startstation[20];
  8.         char endstation[20];
  9.         char flytime[10];
  10.         int plan_ticket;
  11.         int sell_ticket;
  12. }fly[N];/*定義結構體變量*/

  13. FILE*  fp;
  14. void Browse();
  15. void printf_oneflight(int i);
  16. void menu();

  17. void input(i)      /* 把航班信息輸入到文件*/
  18. {
  19.         struct flight t;
  20.         printf("\nflight_no  startstation  endstation  flytime  plan_ticket  sell_ticket\n");
  21.         scanf("%d%s%s%s%d%d",&t.flight_no,t.startstation,t.endstation,t.flytime,&t.plan_ticket,&t.sell_ticket);
  22.         
  23.         fp=fopen("flydata.txt","ab");
  24.                   if(!fp){printf("can not open this file\n");exit(0);}
  25.           else fwrite(&t,sizeof(struct flight),1,fp);
  26.           fclose(fp);
  27. }


  28. void printf_oneflight(int i) /*輸出一個 航班信息*/
  29. {
  30.         printf("\n%5d%20s%20s%10s%4d%4d\n",fly[i].flight_no,fly[i].startstation,fly[i].endstation,fly[i].flytime,fly[i].plan_ticket,fly[i].sell_ticket);
  31. }


  32. void printf_face()    /*輸出文件內容結構*/
  33. {
  34.         printf("\n\tNO.          startstation  endstation         flytime  plan_ticket        sell_ticket\n");
  35. }


  36. int load()/*載入函數實現文件內容載入程序,并返回飛機航班數值*/
  37. {
  38.         FILE *fp;
  39.         int i;
  40.         if((fp=fopen("flydata.txt","rb"))==NULL)
  41.         {
  42.                 printf("\nCan not open file\n");
  43.                 exit(0);
  44.         }
  45.         for(i=0;!feof(fp);i++)
  46.                 fread(&fly[i],sizeof(struct flight),1,fp);
  47.         fclose(fp);
  48.         return(i-1);
  49. }


  50. void printf_back()    /*返回退出函數實現程序退出、返回*/
  51. {
  52.         int w;
  53.         printf("\n\n\tSuccessful.^_^\n\n");
  54.         printf("What do you want to do?\n\n\t1).Browse all now\t2).back:[]\b\b");
  55.         scanf("%d",&w);
  56.         if(w==1)  Browse();
  57.         else menu();
  58. }


  59. void enter()/*航班信息錄入*/
  60. {
  61.         int i,n;
  62.         printf("How many flights do you want input? :[ ]\b\b");
  63.         scanf("%d",&n);
  64.         printf("\n Enter data now\n\n");
  65.         for(i=0;i<n;i++)
  66.         {
  67.                 printf("\n Input %dth float record.\n",i+1);
  68.                 input(i);
  69.         }
  70.         printf_back();
  71. }

  72. void Browse()
  73. {
  74.         int i,n;
  75.         n=load();
  76.         printf_face();
  77.         for(i=0;i<n;i++)
  78.         {
  79.                 if(i%10==0)
  80.                 {
  81.                 printf("\nPress any key to contiune ...");
  82.                 getchar();
  83.                 puts("\n\n");
  84.                 }
  85.                 puts("\n\n");
  86.                 printf_oneflight(i);
  87.         }
  88.         printf("\tThere are %d record.\n",n);
  89.         printf("\nPress any key to back ...\n");
  90.         getchar();  /*沒有返回植*/
  91.         menu();
  92. }

  93. void Search()/*查詢*/
  94. {
  95.         int m,i,flight_no,flag=0;
  96.         printf("Please input flight_no:\n");
  97.         scanf("%d",&flight_no);
  98.         m=load();
  99.         for(i=0;i<m;i++)
  100.         {
  101.                 if(flight_no==fly[i].flight_no)
  102.                 {
  103.                         flag=1;
  104.                         printf("\nThe flight message is:\n");
  105.                         printf_oneflight(i);
  106.                 }
  107.         }
  108.         if(flag==1)
  109.                 printf("Found!");
  110.         else
  111.                 printf("Not Found!");
  112.         printf_back();
  113. }


  114. void menu()
  115. {
  116.         int n,w;
  117.         do
  118.         {
  119.                 puts("\t\t***********************MENU***************************\n\n");
  120.                 puts("\t\t\t\t 1.enter new data");
  121.                 puts("\t\t\t\t 2.Browse all");
  122.                 puts("\t\t\t\t 3.Search");
  123.                 puts("\t\t\t\t 4.exit");
  124.                 puts("\n\n\t\t *******************************************************\n");
  125.                 printf("Choice your number(1-4): [ ]\b\b");
  126.                 scanf("%d",&n);
  127.                 if(n<1||n>4)
  128.                 {
  129.                         w=1;
  130.                         getchar();
  131.                 }
  132.                 else w=0;
  133.         }
  134.         while(w==1);
  135.         switch(n)
  136.         {
  137.                 case 1:enter();break;
  138.                 case 2:Browse();break;
  139.                 case 3:Search();break;
  140.                 case 4:exit(0);
  141.         }
  142. }
  143. /*********************************主函數***********************************/
  144. main()
  145. {
  146.         menu();/*菜單函數的功能是替主函數調用個功能模塊函數*/
  147. }
復制代碼

評分

參與人數 1黑幣 +50 收起 理由
admin + 50 共享資料的黑幣獎勵!

查看全部評分

分享到:  QQ好友和群QQ好友和群 QQ空間QQ空間 騰訊微博騰訊微博 騰訊朋友騰訊朋友
收藏收藏1 分享淘帖 頂 踩
回復

使用道具 舉報

您需要登錄后才可以回帖 登錄 | 立即注冊

本版積分規(guī)則

手機版|小黑屋|51黑電子論壇 |51黑電子論壇6群 QQ 管理員QQ:125739409;技術交流QQ群281945664

Powered by 單片機教程網

快速回復 返回頂部 返回列表
主站蜘蛛池模板: 精品国产乱码久久久久久闺蜜 | 午夜大片| 密室大逃脱第六季大神版在线观看 | av国产精品 | 午夜a区 | 国产精品久久国产精品 | 日日夜夜免费精品视频 | 狠狠色综合久久婷婷 | 日批免费看 | 91久久精品国产91久久 | 国内精品视频 | 99久久精品免费看国产高清 | 午夜免费av | 久久精品免费一区二区三 | 成人免费观看男女羞羞视频 | 久久av网 | 国产福利91精品一区二区三区 | 日韩国产欧美在线观看 | 亚洲免费人成在线视频观看 | 欧美日韩在线播放 | 男女av| 久久久高清 | 搞av.com| 一区二区三区韩国 | 国产成人精品一区二区三 | 天天干天天插 | 综合五月 | 先锋影音资源网站 | 久久亚洲高清 | 影音av | 久久久久久久久久久爱 | 一级毛片在线看 | 激情五月婷婷丁香 | 在线播放日韩 | 欧美日韩不卡合集视频 | 另类专区亚洲 | 一区二区精品视频 | 欧美 日韩 综合 | 国产精品日本一区二区在线播放 | 免费的日批视频 | 欧美激情一区二区三区 |