高速单行道 IN Name Id”:道路入口有一辆车请求进入

高速单行道
★实验任务
TC 高速单行道试运行,为了保证道路安全,政府决定对其进行限行。车辆在路上运行
必须保持单车道前进,同时在这条道路上的车辆不得超过 m 辆。
★数据输入
输入第一行为整数 m(0<m<=5000)
接下来每行为一个操作,格式为:
“IN Name Id”:道路入口有一辆车请求进入,车主名字为 name,编号为 id。如果道路
已满,则输出一行“FULL”
“OUT”:道路出口离开了一辆车,输出一行离开车辆的“车主名 编号”。如果道路上没
有车,则输出一行“EMPTY”
“QUERY pos”:查询道路上第 pos 辆车(从出口由 1 数起)的车主名、编号,用空格隔
开。若查无此车,输出一行“ERROR”
“LIST”:从出口到入口,输出当前道路上每辆车的信息。每辆车一行,每行为“车主
名 编号”

处理到文件结束。



 
            #include<stdio.h>
#include<string.h>
struct car
{
int id;
int name[21];
}str[5001];
int main()
{
int m, i=0, j;
char c[9];
scanf("%d",&m);
while(scanf("%s",c)!=EOF)
{
if(c[0]=='I')
{
if(i>=m)
printf("FULL\n");
else
{
scanf("%s %d",str[i].name,&str[i].id);
i++;
}
}
else if(c[0]=='O')
{
if(i==0)
printf("EMPTY\n");
else
{
printf("%s %d\n",str[0].name,str[0].id);
for(j=0;j<i-1;j++)
str[j]=str[j+1];
i--;
}
}
else if(c[0]=='Q')
{
int pos;
scanf("%d",&pos);
if(0<=pos&&pos<=i)
printf("%s %d\n",str[pos-1].name,str[pos-1].id);
else 
printf("ERROR\n");
}
else if(c[0]=='L')
{
for(j=0;j<i;j++)
printf("%s %d\n",str[j].name,str[j].id);
}
}
return 0;
}




        

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值