安卓版的c语言实现简单的停车场管理系统代码

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

// 定义车位结构体
typedef struct {
int slotNumber;
int status; // 0: 空闲,1: 已占用
char vehicleNumber[20];
} ParkingSlot;

// 显示菜单
void showMenu() {
printf(“1. 车辆入场\n”);
printf(“2. 车辆出场\n”);
printf(“3. 查看车位状态\n”);
printf(“4. 退出\n”);
}

// 车辆入场
void vehicleEntry(ParkingSlot *slots, int numSlots) {
int availableSlot = -1;
for (int i = 0; i < numSlots; i++) {
if (slots[i].status == 0) {
availableSlot = i;
break;
}
}

if (availableSlot == -1) {
    printf("停车场已满,无法入场!\n");
    return;
}

printf("请输入车辆号码: ");
scanf("%s", slots[availableSlot].vehicleNumber);
slots[availableSlot].status = 1;
printf("车辆入场成功,车位号: %d\n", slots[availableSlot].slotNumber);

}

// 车辆出场
void vehicleExit(ParkingSlot *slots, int numSlots) {
char vehicleNumber[20];
printf(“请输入要出场的车辆号码: “);
scanf(”%s”, vehicleNumber);

int found = 0;
for (int i = 0; i < numSlots; i++) {
    if (slots[i].status == 1 && strcmp(slots[i].vehicleNumber, vehicleNumber) == 0) {
        slots[i].status = 0;
        strcpy(slots[i].vehicleNumber, "");
        printf("车辆出场成功!\n");
        found = 1;
        break;
    }
}

if (!found) {
    printf("未找到该车辆!\n");
}

}

// 查看车位状态
void viewSlotStatus(ParkingSlot *slots, int numSlots) {
printf(“车位状态:\n”);
for (int i = 0; i < numSlots; i++) {
printf("车位号: %d - ", slots[i].slotNumber);
if (slots[i].status == 0) {
printf(“空闲\n”);
} else {
printf(“已占用,车辆号: %s\n”, slots[i].vehicleNumber);
}
}
}

int main() {
ParkingSlot slots[50]; // 假设停车场有 50 个车位
int numSlots = 50;

// 初始化车位状态为空闲
for (int i = 0; i < numSlots; i++) {
    slots[i].slotNumber = i + 1;
    slots[i].status = 0;
    strcpy(slots[i].vehicleNumber, "");
}

int choice;

do {
    showMenu();
    printf("请选择操作: ");
    scanf("%d", &choice);

    switch (choice) {
        case 1:
            vehicleEntry(slots, numSlots);
            break;
        case 2:
            vehicleExit(slots, numSlots);
            break;
        case 3:
            viewSlotStatus(slots, numSlots);
            break;
        case 4:
            printf("退出程序\n");
            break;
        default:
            printf("无效的选择,请重新输入\n");
    }
} while (choice!= 4);

return 0;

}

  • 3
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

EYYLTV

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值