停车场编码C语言,停车场系统部分C语言代码

停车场系统部分C语言代码

(2011-05-24 16:13:41)

标签:

车牌号

层号

停车场系统

位号

停车场管理

it

#include

#include

#include

struct Garage

{

char carnum[8];

int lay; //层号

int garagenum;

int time;

int isempty;

};

void Instruction()

{ printf(" 停车场管理系统使用说明\n");

printf(" 停车请输入 1 取车请输入 2 \n");

printf(" 查看全部车辆的信息请输入 3 退出请输入 0 \n");

}

void Init(struct Garage gar[][6])

{

int i, j;

for (i=0; i<2; i++)

{ for (j=0; j<6; j++)

{ gar[i][j].lay = i+1;

gar[i][j].garagenum = j+1;

gar[i][j].time = 0;

gar[i][j].isempty = 1;

}

}

for (i=0; i<4; i++)

{ gar[0][i].isempty =0; }

strcpy(gar[0][0].carnum, "0000");

gar[0][0].time = 20;

strcpy(gar[0][1].carnum,

"1111"); gar[0][1].time = 15;

strcpy(gar[0][2].carnum, "2222");

gar[0][2].time = 10;

strcpy(gar[0][3].carnum, "3333");

gar[0][3].time = 5;}

void AddTime(struct Garage gar[][6])

{ int i, j; for (i=0; i<2; i++)

{ for (j=0; j<6; j++)

{ if (gar[i][j].isempty == 0)

{ gar[i][j].time += 5;

}

}

}

}

void Park(struct Garage gar[][6])

{ int i; char num[8];

printf("请输入车牌号:");

scanf("%s", num);

for (i=0; i<6; i++)

{ if (gar[0][i].isempty == 1)

{ printf("第一层第%d号车位空着,请在此处停车\n", i+1);

strcpy(gar[0][i].carnum, num);

printf("车牌号:%s 层号:1 车位号: %d \n", num, i+1);

AddTime(gar);

gar[0][i].isempty = 0;

gar[0][i].time = 5;

return;

}

}

printf("第一层已经没有空车位\n");

for (i=0; i<6; i++)

{

if (gar[1][i].isempty == 1)

{ printf("第二层第%d号车位空着,请在此处停车\n", i+1);

strcpy(gar[1][i].carnum, num);

printf("车牌号:%s 层号:2 车位号: %d \n", num ,i+1);

AddTime(gar);

gar[1][i].isempty = 0;

gar[1][i].time = 5;

return;

}

}

printf("对不起,1 2层都没有空车位,您现在不能在此停车\n");

}

void Information(struct Garage gar[][6])

{ int i, j;

printf(" 车牌号 层号 车位号 停车时间\n");

for (i=0; i<2; i++) { for(j=0; j<6; j++)

{ if (gar[i][j].isempty == 0)

printf(" %s���\n", gar[i][j].carnum, gar[i][j].lay, gar[i][j].garagenum, gar[i][j].time);

}

}

printf("\n");

}

double Leave(struct Garage gar[2][6])

{

int i, j; char num[8];

double charge = 0;

printf("请输入要取的车牌号:");

scanf("%s", num);

for (i=0; i<2; i++)

{ for (j=0; j<6; j++)

{ if (!strcmp(gar[i][j].carnum, num))

{ printf("您在%d层%d车位停车%d分钟\n", gar[i][j].lay, gar[i][j].garagenum, gar[i][j].time);

charge = gar[i][j].time/5*0.2;

printf("停车费用为每5分钟0.2元,您需交%.2lf元\n", charge);

gar[i][j].isempty = 1;

return charge;

}

}

}

printf("没有您输入的车号。\n\n");

return charge;

}

void IsPrintTotal(double total)

{

char ch;

printf("是否查看停车收费总计?Y/N");

scanf("%c", &ch);

while (ch!='y' && ch!='Y' && ch!='n' && ch!='N')

{ printf("请输入Y或N ");

scanf("%c", &ch);

printf("\n");

}

switch (ch)

{

case 'Y':

case 'y':

printf("停车场系统收费总计为%.2lf元\n", total);

break;

case 'N':

case 'n':

break;

}

}

main()

{ int choice;

double total = 0;

struct Garage gar[2][6];

Init(gar); //初始化第一层已经停有的4辆车

while (1) { Instruction();

printf("请输入要进行的操作:");

scanf("%d", &choice);

while (choice<0 || choice>3)

{

printf("输入的不合法,请输入0-3选择:");

scanf("%d", &choice);

}

switch (choice)

{

case 1:

Park(gar);

break;

case 2:

total += Leave(gar);

IsPrintTotal(total);

break;

case 3:

Information(gar);

break;

case 0:

exit(0);

}

}

return 0;

}

分享:

a4c26d1e5885305701be709a3d33442f.png喜欢

0

a4c26d1e5885305701be709a3d33442f.png赠金笔

加载中,请稍候......

评论加载中,请稍候...

发评论

登录名: 密码: 找回密码 注册记住登录状态

昵   称:

评论并转载此博文

a4c26d1e5885305701be709a3d33442f.png

发评论

以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值