亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? train_booking_bookop.c

?? 火車定標系統(tǒng)...用VC編譯通過的
?? C
?? 第 1 頁 / 共 2 頁
字號:

			return FAIL;
		}
	}

	// 仍有有效座位,執(zhí)行訂票操作
	deal_sb_seat(&train_info_pt->sbed_info_list[i], ok_car_order, t_seat_order,
		t_begin_order, t_end_order, 1);			// 1為訂票

	// 上面的函數(shù)不包括文件保存功能,需要自己更新文件
	if (!(save_sbed_info_list(&train_info_pt->sbed_info_list, train_info_pt->master,
		train_info_pt->time_id, SOFT_BED_CAR)))
	{
		message(ERROR, "執(zhí)行乘客訂票操作時更新文件失敗!", NULL);
		message(WARN, "預(yù)訂軟臥車票失敗!", WC);

		return FAIL;
	}

	// 回饋用戶信息
	message(INFO, "您已成功訂票了!恭喜恭喜!", NULL);
	message(INFO, "下面是您這次操作的訂票信息,請確認。", NULL);
	printf("【信息】%s 車次 %d 趟車 %d 號(軟臥)車廂 %d 號座位", 
		train_info_pt->master, train_info_pt->time_id,
		booked_car_order, t_seat_order);
	message(INFO, "信息已添加至您的訂票清單(歷史記錄)中。按任意鍵返回。", WC);

	return OK;
}


/////////////////////////////////////////////////////////////////////////////
// 函數(shù)功能:	查找用于執(zhí)行訂/退票操作的目標列車信息
//
// 函數(shù)參數(shù):	target_train_pt:用于返回指向目標列車信息單元的指針變量(不能用地址!)
//				system_info_pt:系統(tǒng)信息單元指針
//
/////////////////////////////////////////////////////////////////////////////
status search_target_train(train_info *target_train_pt, system_info *system_info_pt)
{
	
	train_sq_info *train_sq_info_head;
	train_info *train_info_head;
	char t_re_sq[64], t_re_time_id[64];
	int state;

	train_sq_info_head = &system_info_pt->train_sq_list;	// 取得頭結(jié)點指針

	// 取得退票車次
	printf("第一步:確定要退票的列車車次\n");
	if (!(get_str("要退票的列車車次", t_re_sq, MIN_TRING_ID_LEN, MAX_TRAIN_ID_LEN)))
	{
		message(ERROR, "輸入退票車次失敗!", NULL);
		message(WARN, "退訂軟臥車票失敗!", WC);

		return OK;
	}

	// 取得退票列車時間標識
	printf("第二步:確定要退票的列車時間標識\n");
	message(TIP, "時間標識格式如下:如果是2006年9月12號的列車,則輸入 20060912", NULL);
	message(TIP, "注意數(shù)字小于10時補一個0在前面", W);
	
	if (!(get_str("要退票的列車時間標識", t_re_time_id, 8, 8)))
	{
		message(ERROR, "輸入退票列車時間標識失敗!", NULL);
		message(WARN, "退訂軟臥車票失敗!", WC);

		return OK;
	}
	
	// 在內(nèi)存中搜索列車信息
	state = 0;
	while (train_sq_info_head->next)
	{
		train_sq_info_head = train_sq_info_head->next;
		if (!(strcmp(train_sq_info_head->train_sq_id, t_re_sq)))
		{
			train_info_head = &train_sq_info_head->train_list;		// 取得列車信息頭結(jié)點指針
			state = 1;
			break;
		}
	}

	// 如果沒有找到對應(yīng)車次
	if (!state)
	{
		printf("【警告】沒有找到任何有關(guān)于車次(%s)的信息!請確認是否輸入錯誤,再重試。\n", t_re_sq);
		WAIT;
		CLS;
		
		return FAIL;
	}

	// 在車次鏈上根據(jù)時間標識查找列車信息
	state = 0;
	while (train_info_head->next)
	{
		train_info_head = train_info_head->next;
		if (!(strcmp(train_info_head->time_id, t_re_time_id)))
		{
			target_train_pt = train_info_head;
			state = 1;
			break;
		}
	}
	
	// 如果沒有找到對應(yīng)列車
	if (!state)
	{
		printf("【警告】沒有找到任何有關(guān)于列車(%s)的信息!請確認是否輸入錯誤,再重試。\n", t_re_time_id);
		WAIT;
		CLS;
		
		return FAIL;
	}

	return OK;
}



/////////////////////////////////////////////////////////////////////////////
// 函數(shù)功能:	用戶軟臥票退票事務(wù)處理
//
// 函數(shù)參數(shù):	op_psngr_pt:操作用戶信息結(jié)構(gòu)體指針
//				system_info_pt:系統(tǒng)信息結(jié)構(gòu)體指針
//				train_info_pt:要退票的列車信息結(jié)構(gòu)體指針
//
// 函數(shù)說明:	1、這里train_info_pt只是便于修改某些參數(shù)用,并不提供退票的信息
//				2、在使用此函數(shù)之前,應(yīng)已找到對應(yīng)列車及車次數(shù)據(jù),本程序?qū)⒁来?//				搜索該列車的所有要求類型的車廂,直到找到座位
//
/////////////////////////////////////////////////////////////////////////////
status re_sb_ticket(passenger_info *op_psngr_pt, system_info *system_info_pt, 
		train_info *train_info_pt)
{
	int t_begin_order, t_end_order, t_car_order, t_seat_order;
	char t_re_book_station_id[64];
	int re_car_order, re_seat_order;
	char t_begin_station[64], t_end_station[64];
	char t_re_sq[64], t_re_time_id[64];
	int this_cost, t_distance;
	
	CLS;
	if (0 == op_psngr_pt->total_booked_tickets)
	{
		message(ERROR, "您還沒有在此列車上訂過車票,不能退訂!", WC);

		return FAIL;
	}
	actitle("退訂軟臥車票");

	// 取得退票的起點
	printf("第一步:確定要退票的始發(fā)站(當前站為 %s 站,回車直接確認)\n",
		system_info_pt->location);

	if (!(get_str("要退票的始發(fā)站", t_begin_station, MIN_STATION_ID_LEN, MAX_STATION_ID_LEN)))
	{
		message(INFO, "將當前站點設(shè)置為始發(fā)站!", NULL);
		printf("【信息】您輸入的始發(fā)站為 %s 站!\n", system_info_pt->location);
		WAIT;
	}

	// 取得訂票的終點
	printf("第二步:確定要退票的終點站\n");
	if (!(get_str("要退票的終點站", t_end_station, MIN_STATION_ID_LEN, MAX_STATION_ID_LEN)))
	{
		message(WARN, "退訂軟臥車票失敗!", WC);

		return FAIL;
	}

	// 取得車票的車廂號(面向用戶式輸入)
	printf("第三步:確定要退票的車票的車廂號\n");
	if (!(get_int("要退票的車票的車廂號", &t_car_order, 1, DOT_PER_SB_CAR)))
	{
		message(WARN, "退訂軟臥車票失敗!", WC);

		return FAIL;
	}

	// 取得車票的座位號
	printf("第四步:確定要退票的車票的座位號\n");
	if (!(get_int("要退票的車票的座位號", &t_seat_order, 1, DOT_PER_SB_CAR)))
	{
		message(WARN, "退訂軟臥車票失敗!", WC);

		return FAIL;
	}

	message(INFO, "正在執(zhí)行退票操作,請稍候...", NULL);

	// 取得站點在信息鏈中的區(qū)間序號
	if (!(get_span_order(&train_info_pt->station_links, t_begin_station, t_end_station, 
		&t_begin_order, &t_end_order)))
	{
		message(WARN, "抱歉!退票失敗!", WC);
		
		return FAIL;
	}

	// 檢測用戶提供退票信息的真實性:參數(shù)為面向用戶的車廂號,內(nèi)部自動轉(zhuǎn)換處理
	if (!(check_hs_booked_ii(op_psngr_pt, t_re_sq, t_re_time_id, t_car_order, t_seat_order)))
	{
		message(ERROR, "您提供的退票信息有誤!請重試!", NULL);
		message(WARN, "抱歉!退票失敗!", WC);

		return FAIL;
	}

	// 取得錢款
	get_distance(&t_distance, &train_info_pt->station_links, 
				t_begin_order, t_end_order);		//計算路程
	pay_bill(&this_cost, system_info_pt->price_sbed_per_km, t_distance);

	//車廂訂票信息矩陣的更新
	deal_sb_seat(&train_info_pt->sbed_info_list, t_car_order, t_seat_order, 
		t_begin_order, t_end_order, 0);

	// 處理個人信息
	op_psngr_pt->total_booked_tickets--;
	op_psngr_pt->total_cost -= this_cost;

	// 處理系統(tǒng)信息
	system_info_pt->total_sold--;
	system_info_pt->total_income -= this_cost;
	if (!op_psngr_pt->total_cost)	// 如果用戶把票退光
	{
		train_info_pt->total_passengers--;
	}

	// 通知其它用戶退票消息

	// 返還用戶錢款

	// 回饋用戶信息
	message(INFO, "您已成功退票了!恭喜恭喜!", NULL);
	message(INFO, "下面是您這次操作的退票信息,請確認。", NULL);
	printf("【信息】%s 車次 %d 趟車 %d 號(軟臥)車廂 %d 號座位", 
		train_info_pt->master, train_info_pt->time_id,
		re_car_order, t_seat_order);
	message(INFO, "信息從您的訂票清單(歷史記錄)中銷毀。按任意鍵返回。", WC);

	return OK;
}
	


/////////////////////////////////////////////////////////////////////////////
#endif

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
av午夜精品一区二区三区| 国产亚洲精品aa| 亚洲成va人在线观看| 色国产综合视频| 亚洲va欧美va人人爽午夜| 欧美日韩亚洲不卡| 欧美bbbbb| 国产亚洲欧洲一区高清在线观看| 粉嫩久久99精品久久久久久夜| 国产精品久线观看视频| 色婷婷av一区二区三区之一色屋| 亚洲午夜一区二区| 91精品国产入口| 国产成人在线视频免费播放| 中文在线免费一区三区高中清不卡| 波多野结衣中文一区| 亚洲最快最全在线视频| 91精品国产日韩91久久久久久| 久久99精品国产.久久久久久| 国产欧美综合在线| 日本精品一级二级| 久久成人18免费观看| 国产精品久久久久精k8| 欧美精品色一区二区三区| 国产一区三区三区| 亚洲精品免费在线播放| 日韩一级成人av| 99精品黄色片免费大全| 视频一区欧美精品| 国产精品欧美久久久久无广告| 欧美无砖砖区免费| 国产一区激情在线| 亚洲国产美女搞黄色| 久久影院视频免费| 91黄色免费看| 成人污污视频在线观看| 天天色综合天天| 中文字幕日韩欧美一区二区三区| 欧美日韩情趣电影| jvid福利写真一区二区三区| 视频一区在线视频| 最新国产の精品合集bt伙计| 欧美一区二区人人喊爽| www.av精品| 国产美女精品人人做人人爽| 亚洲在线视频一区| 欧美高清一级片在线观看| 日韩你懂的在线观看| 欧美色图第一页| jizz一区二区| 国产成人无遮挡在线视频| 日本不卡视频一二三区| 欧美激情在线看| 久久夜色精品一区| 欧美精品久久久久久久多人混战| 91丝袜国产在线播放| 狠狠色狠狠色综合系列| 日韩成人精品在线| 亚洲国产日韩av| 亚洲美女在线国产| 自拍偷拍亚洲综合| 国产精品网站在线观看| 久久久久久久综合狠狠综合| 日韩一区国产二区欧美三区| 欧美喷潮久久久xxxxx| 日本电影欧美片| 99v久久综合狠狠综合久久| 国产成人精品亚洲777人妖| 精品无人区卡一卡二卡三乱码免费卡| 亚洲一级在线观看| 亚洲综合在线免费观看| 亚洲欧洲精品成人久久奇米网 | 99re成人精品视频| 国产999精品久久久久久绿帽| 久久精品免费观看| 美女视频黄久久| 免费观看日韩av| 乱一区二区av| 精品中文av资源站在线观看| 老司机午夜精品99久久| 久久国产免费看| 国产在线一区观看| 国产jizzjizz一区二区| 成人午夜激情在线| 91色婷婷久久久久合中文| 一本久久综合亚洲鲁鲁五月天 | 国产日韩影视精品| 国产目拍亚洲精品99久久精品| 国产欧美日韩麻豆91| 中文字幕一区二区三区四区不卡 | 视频一区二区三区入口| 男人的天堂久久精品| 日本不卡在线视频| 国内成人免费视频| av电影在线观看不卡| 欧美性色黄大片| 欧美日韩一区二区欧美激情| 日韩视频免费直播| 久久精品在线免费观看| 亚洲人成在线播放网站岛国| 午夜欧美电影在线观看| 久久激情综合网| 国产精品99久久久久久久vr | 在线亚洲一区观看| 69av一区二区三区| 久久久久久久免费视频了| 亚洲男人的天堂一区二区| 日本vs亚洲vs韩国一区三区二区 | 黄色资源网久久资源365| 成人av先锋影音| 欧美日韩一区二区三区高清| 久久亚区不卡日本| 伊人一区二区三区| 老鸭窝一区二区久久精品| 播五月开心婷婷综合| 在线播放国产精品二区一二区四区| 精品国产91乱码一区二区三区| 亚洲人成网站色在线观看| 日韩精品乱码av一区二区| 成人免费视频国产在线观看| 欧美人伦禁忌dvd放荡欲情| 久久精品欧美日韩精品| 亚洲国产成人高清精品| 国产·精品毛片| 欧美人xxxx| 亚洲少妇中出一区| 国产在线精品免费av| 欧美亚一区二区| 国产精品五月天| 久久精品99久久久| 欧美性猛片aaaaaaa做受| 久久久精品中文字幕麻豆发布| 亚洲国产一区二区在线播放| 成人一区二区三区视频在线观看| 欧美另类一区二区三区| 亚洲三级在线免费| 国产成人精品三级| 欧美久久一区二区| 一区二区视频免费在线观看| 国产伦理精品不卡| 欧美一级夜夜爽| 亚洲综合成人在线视频| 不卡一区二区在线| 国产日韩成人精品| 激情综合网最新| 日韩欧美精品三级| 日本伊人精品一区二区三区观看方式| 99久久亚洲一区二区三区青草| 久久久久久久久免费| 精品一二三四在线| 在线综合+亚洲+欧美中文字幕| 亚洲一区二区欧美日韩| 97国产一区二区| 中文字幕av一区二区三区高| 国产一区在线观看麻豆| 日韩精品中文字幕一区| 日韩精品五月天| 欧美一区二区三区视频免费播放| 亚洲国产精品视频| 欧美做爰猛烈大尺度电影无法无天| 日韩一区在线播放| 不卡视频在线观看| 国产精品色噜噜| 成人免费高清在线| 国产精品久久久久久久久免费丝袜 | 亚洲高清免费视频| 日本国产一区二区| 亚洲尤物视频在线| 欧美制服丝袜第一页| 一区二区日韩电影| 欧美日韩国产一级片| 亚洲国产精品一区二区www在线| 欧美色精品在线视频| 午夜久久电影网| 日韩一级免费一区| 激情综合色播激情啊| 久久久国产精华| 99免费精品在线观看| 亚洲精品视频在线| 欧美午夜影院一区| 美女精品自拍一二三四| 亚洲精品一区二区三区99| 国产成都精品91一区二区三| 国产精品久久久久久户外露出| 91丝袜高跟美女视频| 亚洲午夜在线视频| 777欧美精品| 国产精品自产自拍| 综合欧美一区二区三区| 精品视频一区二区三区免费| 蜜桃视频在线观看一区二区| 日韩欧美高清dvd碟片| 国产成人午夜精品影院观看视频| 中文字幕在线观看不卡| 欧美日韩国产一二三| 国产美女在线观看一区| 中文字幕日韩av资源站| 欧美高清激情brazzers| 国产九九视频一区二区三区| 亚洲欧洲精品成人久久奇米网|