欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C++實現(xiàn)飛機訂票系統(tǒng)

 更新時間:2022年03月14日 11:19:07   作者:那時初見  
這篇文章主要為大家詳細介紹了C++實現(xiàn)飛機訂票系統(tǒng),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了C++實現(xiàn)飛機訂票系統(tǒng)的具體代碼,供大家參考,具體內容如下

// 飛機訂票系統(tǒng).cpp : 定義控制臺應用程序的入口點。
//

#include "stdafx.h"
#include <stdio.h>
#include <string.h>
#include<stdlib.h>
#include<conio.h>
#define N 2

typedef struct plane
{
? ? char ID[10];
? ? char Start_Place[10];
? ? char End_Place[10];
? ? float price;
? ? int Buy_num;
? ? int Max_num;
? ? char time[20];
}PLANE;
PLANE p[N];

void menu();
void menu1();

void count()
{
? ? char a[10];
? ? int i, num = 0;
? ? printf("請您輸入要統(tǒng)計的飛機目的地:");
? ? scanf("%s", a);
? ? printf("航班代號 ? ? 起始地點 ? ?目的地 ? ?票價 ? ?已售 ? ? 乘客容量 時間/n");
? ? for (i = 0; i<N; i++)
? ? {
? ? ? ? if (strcmp(a, p[i].End_Place) == 0)
? ? ? ? {
? ? ? ? ? ? num++;
? ? ? ? ? ? printf("%s ? ?%s ? ?%s ? ?%7.2f ? ?%d ? ?%d ? ?%d/n", p[i].ID, p[i].Start_Place, p[i].End_Place, p[i].price, p[i].Buy_num, p[i].Max_num, p[i].time);
? ? ? ? }
? ? }
? ? printf("/n您想統(tǒng)計的航班有%d條!/n", num);
? ? getchar();
? ? menu1();

}

void browse()
{
? ? int i;
? ? system("cls");
? ? printf("瀏覽航班信息:/n");
? ? printf("航班代號 ? ? 起始地點 ? ?目的地 ? ?票價 ? ?已售 ? ? 乘客容量 時間/n");
? ? for (i = 0; i<N; i++)
? ? {
? ? ? ? printf("%s ? ?%s ? ?%s ? ?%7.2f ? ?%d ? ?%d ? ?%s/n", p[i].ID, p[i].Start_Place, p[i].End_Place, p[i].price, p[i].Buy_num, p[i].Max_num, p[i].time);
? ? }
? ? getchar();
? ? menu();

}

void order()
{
? ? int i, j;
? ? PLANE temp;
? ? for (i = 0; i<N; i++)
? ? {
? ? ? ? for (j = i; j<N; j++)
? ? ? ? {
? ? ? ? ? ? if (strcmp(p[i].time, p[j].time)>0)
? ? ? ? ? ? {
? ? ? ? ? ? ? ? temp = p[i];
? ? ? ? ? ? ? ? p[i] = p[j];
? ? ? ? ? ? ? ? p[j] = temp;
? ? ? ? ? ? }

? ? ? ? }
? ? }
? ? browse();


}
void enter()
{
? ? int i;
? ? system("cls");
? ? printf("請您輸入航班信息:");
? ? for (i = 0; i<N; i++)
? ? {
? ? ? ? printf("航班代號:");
? ? ? ? scanf("%s", p[i].ID);
? ? ? ? printf("起飛地點:");
? ? ? ? scanf("%s", p[i].Start_Place);
? ? ? ? printf("目的地點:");
? ? ? ? scanf("%s", p[i].End_Place);
? ? ? ? printf("票價:");
? ? ? ? scanf("%f", &p[i].price);
? ? ? ? p[i].Buy_num = 0;
? ? ? ? printf("乘客容量:");
? ? ? ? scanf("%d", &p[i].Max_num);
? ? ? ? printf("起飛時間:");
? ? ? ? scanf("%s", p[i].time);
? ? }

? ? getchar();
? ? menu();
}

void buy()
{
? ? char t[20], place[20];
? ? int i, w = 0, num;
? ? printf("時間");
? ? scanf("%s", t);
? ? printf("mudidi");
? ? scanf("%s", place);
? ? for (i = 0; i<N; i++)
? ? {
? ? ? ? if (strcmp(t, p[i].time) == 0 && strcmp(place, p[i].End_Place) == 0)
? ? ? ? {
? ? ? ? ? ? w = 1;
? ? ? ? ? ? printf("%s ? ?%s ? ?%s ? ?%7.2f ? ?%d ? ?%d ? ?%s/n", p[i].ID, p[i].Start_Place, p[i].End_Place, p[i].price, p[i].Buy_num, p[i].Max_num, p[i].time);
? ? ? ? ? ? printf("買幾張票!");
? ? ? ? ? ? scanf("%d", &num);
? ? ? ? ? ? if (p[i].Buy_num + num>p[i].Max_num)
? ? ? ? ? ? {
? ? ? ? ? ? ? ? printf("當前余票不足,只剩%d張", p[i].Max_num - p[i].Buy_num);
? ? ? ? ? ? }
? ? ? ? ? ? else
? ? ? ? ? ? {
? ? ? ? ? ? ? ? p[i].Buy_num = p[i].Buy_num + num;
? ? ? ? ? ? ? ? printf("購票成功!");
? ? ? ? ? ? }
? ? ? ? }

? ? }
? ? if (w == 0)
? ? ? ? printf("沒有您要得票!");
? ? getchar();
? ? menu1();

}
void back()
{
? ? char id[20];
? ? int i, w = 0;
? ? printf("id:");
? ? scanf("%s", id);
? ? for (i = 0; i<N; i++)
? ? {
? ? ? ? if (strcmp(id, p[i].ID) == 0)
? ? ? ? {
? ? ? ? ? ? p[i].Buy_num--;
? ? ? ? ? ? printf("退票成功");
? ? ? ? ? ? w = 1;
? ? ? ? }
? ? }
? ? if (w == 0)
? ? ? ? printf("退票失敗");
? ? getchar();
? ? menu1();
}
void bowse_time()
{
? ? char a[20];
? ? int i, w = 0;
? ? printf("請您輸入要查詢的飛機起飛時間:");
? ? scanf("%s", a);
? ? printf("航班代號 ? ? 起始地點 ? ?目的地 ? ?票價 ? ?已售 ? ? 乘客容量 時間/n");
? ? for (i = 0; i<N; i++)
? ? {
? ? ? ? if (strcmp(a, p[i].time) == 0)
? ? ? ? {
? ? ? ? ? ? w = 1;
? ? ? ? ? ? printf("%s ? ?%s ? ?%s ? ?%7.2f ? ?%d ? ?%d ? ?%s/n", p[i].ID, p[i].Start_Place, p[i].End_Place, p[i].price, p[i].Buy_num, p[i].Max_num, p[i].time);
? ? ? ? }
? ? }
? ? if (w == 0)
? ? ? ? printf("沒有您想查詢的航班!/n");
? ? getchar();
? ? menu1();

}
void bowse_palce()
{
? ? char a[10];
? ? int i, w = 0;
? ? printf("請您輸入要查詢的飛機目的地:");
? ? scanf("%s", a);
? ? printf("航班代號 ? ? 起始地點 ? ?目的地 ? ?票價 ? ?已售 ? ? 乘客容量 時間/n");
? ? for (i = 0; i<N; i++)
? ? {
? ? ? ? if (strcmp(a, p[i].End_Place) == 0)
? ? ? ? {
? ? ? ? ? ? w = 1;
? ? ? ? ? ? printf("%s ? ?%s ? ?%s ? ?%7.2f ? ?%d ? ?%d ? ?%d/n", p[i].ID, p[i].Start_Place, p[i].End_Place, p[i].price, p[i].Buy_num, p[i].Max_num, p[i].time);
? ? ? ? }
? ? }
? ? if (w == 0)
? ? ? ? printf("沒有您想查詢的航班!/n");
? ? getchar();
? ? menu1();
}
void bowse_ID()
{
? ? char a[10];
? ? int i, w = 0;
? ? printf("請您輸入要查詢的飛機航班號:");
? ? scanf("%s", a);
? ? printf("航班代號 ? ? 起始地點 ? ?目的地 ? ?票價 ? ?已售 ? ? 乘客容量 時間/n");
? ? for (i = 0; i<N; i++)
? ? {
? ? ? ? if (strcmp(a, p[i].ID) == 0)
? ? ? ? {
? ? ? ? ? ? w = 1;
? ? ? ? ? ? printf("%s ? ?%s ? ?%s ? ?%7.2f ? ?%d ? ?%d ? ?%d/n", p[i].ID, p[i].Start_Place, p[i].End_Place, p[i].price, p[i].Buy_num, p[i].Max_num, p[i].time);
? ? ? ? }
? ? }
? ? if (w == 0)
? ? ? ? printf("沒有您想查詢的航班!/n");
? ? getchar();
? ? menu1();

}
void menu1()
{
? ? int n, w1;
? ? do
? ? {
? ? ? ? system("cls");
? ? ? ? puts("/t/t/t/t ? ?飛機售票操作!/n/n");
? ? ? ? puts("/t/t*********************MENU*********************/n/n");
? ? ? ? puts("/t/t/t/t1.Buy ticket");
? ? ? ? puts("/t/t/t/t2.return ticket");
? ? ? ? puts("/t/t/t/t3.bowse by time");
? ? ? ? puts("/t/t/t/t4.bowse by end palce");
? ? ? ? puts("/t/t/t/t5.bowse by plane ID");
? ? ? ? puts("/t/t/t/t6.return to menu");
? ? ? ? puts("/n/n/t/t**********************************************/n");
? ? ? ? printf("Choice your number(1-6): [ ]/b/b");
? ? ? ? scanf("%d", &n);
? ? ? ? if (n<0 || n>6)
? ? ? ? {
? ? ? ? ? ? w1 = 1;
? ? ? ? ? ? printf("your choice is not between 1 and 4,Please input again:");
? ? ? ? ? ? getchar();
? ? ? ? }
? ? ? ? else ? ?w1 = 0;
? ? } while (w1 == 1);

? ? switch (n)
? ? {
? ? case 1:buy(); break;
? ? case 2:back(); break;
? ? case 3:bowse_time(); break;
? ? case 4:bowse_palce(); break;
? ? case 5:bowse_ID(); break;
? ? case 6:menu();
? ? }

}
?int save()
{
? ? int w = 1;
? ? FILE *fp;
? ? int i;
? ? system("cls");
? ? if ((fp = fopen("c://ticket.txt", "wb")) == NULL)
? ? {
? ? ? ? printf("/nCannot open file/n");
? ? ? ? return NULL;
? ? }
? ? for (i = 0; i<N; i++)
? ? if (fwrite(&p[i], sizeof(struct plane), 1, fp) != 1)
? ? {
? ? ? ? printf("file write error/n");
? ? ? ? w = 0;
? ? }
? ? if (w == 1)
? ? {
? ? ? ? printf("file save ok!/n");
? ? }
? ? fclose(fp);
? ? getchar();
? ? menu();
}

int load()
{
? ? FILE *fp;
? ? int i, w;
? ? w = 1;
? ? system("cls");
? ? if ((fp = fopen("c://ticket.txt", "rb")) == NULL)
? ? {
? ? ? ? printf("/nCannot open file/n");
? ? ? ? w = 0;
? ? ? ? return NULL;
? ? }
? ? for (i = 0; !feof(fp); i++)
? ? {
? ? ? ? fread(&p[i], sizeof(struct plane), 1, fp);
? ? }
? ? fclose(fp);
? ? if (w == 1)
? ? ? ? printf("Load file ok!");
? ? getchar();
? ? menu();

}
void main()
{
? ? menu();
}
void menu()
{
? ? int n, w1;
? ? do
? ? {
? ? ? ? system("cls");
? ? ? ? puts(" ? ? ? ? ? ? ? ? ? ? 飛機售票系統(tǒng) ? ");
? ? ? ? puts("*************************MENU*************************");
? ? ? ? puts(" ? ?1. ?Enter new plane");
? ? ? ? puts(" ? ?2. ?Browse all");
? ? ? ? puts(" ? ?3. ?opreration");
? ? ? ? puts(" ? ?4. ?Save file");
? ? ? ? puts(" ? ?5. ?Load file");
? ? ? ? puts(" ? ?6. ?Exit");
? ? ? ? puts("******************************************************");
? ? ? ? printf("Choice your number(1-6): ");
? ? ? ? scanf("%d", &n);
? ? ? ? if (n<0 || n>6)
? ? ? ? {
? ? ? ? ? ? w1 = 1;
? ? ? ? ? ? printf("your choice is not between 1 and 6,Please input again:");
? ? ? ? ? ? getchar();
? ? ? ? }
? ? ? ? else ? ?w1 = 0;
? ? } while (w1 == 1);

? ? switch (n)
? ? {
? ? case 1: enter(); break;
? ? case 2: browse(); break;
? ? case 3: menu1(); break;
? ? case 4: save(); break;
? ? case 5: load(); break;
? ? case 6: exit(0);
? ? }
}

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

您可能感興趣的文章:

相關文章

最新評論