再见,深圳

作者即将离开深圳,回顾了一年多的工作经历,表达了对同事和朋友的感激之情,并对未来的路充满了期待。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

    马上就要离开深圳这座城市了, 离开工作了一年多的地方. 离别来的是如此突然, 连我自己也觉得有些惊讶. 明天可能是最后一天去上班了, 还有机会再去见见一起工作的同事,  再去坐一坐曾经载我无数次上上下下的电梯. 回想一年多前, 怀揣着理想与激情踏上这片热土, 而如今又将带着那残存不多的梦想离开这座城市. 在深的这段时间, 其中有欢乐也有心痛, 有失败也有收获, 这或许就叫经历和生活吧.

    春节回来以后, 先是经历了一些事, 紧接着又是匆匆的离职, 心里一直很压抑, 说不清是什么滋味, 而表面上又要装出若无其事的样子, 现在终于明白了为什么有那么多人要用酒精和尼古丁来麻痹自己.  就像一位好朋友说的那样, 人生避免不了无奈的时候, 但每个人都有选择的权利. 既然如今已不能改变, 那就努力让自己去适应这个纷杂的世界.

    就要走了, 但还是有些舍不得. 很庆幸能够认识一些朋友, 也很感谢一起工作生活的同事. 希望所有的朋友开心顺利, 也希望自己前面的路好走.

    再见了, 深圳.

#include <iostream> #include <fstream> #include <string> using namespace std; const int MAX_SCHEDULES = 30; // 最大班次数 (3天×10班) const int MAX_SEATS = 50; // 每班最大座位数 // 旅客信息 struct Passenger { string name; // 姓名 string id; // 身份证号 int seat; // 座位号 }; // 班次信息 struct Schedule { string date; // 日期 (today/tomorrow/aftertomorrow) string scheduleId; // 班次号 string time; // 发车时间 string city; // 终点城市 int totalSeats; // 总座位数 Passenger passengers[MAX_SEATS]; // 旅客信息 int passengerCount = 0; // 当前旅客数 }; // 售票系统 class TicketSystem { private: Schedule schedules[MAX_SCHEDULES]; // 所有班次 int scheduleCount = 0; // 当前班次数 public: // 初始化系统 void initialize() { string days[] = {"today", "tomorrow", "aftertomorrow"}; string times[] = {"08:00", "10:00", "13:00", "15:00"}; string cities[] = {"北京", "上海", "广州", "深圳", "武汉", "成都", "西安", "杭州", "南京", "重庆"}; for (int d = 0; d < 3; d++) { for (int i = 0; i < 10; i++) { Schedule s; s.date = days[d]; s.scheduleId = to_string(i + 1) + days[d].substr(0, 1); s.time = times[i % 4]; s.city = cities[i]; s.totalSeats = 40; schedules[scheduleCount++] = s; } } } // 查找班次索引 int findSchedule(string date, string id) { for (int i = 0; i < scheduleCount; i++) { if (schedules[i].date == date && schedules[i].scheduleId == id) { return i; } } return -1; } // 售票 void sellTicket() { string date, id, name, passengerId; cout << "输入日期(today/tomorrow/aftertomorrow): "; cin >> date; cout << "输入班次号: "; cin >> id; cout << "输入旅客姓名: "; cin >> name; cout << "输入身份证号: "; cin >> passengerId; int idx = findSchedule(date, id); if (idx == -1) { cout << "未找到该班次!\n"; return; } Schedule& s = schedules[idx]; if (s.passengerCount >= s.totalSeats) { cout << "该班次已满座!\n"; return; } // 分配座位号(最小可用) bool seats[MAX_SEATS + 1] = {false}; for (int i = 0; i < s.passengerCount; i++) { seats[s.passengers[i].seat] = true; } int seatNumber = 1; while (seatNumber <= s.totalSeats && seats[seatNumber]) { seatNumber++; } if (seatNumber > s.totalSeats) { cout << "座位分配错误!\n"; return; } Passenger p = {name, passengerId, seatNumber}; s.passengers[s.passengerCount++] = p; cout << "售票成功! 座位号: " << seatNumber << endl; } // 退票 void refundTicket() { string date, id, passengerId; cout << "输入日期(today/tomorrow/aftertomorrow): "; cin >> date; cout << "输入班次号: "; cin >> id; cout << "输入身份证号: "; cin >> passengerId; int idx = findSchedule(date, id); if (idx == -1) { cout << "未找到该班次!\n"; return; } Schedule& s = schedules[idx]; for (int i = 0; i < s.passengerCount; i++) { if (s.passengers[i].id == passengerId) { // 删除旅客:用最后一个元素覆盖并减少计数 s.passengers[i] = s.passengers[s.passengerCount - 1]; s.passengerCount--; cout << "退票成功!\n"; return; } } cout << "未找到该旅客!\n"; } // 查询余票 void checkAvailability() { string date, id; cout << "输入日期(today/tomorrow/aftertomorrow): "; cin >> date; cout << "输入班次号: "; cin >> id; int idx = findSchedule(date, id); if (idx == -1) { cout << "未找到该班次!\n"; return; } Schedule& s = schedules[idx]; int available = s.totalSeats - s.passengerCount; cout << "余票数量: " << available << endl; // 显示空座位 bool seats[MAX_SEATS + 1] = {false}; for (int i = 0; i < s.passengerCount; i++) { seats[s.passengers[i].seat] = true; } cout << "空座位号: "; for (int i = 1; i <= s.totalSeats; i++) { if (!seats[i]) cout << i << " "; } cout << endl; } // 显示旅客登记表 void showPassengerList() { string date, id; cout << "输入日期(today/tomorrow/aftertomorrow): "; cin >> date; cout << "输入班次号: "; cin >> id; int idx = findSchedule(date, id); if (idx == -1) { cout << "未找到该班次!\n"; return; } Schedule& s = schedules[idx]; cout << "\n班次 " << s.scheduleId << " 旅客登记表 (" << s.date << " " << s.time << " 开往" << s.city << ")\n"; cout << "================================================\n"; cout << "座位号\t姓名\t身份证号\n"; cout << "------------------------------------------------\n"; for (int i = 0; i < s.passengerCount; i++) { cout << s.passengers[i].seat << "\t" << s.passengers[i].name << "\t" << s.passengers[i].id << endl; } cout << "================================================\n"; } // 系统推进到下一天 void advanceDay() { // 将明天和后天的班次日期提前 for (int i = 0; i < scheduleCount; i++) { if (schedules[i].date == "tomorrow") schedules[i].date = "today"; else if (schedules[i].date == "aftertomorrow") schedules[i].date = "tomorrow"; } // 为后天添加新班次(简单的重复使用) for (int i = 0; i < 10; i++) { if (scheduleCount >= MAX_SCHEDULES) break; // 查找明天的班次作为模板 for (int j = 0; j < scheduleCount; j++) { if (schedules[j].date == "tomorrow") { Schedule newSchedule = schedules[j]; newSchedule.date = "aftertomorrow"; newSchedule.passengerCount = 0; schedules[scheduleCount++] = newSchedule; break; } } } cout << "系统已推进到下一天!\n"; } }; int main() { TicketSystem system; system.initialize(); // 初始化班次 while (true) { cout << "\n===== 汽车客运售票系统 =====\n"; cout << "1. 售票\n"; cout << "2. 退票\n"; cout << "3. 查询余票\n"; cout << "4. 显示旅客登记表\n"; cout << "5. 系统推进到下一天\n"; cout << "0. 退出\n"; cout << "请选择操作: "; int choice; cin >> choice; switch (choice) { case 1: system.sellTicket(); break; case 2: system.refundTicket(); break; case 3: system.checkAvailability(); break; case 4: system.showPassengerList(); break; case 5: system.advanceDay(); break; case 0: cout << "感谢使用,再见!\n"; return 0; default: cout << "无效选择\n"; } } } 此代码的问题描述与功能要求
06-08
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值