当前位置: 首页 > news >正文

停车场管理(C语言)

【题目描述】停车场管理。设有一个可以停放n辆汽车的狭长停车场,它只有一个大门可以供车辆进出。车辆按到达停车场时间的先后次序依次从停车场最里面向大门口处停放 (即最先到达的第一辆车停放在停车场的最里面) 。如果停车场已放满n辆车,则以后到达的车辆只能在停车场大门外的便道上等待,一旦停车场内有车开走,则排在便道上的第一辆车可以进入停车场。停车场内如有某辆车要开走,则在它之后进入停车场的车都必须先退出停车场为它让路,待其开出停车场后,这些车辆再依原来的次序进场。每辆车在离开停车场时,都应根据它在停车场内停留的时间长短交费,停留在便道上的车不收停车费。编写程序对该停车场进行管理。
输入数据时,先输入一个整数n(n≤10),再输入若干组数据,每组数据包括三个数据项:汽车到达或离开的状态(A表示到达、D表示离开、E表示结束)、汽车号码、汽车到达或离开的时刻。
若有车辆到达,则输出该汽车的停车位置;若有车辆离开,则输出该汽车在停车场内停留的时间。
【代码】

#include <stdio.h>
struct Car {char status;int num;int time;
};
int main(void) {int n;scanf("%d", &n);struct Car park[n], street[100];getchar();int now_n = 0, s_n = 0;while (1) {struct Car car;scanf("%c %d %d", &car.status, &car.num, &car.time);if (car.status == 'E') {break;}else if (car.status == 'A') {if (now_n < n) {  //当前有空余车位 park[now_n] = car;printf("%d号车停入%d号位\n", car.num, now_n+1);now_n++;}else {street[s_n] = car;printf("%d号车在便道上等待\n", car.num);s_n++;}}else if (car.status == 'D') {int i = 0, j;for (i=0; i<now_n; i++) {if (car.num == park[i].num) {break;}}printf("%d号车出停车场,停留时间%d\n", car.num, car.time - park[i].time);for (j=i+1; j<now_n; j++) {park[j-1] = park[j];}now_n--;if (s_n) {printf("%d号车停入3号位\n", street[0].num);now_n++; park[n-1] = street[0];park[n-1].time = car.time;for (i=1; i<s_n; i++) {street[i-1] = street[i];}s_n--;}}}return 0;}
http://www.lryc.cn/news/305745.html

相关文章:

  • 探索无限:Sora与AI视频模型的技术革命 - 开创未来视觉艺术的新篇章
  • 375FPS! 谷歌提出MaskConver“重校正用于全景分割的纯卷积模型
  • leetcode初级算法(python)- 数组
  • 重新定义音乐创作:ChatGPT与未来音乐产业的融合
  • 人工智能绘画的时代下到底是谁在主导,是人类的想象力,还是AI的创造力?
  • [HTML]Web前端开发技术29(HTML5、CSS3、JavaScript )JavaScript基础——喵喵画网页
  • 文本编辑器markdown语法
  • 【C++】类和对象之拷贝构造函数篇
  • Mybatisplus 传参参数为自定义sql, 使用条件构造器作为参数
  • C#与VisionPro联合开发——TCP/IP通信
  • spring Boot快速入门
  • FPGA SERDESE2 (SDR收发仿真)
  • Java异常体系结构核心解析-Throwable
  • Android MediaRecorder 相关
  • Spring中关于事务的一些方方面面
  • LiveQing视频点播流媒体RTMP推流服务功能-支持配置开启 HTTPS 服务什么时候需要开启HTTPS服务
  • LabVIEW串口通信的激光器模块智能控制
  • 全球最受欢迎的DAWFL Studio 21.2.3.4004 中文破解版强悍来袭
  • 【uni-app】常用组件和 API
  • 基于springboot+vue的安康旅游网站(前后端分离)
  • monaco脚本编辑器 在无界中使用 鼠标点击不到
  • react中修改state中的值无效?
  • 在Node.js中如何实现用户身份验证和授权
  • QT day2 2.21
  • 说说设备像素、css像素、设备独立像素、dpr、ppi 之间的区别
  • 文生视频Sora
  • 汽车常识网:电脑主机如何算功率的计算方法?
  • c语言常见操作符及操作符优先级
  • IO进程线程:通信
  • 神经网络系列---常用梯度下降算法