- 17
- 0
- 约8.8千字
- 约 16页
- 2018-02-02 发布于重庆
- 举报
C语言课程设计停车场管理系统2
中国地质大学(武汉)
设计名称:停车场管理2
班级序号:052081y_23
姓 名:秦 民 凯
学 号:20081002763
指导老师:曹 弘
C语言程序设计报告
前言
设计目的:通过一个系统,进一步消化和巩固已学过的C 语言程序设计基础理论,学习和实践程序设计的各种技能,利用C 语言来设计各种应用程序和管理系统,为社会提供各种现代化的管理工具掌握与数组有关的算法、函数的调用、结构体类型变量的定义和使用;文件打开、关闭、读、写等文件操作函数的使用,提高实际运用能力。
详细设计
首先定义包含与标准库有关的变量定义和宏定义和文件包含所用的文件
#include stdio.h
#include stdlib.h
#includeconio.h
#includeio.h
#include stdlib.h
然后用一个二维数组来表示一个停车场的位置,每个数组元素存放一个车牌号
int cars[12][4]={{1234,1,1,20},{2345,1,2,15},{3456,1,3,10},
{4567,1,4,5},{0,1,5,0},{0,1,6,0},{0,2,1,0},{0,2,2,0},{0,2,3,0},
{0,2,4,0},{0,2,5,0},{0,2,6,0}};/*二维数组代表停车信息*/
后定义一个文件夹来储存所停车的信息,开始有四辆车在车库
void save()
{FILE *fp;
int i,j;
if((fp=fopen(car.dat,w))==NULL)
{printf(cannot open file\n);
return;
}
for(i=0;i12;i++)
for(j=0;j4;j++)
if(fwrite(cars,2,1,fp)!=1)
printf(file write error\n);
fclose(fp);
getchar();
}
一.停车模块
void car_park(void)/*停车操作*/
{int x,i,j;
printf(\n ^-^ 欢迎您的光临! ^-^\n );
printf( \n\n 请输入车牌号:\n\n);
车牌号要在1000至9999之间,输入错误的车牌号将返回主菜单
for (i=0;i12;i++)
if(cars[i][0]==x||x1000||x9999)break;
if(i!=12)
{printf(\n错误的号码或已经停过了 !!!\n);
getchar();}/*如果此车号以在,打印此车已停*/
else if(i==12x=1000x=9999)
{for (i=0;i12;i++)
if(cars[i][0]==0) {cars[i][0]=x;save();
printf(\n\n成功\n\n);
为车选择一个停车的位置,包括层号与位置号
printf(层=%d,车位=%d\n,cars[i][1],cars[i][2]);
printf(\n\n\nTwo times Enter to end...);break;
}/*如果此车号不在,则进行停车操作*/
for (i=0;i12;i++)
if(cars[i][0]!=0) cars[i][3]+=5;/*所有停车时间+5*/
save();/*保存以上信息到文件*/
二.车辆信息浏览模块
把停车信息存入文件中
void printfdata()/*停车信息*/
{int i,j;
FILE *fp;
fp=fopen(car.dat,r);/*打开文件car.dat*/
printf( \n Number Floor Position Time\n);
for(i=0;i12;i++)
{for(j=0;j4;j++)
{fread(cars,2,1,fp);/*读文件*/
printf( %6d,cars[i][j]);
}printf(\n);
}
fclose(fp);/*关闭文件car.dat*/
}
void save();
void car_park(void);
void car_get(void);
void printfdata();
char readcommand();
void initialization();
插入主函数
int main()
{ char c;
printf(按enter开始\n);
while(1)
{
initialization(); /*初始化界面*/
c=readco
原创力文档

文档评论(0)