本文目录一览:
- 1、用c语言编写一个课程设计,题目是《车辆租凭管理系统》。
- 2、大佬,请问那个用c语言实现车辆管理系统的代码你能写吗?
- 3、C语言课程设计 车辆管理系统代码 最好有注释
- 4、求一个基于c语言车辆信息管理系统
用c语言编写一个课程设计,题目是《车辆租凭管理系统》。
这种程序难度不大 先定义结构体
struct car
{
char number[10];//车牌号
............
}
然后用结构体定义一个数组
其他各个功能都对这个数组进行操作
如果楼主拿不下它 可以see see 我 name,我help you
大佬,请问那个用c语言实现车辆管理系统的代码你能写吗?
#includestdio.h
#includestdlib.h
#includestring.h
typedef struct car;
typedef struct list_car;
typedef struct list_car_sequence;
list_car* rear=NULL;
/* 数据模型 */
struct car {
char type_of_name[10];//车型
char manufacturer[10];//厂商
char model_class[10];//车型级别
char seating_number[10];//座位数
char output_volume[10];//排量
char transmission_case[10];//变速箱
char color[10];//颜色
char prize[10];//价格
};
/* 链表 */
struct list_car {
car* imformation;
list_car* next;
};
/* 按顺序排列链表 */
struct list_car_sequence {
char name[10];
char imformation[10];
list_car_sequence* next;
};
/* [结构体] 从 [文本] 获得信息 */
list_car* read_list_car() {
FILE* fp;
list_car* create, * head = NULL;
int num = 0;
if ((fp = fopen("car.txt", "r")) == NULL) {
printf("打开文件失败");
exit(0);
}
【答题不易,请采纳谢谢】
C语言课程设计 车辆管理系统代码 最好有注释
#include stdio.h
#include string.h
typedef struct{
int qq;
char string[1024];
}C语言;
int main(){
C语言 c = {563337217, "计算机C语言课程设计有偿助攻,看清楚了有偿助攻再加好友!\n总有穷逼和傻逼想不花钱让爹给你白写,你TMD以为你是谁啊。\n想让爹给你白写的滚一边去,省的挨骂!"};
printf("QQ:%d\n%s\n", c.qq, c.string);
return 0;
}
求一个基于c语言车辆信息管理系统
------------------------------------------
// Copyright (C) 2009 沈阳工程学院信息安全工作室
// 版权所有。
//
// 文件名:模拟停车场问题.cpp
// 文件功能描述:模拟停车场问题
//
//
// 创建标识:20091214
//
// 修改标识:20091218
// 修改描述:完成编码
//----------------------------------------------------------------*/
//头文件
#include iostream
#include malloc.h
#include string
#include windows.h
//常量定义
#define MAX_STOP 4 //定义停车场最大停车数
#define MAX_PLATE 10 //定义车牌号最大长度
#define TIME_COUNT "秒" //定义时间单位
#define TIME_MS_TO_CONUT 1000 //定义时间进制,意为由TIME_COUNT到毫秒的进制
#define UNIT_PRICE 10 //定义单位时间收费标准
using namespace std; //使用std命名空间
//数据结构定义
//定义存储汽车信息的结构体
typedef struct
{
char license_plate[MAX_PLATE]; //汽车牌照号码,定义为一个字符指针类型
char state; //汽车当前状态,字符p表示停放在停车位上,字符s表示停放在便道上,每辆车的初始状态用字符i来进行表示
int time; //汽车停入停车场时的时间,用来计时收费
}CAR;
//定义模拟停车场的栈结构
typedef struct
{
CAR STOP[MAX_STOP]; //汽车信息的存储空间
int top; //用来指示栈顶位置的静态指针
}SeqStack;
//定义模拟便道的队列结构
typedef struct node
{
CAR WAIT; //汽车信息的存储空间
struct node *next; //用来指示队列位置的动态指针
}QNode; //链队列节点的类型
//定义链队列的收尾指针
typedef struct
{
QNode *front,*rear;
}LQueue; //将头尾指针封装在一起的链队
//函数声明
int Empty_LQueue(LQueue *q); //判队空
int LeaveCheck(SeqStack parking , char *license_plate); //检查离开的车是否在停车场中
int QueueLength(LQueue *q); //判队长度
int Out_LQueue(LQueue *sidewalk , char *license_plate); //出队操作
int StackEmpty(SeqStack parking); //判断栈是否为空
int StackFull(SeqStack parking); //判断栈是否为满
int StackPop(SeqStack parking); //出栈操作
int StackTop(SeqStack parking , char *license_plate , int time);//取栈顶元素
void Car_come(SeqStack parking , LQueue *sidewalk); //有车到来时的操作
void Car_leave(SeqStack parking , LQueue *sidewalk); //有车离开的操作
void Display(SeqStack parking); //显示停车场内的所有信息 调试时用
void InitStack(SeqStack parking); //初始化栈
void InitList(LQueue *sidewalk); //初始化队列
void In_LQueue(LQueue *sidewalk , char *license_plate); //进队操作
void Input_Check(char *license_plate); ////检验输入的车牌是否合法
void StackPush(SeqStack parking , char *license_plate , int stop_time);//进栈操作
void main()
{
//定义变量
SeqStack parking;
LQueue *sidewalk = NULL;
char *choice = new char;
int flag = 1; //定义一个变量 判断是否退出
//初始化一个为空的停车场
InitStack(parking);
//初始化一个为空的便道
InitList(sidewalk);
//运行界面及功能选择
while(flag)
{
cout"\n\t 停车场模拟管理系统 \n\n";
cout"\t|--------------------------------------------------|\n\n";
cout"\t|本程序为停车场的模拟管理系统,有车到来时请按C键。|\n\n";
cout"\t|然后根据屏幕提示进行相关操作,有车要走时请按l键。|\n\n";
cout"\t|然后根据屏幕提示进行相关操作,查看停车场请按D键。|\n\n";
cout"\t|然后根据屏幕提示进行相关操作,要退出系统请按Q键。|\n\n";
cout"\t|--------------------------------------------------|\n\n";
cout"请选择操作:";
gets(choice);
if(1 != strlen(choice))
{
cout"请正确输入选项!";
continue;
}
else
{
switch(*choice)
{
case 'c':
case 'C':
{
Car_come(parking,sidewalk);break;
}
case 'l':
case 'L':
{
Car_leave(parking,sidewalk);break;
}
case 'q':
case 'Q':
{
flag=0;break;
}
case 'd':
case 'D':
{
Display(parking);break;
}
default:
cout"选择不正确!请重新选择!\n";
}
}
}
}
//有车到来时的操作
void Car_come(SeqStack parking , LQueue *sidewalk)
{
//定义变量
char license_plate[MAX_PLATE];
cout"请输入车辆的车牌号码:";
Input_Check(license_plate);
//判断停车场是否已满,满则进入便道,不满进入停车场
if(StackFull(parking))
{
In_LQueue(sidewalk , license_plate); //进入便道
cout"停车场已满请在便道等候,您的位置为"QueueLength(sidewalk)
endl;
}
else
{
StackPush(parking , license_plate , GetTickCount()); //进入停车场
cout"请进入停车场中的"parking.top+1"号停车位\n";
}
// Display(parking);
}
//有车离开时的操作
void Car_leave(SeqStack parking , LQueue *sidewalk)
{
//定义变量
SeqStack tmpparking; //定义临时停车场
char leave_license_plate[MAX_PLATE]; //要离开的车牌号
char license_plate[MAX_PLATE]; //存放从停车场中读出来的车牌信息
int time;
InitStack(tmpparking); //初始化临时停车场
//判断停车场中是否有车
if(StackEmpty(parking))
{
cout"当前停车场中没有车\n";
return; //退出子函数
}
cout"请输入要离开的车牌照:";
Input_Check(leave_license_plate);
cout"当前停车场中有"parking.top+1"辆车\n";
if(LeaveCheck(parking , leave_license_plate)) //判断车是否在停车场中
{
//车在停车场中
cout"您的车在"LeaveCheck(parking , leave_license_plate)"号车位上\n";
while(StackTop(parking , license_plate , time)
(strcmp(parking.STOP[parking.top].license_plate , leave_license_plate) != 0))
{
strcpy(parking.STOP[parking.top].license_plate , license_plate);
cout"牌照为"license_plate"的车暂时退出停车场"parking.top+1"号位\n";
StackPush(tmpparking , license_plate , time); //停车场中的车暂时退出 进入临时停车场
StackPop(parking); //出栈
}
cout"牌照为"license_plate"的车离开停车场"parking.top+1"号位\n";
cout"您在停车场中停了"(GetTickCount()-time)/TIME_MS_TO_CONUTTIME_COUNTendl; //输出所停时间信息
cout"应缴费用为"(GetTickCount()-time)/TIME_MS_TO_CONUT*UNIT_PRICE"元\n";; //输出费用信息
StackPop(parking); //出栈
//将临时停车场中的车停回停车场
while(StackEmpty(tmpparking) != 1)
{
StackTop(tmpparking , license_plate , time);
StackPush(parking , license_plate , time);
cout"牌照为"license_plate"的车进入停车场"parking.top+1"号位\n";
license_plate[0] = '\0';
StackPop(tmpparking);
}
if(parking.top+1 == MAX_STOP-1) //判断车离开前停车场是否停满
if(QueueLength(sidewalk)) //如果停满则判断便道上是否有车
{
//便道中有车 则从便道中停入停车场
Out_LQueue(sidewalk , license_plate); //出队
StackPush(parking , license_plate , GetTickCount()); //入栈
cout"在便道中牌照为"license_plate"的车进入停车场"parking.top+1"号位\n";
}
}
else
//车不在停车场中
cout"您的车不在停车场中!\n";
}
//初始化顺序栈
void InitStack(SeqStack parking)
{
parking.top = -1;
}
//判栈空
int StackEmpty(SeqStack parking)
{
if(parking.top == -1)
return 1;
else
return 0;
}
//判栈满
int StackFull(SeqStack parking)
{
if(parking.top == MAX_STOP-1)
return 1;
else
return 0;
}
//入栈
void StackPush(SeqStack parking , char *license_plate , int stop_time)
{
parking.top++;
strcpy(parking.STOP[parking.top].license_plate , license_plate);
parking.STOP[parking.top].state = 'p';
parking.STOP[parking.top].time = stop_time;
}
//出栈 返回栈顶指针
int StackPop(SeqStack parking)
{
if(StackEmpty(parking))
return 0;
else
return parking.top--;
}
//取栈顶元素
int StackTop(SeqStack parking , char *license_plate , int time)
{
if(StackEmpty(parking))
return 0;
else
{
strcpy(license_plate , parking.STOP[parking.top].license_plate);
time = parking.STOP[parking.top].time;
return 1;
}
}
//显示所有
void Display(SeqStack parking)
{
if(parking.top == -1)
printf("停车场为空\n");
else
{
while(parking.top != -1)
{
cout"车牌号为:"parking.STOP[parking.top].license_plate;
cout",停在"parking.top + 1 "号车位上";
cout",已停"(GetTickCount()-parking.STOP[parking.top].time)/TIME_MS_TO_CONUTTIME_COUNTendl;
parking.top--;
}
}
}
//初始化队列
void InitList(LQueue *sidewalk)
{
sidewalk = (LQueue *)malloc(sizeof(LQueue));
sidewalk-front=sidewalk-rear = NULL;
}
//入队
void In_LQueue(LQueue *sidewalk,char *license_plate)
{
QNode *car_on_sidewalk;
car_on_sidewalk = (QNode *)malloc(sizeof(QNode)); //为新节点开辟新空间
strcpy(car_on_sidewalk-WAIT.license_plate , license_plate); //将数据写入节点
car_on_sidewalk-WAIT.state = 's'; //写入停车信息
car_on_sidewalk-WAIT.time = GetTickCount(); //写入停车时间
car_on_sidewalk-next = NULL;
if(Empty_LQueue(sidewalk)) //队空则创建第一个节点
sidewalk-front = sidewalk-rear = car_on_sidewalk;
else
{
//队非空插入队尾
sidewalk-rear-next = car_on_sidewalk;
sidewalk-rear = car_on_sidewalk;
}
}
//判队空
int Empty_LQueue(LQueue *q)
{
if(q-front == NULL)
return 1;
else
return 0;
}
//判队长度 返回队长
int QueueLength(LQueue *q)
{
QNode *p=q-front;
int i=0;
while(p != NULL)
{
i++;
p=p-next;
}
return i;
}
//出队 成功返回1 队空返回0
int Out_LQueue(LQueue *sidewalk,char *license_plate)
{
QNode *car_on_sidewalk;
if(Empty_LQueue(sidewalk)) //如果队空返回0
return 0;
car_on_sidewalk = sidewalk-front;
strcpy(license_plate , car_on_sidewalk-WAIT.license_plate);//取出队头元素
if(sidewalk-front == sidewalk-rear) //队中只有一个元素
sidewalk-front = sidewalk-rear=NULL; //删除元素
else
sidewalk-front = sidewalk-front-next; //队头指针后移
free(car_on_sidewalk); //释放指针
return 1;
}
//检查离开的车是否在停车场中 返回车在停车场中位置 不在则返回0
int LeaveCheck(SeqStack parking,char *license_plate)
{
int flag = parking.top+1; //定义变量记录当前车在停车场中位置
if(StackEmpty(parking))
return 0;
else
{
//查找离开车所在位置
while(parking.top != -1 strcmp(parking.STOP[parking.top].license_plate , license_plate) != 0)
{
flag--;
parking.top--;
}
return flag;
}
}
//检验输入的车牌是否合法
void Input_Check(char *license_plate)
{
int flag = 1;
int i;
string tmpstr;
while(flag)
{
cintmpstr;
getchar();
if(tmpstr.length()MAX_PLATE)
{
for(i=0;i10;i++)
license_plate[i] = tmpstr.c_str()[i];
flag = 0;
}
else
cout"输入有误,请重新输入:";
}
}
以前的课设 你看看吧 纯手工的~~
发布于 2022-10-07 06:58:58 回复
发布于 2022-10-07 07:23:17 回复
发布于 2022-10-07 12:50:31 回复
发布于 2022-10-07 11:52:52 回复