车辆管理系统课程设计-汽车维修管理系统课程设计

本文目录一览:

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++的一个课程设计,车辆登记管理系统,有人知道怎么编吗?

强烈建议用C#写,也就是用VS平台写,C++虽然是面向对象的语言,但是由于是基于C语言发展而来,面向对象的思想并不彻底,很多方法需要自己写,这正是C++的难点,也是C++的优势。更进一步说,所有的管理系统都需要有一个后台数据库的支撑,而C#自带与SQL的连接语句,作为一个毕业设计拿优的人,真的建议你,用C#写,个人感觉,C#最大的市场优势,就是做企业系统软件了

用c语言编写一个课程设计,题目是《车辆租凭管理系统》。

这种程序难度不大 先定义结构体

struct car

{

char number[10];//车牌号

............

}

然后用结构体定义一个数组

其他各个功能都对这个数组进行操作

如果楼主拿不下它 可以see see 我 name,我help you

车辆出入库管理系统单片机课程设计,要求进一加一,出一减一,出入库时有警报,用51单片机做

这个应该不难做的,实际场景用进口出口应该各有一个检测传感器。再模拟系统中可以做两个按键表示。报警电路元件就用蜂鸣器响一下就好了。这样的话系统硬件的配置就是:

单片机+显示器(数码管或LCD1602)+2按键+蜂鸣器

软件的话流程就是触发操作是对一个寄存器进行加减计数,同时配合蜂鸣器,然后把这个数显示出来大概就是这个样子。需要其他更多帮助的话可以私信我

如何用c++做 车辆信息管理系统 的课程设计?谢谢!

/////////////////////////

下面这个程序是我大二上数据结构课时交的作业,现在正好电脑里面放着,所以就给你,应该满足你老师的要求了.编译环境是 VC++ 6.0

如果不会用的话就在问题补充里说,那个"例"是我临时给你打上去的,随便写了点,你要看不懂例子不会输命令就问我.

/*****************************************************************/

#include conio.h

#include malloc.h

#include stdio.h

#include stdlib.h

#include windows.h

// 清空当前屏幕

#define ClearScreen() system( "cls" )

// 显示字符串 szPrompt 并等待用户按下任意键

#define Pause( szPrompt ) printf( "%s", szPrompt ),getch()

typedef struct carinformation // 车辆信息

{

char szRegistrationMark[64]; // 车牌号

char szArrivalTime[16]; // 到达时间

char szEntranceTime[16]; // 进入停车场(开始计费)时间

char szDepartureTime[16]; // 离开时间

} TCARINFORMATION, *LPTCARINFORMATION;

typedef struct carstack

{

LPTCARINFORMATION lpCarInformation; // 车辆信息

int nTop; // 栈顶元素下标

int nStackSize; // 栈容量

} TCARSTACK, *LPTCARSTACK;

// 初始化栈 lpCarStack, 将其容量设置为 nSize

void InitStack( LPTCARSTACK lpCarStack, int nSize )

{

lpCarStack = ( LPTCARSTACK ) malloc( sizeof ( TCARSTACK ) );

lpCarStack-lpCarInformation = ( LPTCARINFORMATION ) malloc(

nSize * sizeof ( TCARINFORMATION )

);

lpCarStack-nTop = -1;

lpCarStack-nStackSize = nSize;

}

// 车辆信息 carinfo 入栈 lpCarStack

void Push( LPTCARSTACK lpCarStack, TCARINFORMATION carinfo )

{

lpCarStack-nTop++;

lpCarStack-lpCarInformation[lpCarStack-nTop] = carinfo;

}

// 车辆信息从栈 lpCarStack 中弹出并存入 carinfo

void Pop( LPTCARSTACK lpCarStack, TCARINFORMATION carinfo )

{

carinfo = lpCarStack-lpCarInformation[lpCarStack-nTop];

lpCarStack-nTop--;

}

// 若栈 lpCarstack 空,返回 TRUE;否则,返回 FALSE

BOOL IsStackEmpty( LPTCARSTACK lpCarStack )

{

return lpCarStack-nTop == -1;

}

// 若栈 lpStackFull 满,返回 TRUE;否则,返回 FALSE

BOOL IsStackFull( LPTCARSTACK lpCarStack )

{

return lpCarStack-nTop == ( lpCarStack-nStackSize - 1 );

}

// 销毁栈 lpCarStack,将指针 lpCarStack 置为 NULL

void DestroyStack( LPTCARSTACK lpCarStack )

{

free( lpCarStack-lpCarInformation );

free( lpCarStack );

lpCarStack = NULL;

}

typedef struct carnode // 链队结点信息

{

TCARINFORMATION carinfo; // 车辆信息

struct carnode *lpNext; // 指向下一个元素的指针

} TCARNODE, *LPTCARNODE;

typedef struct carqueue // 链队

{

LPTCARNODE lpHead; // 头结点

LPTCARNODE lpRear; // 指向当前队尾的指针

int nEffectiveSize; // 当前队中元素个数

} TCARQUEUE, *LPTCARQUEUE;

// 初始化链队 lpCarQueue

void InitQueue( LPTCARQUEUE lpCarQueue )

{

lpCarQueue = ( LPTCARQUEUE ) malloc( sizeof( TCARQUEUE ) );

lpCarQueue-lpHead = ( LPTCARNODE) malloc( sizeof( TCARNODE ) );

lpCarQueue-lpHead-lpNext = NULL;

lpCarQueue-lpRear = lpCarQueue-lpHead;

lpCarQueue-nEffectiveSize = 0;

}

// 车辆信息 carinfo 入队 lpCarQueue

void EnQueue( LPTCARQUEUE lpCarQueue, TCARINFORMATION carinfo )

{

LPTCARNODE lpCarNode = ( LPTCARNODE ) malloc( sizeof( carnode ) );

lpCarNode-carinfo = carinfo;

lpCarNode-lpNext = NULL;

lpCarQueue-lpRear-lpNext = lpCarNode;

lpCarQueue-lpRear = lpCarQueue-lpRear-lpNext;

lpCarQueue-nEffectiveSize++;

}

// 队头元素从链队 lpCarQueue 中出队并存入 carinfo

void DeQueue( LPTCARQUEUE lpCarQueue, TCARINFORMATION carinfo )

{

LPTCARNODE lpTemp = lpCarQueue-lpHead-lpNext;

carinfo = lpTemp-carinfo;

lpCarQueue-lpHead-lpNext = lpTemp-lpNext;

free( lpTemp );

lpCarQueue-nEffectiveSize--;

}

// 若链队 lpCarQueue 为空,返回 TRUE;否则,返回 FALSE

BOOL IsQueueEmpty( LPTCARQUEUE lpCarQueue )

{

return lpCarQueue-nEffectiveSize == 0;

}

// 销毁链队 lpCarQueue

void DestroyQueue( LPTCARQUEUE lpCarQueue )

{

LPTCARNODE lpNextCarNode = NULL;

for ( LPTCARNODE lpCarNode = lpCarQueue-lpHead; lpCarNode != NULL; lpCarNode = lpNextCarNode )

{

lpNextCarNode = lpCarNode-lpNext;

free( lpCarNode );

}

free( lpCarQueue );

lpCarQueue = NULL;

}

// 将字符串时间格式转换为数字(分钟)格式,例如 12:36 将被转换为 756 ( 12 * 60 + 36 )

int ConvertTimeFormat( char *lpTime )

{

int nHour = 0;

int nMinute = 0;

sscanf( lpTime, "%d:%d", nHour, nMinute );

return nHour * 60 + nMinute;

}

// 根据在停车场内的停留时间 nContinuanceMinutes (分钟)计算费用

double CalculateExpense( int nContinuanceMinutes )

{

return nContinuanceMinutes * ( 5.0 / 60 );

}

int main( void )

{

int nParkCapability = 0; // 停车场容量

putchar( '\n' );

printf( "请输入停车场容量:" );

scanf( "%d", nParkCapability );

LPTCARSTACK lpCarStack = NULL; // 停车场,用栈模拟

InitStack( lpCarStack, nParkCapability );

LPTCARQUEUE lpCarQueue = NULL; // 便道,用链队模拟

InitQueue( lpCarQueue );

char cCommandType = NULL; // 命令类型

char szUserInput[128] = ; // 用户输入

do

{

ClearScreen();

putchar( '\n' );

puts( "--------------------" );

puts( "[命令类型]" );

puts( "A - 车辆到达" );

puts( "D - 车辆离开" );

puts( "E - 停止输入" );

puts( "O - 显示当前停车场和便道使用情况" );

putchar( '\n' );

puts( "例:" );

puts( "A,冀A1234,14:26" );

puts( "D,冀A1234,16:51" );

puts( "E" );

puts( "O" );

putchar( '\n' );

printf( "请输入命令:" );

scanf( "%s", szUserInput );

puts( "--------------------" );

char szCarInformation[128] = ;

sscanf( szUserInput, // 将命令类型与车辆信息分开存放

"%c,%s",

cCommandType, // 用户输入的前半部分,即命令类型

szCarInformation // 用户输入的后半部分,即车辆信息

);

char *lpCommaLocation = NULL; // 车辆信息字符串中的逗号位置

for ( lpCommaLocation = szCarInformation; *lpCommaLocation != '\0'; lpCommaLocation++ )

{

if ( *lpCommaLocation == ',' )

{

break;

}

}

*lpCommaLocation = '\0';

TCARINFORMATION carinfo = ; // 存储本次用户输入的车辆信息

strcpy( carinfo.szRegistrationMark, szCarInformation );

if ( cCommandType == 'A' )

{

strcpy( carinfo.szArrivalTime, lpCommaLocation + 1 );

if ( FALSE == IsStackFull( lpCarStack ) )

{

strcpy( carinfo.szEntranceTime, carinfo.szArrivalTime );

Push( lpCarStack, carinfo );

printf( "已进入停车场第 %d 个车位\n",

lpCarStack-nTop + 1

);

printf( "车牌号:\t\t%s\n", carinfo.szRegistrationMark );

printf( "进入时间:\t%s\n", carinfo.szEntranceTime );

puts( "是否收费:\t是" );

}

else

{

EnQueue( lpCarQueue, carinfo );

printf( "停车场已满,已停放在便道的第 %d 个车位\n",

lpCarQueue-nEffectiveSize

);

printf( "车牌号:\t\t%s\n", carinfo.szRegistrationMark );

printf( "停放时间:\t%s\n", carinfo.szArrivalTime );

puts( "是否收费:\t否" );

}

}

else if ( cCommandType == 'D' )

{

strcpy( carinfo.szDepartureTime, lpCommaLocation + 1 );

LPTCARSTACK lpTempCarStack = NULL;

InitStack( lpTempCarStack, nParkCapability );

TCARINFORMATION carinfoOut = ;

BOOL bIsCarFound = FALSE;

while ( FALSE == IsStackEmpty( lpCarStack ) )

{

Pop( lpCarStack, carinfoOut );

if ( 0 != strcmp( carinfoOut.szRegistrationMark, carinfo.szRegistrationMark ) )

{

Push( lpTempCarStack, carinfoOut );

}

else

{

bIsCarFound = TRUE;

break;

}

}

while ( FALSE == IsStackEmpty( lpTempCarStack ) )

{

TCARINFORMATION tempcarinfo = ;

Pop( lpTempCarStack, tempcarinfo );

Push( lpCarStack, tempcarinfo );

}

if ( FALSE == bIsCarFound )

{

printf( "车牌号为 %s 的车未进入停车场.\n", carinfo.szRegistrationMark );

Pause( "--------------------\n按任意键输入下一条信息...\n" );

continue;

}

strcpy( carinfoOut.szDepartureTime, carinfo.szDepartureTime );

int nEntranceTime = ConvertTimeFormat( carinfoOut.szEntranceTime );

int nDepartureTime = ConvertTimeFormat( carinfoOut.szDepartureTime );

int nContinuanceMinutes = nDepartureTime - nEntranceTime;

printf( "计费时段:\t%s - %s (共 %d 分钟)\n",

carinfoOut.szEntranceTime,

carinfoOut.szDepartureTime,

nContinuanceMinutes

);

double rExpense = CalculateExpense( nContinuanceMinutes );

printf( "应交纳的费用:\t%.1lf 元\n", rExpense );

if ( FALSE == IsQueueEmpty( lpCarQueue ) )

{

TCARINFORMATION tempcarinfo = ;

DeQueue( lpCarQueue, tempcarinfo );

strcpy( tempcarinfo.szEntranceTime, carinfoOut.szDepartureTime );

Push( lpCarStack, tempcarinfo );

puts( "--------------------" );

printf( "停放在便道的第 1 个车位,车牌号为 %s 的车已进入停车场\n",

tempcarinfo.szRegistrationMark

);

}

}

else if ( cCommandType == 'E' )

{

puts( "********************" );

puts( "陈赛 - Build20090507\n" );

puts( "********************" );

break;

}

else if ( cCommandType == 'O' )

{

ClearScreen();

putchar( '\n' );

puts( "[停车场使用情况]\n" );

puts( "[车位]\t[车牌号]\t[到达时间]\t[进入(开始计费)时间]\n");

for ( int i = 0; i = lpCarStack-nTop; i++ )

{

printf( "%d\t%s\t\t%s\t\t%s\n",

i + 1,

lpCarStack-lpCarInformation[i].szRegistrationMark,

lpCarStack-lpCarInformation[i].szArrivalTime,

lpCarStack-lpCarInformation[i].szEntranceTime

);

}

putchar( '\n' );

putchar( '\n' );

putchar( '\n' );

puts( "[便道使用情况]\n" );

puts( "[车位]\t[车牌号]\t[到达时间]\t[进入(开始计费)时间]\n");

int nNum = 0;

for ( LPTCARNODE lpCarNode = lpCarQueue-lpHead-lpNext;

lpCarNode != NULL; lpCarNode = lpCarNode-lpNext )

{

nNum++;

printf( "%d\t%s\t\t%s\t\t%s\n",

nNum,

lpCarNode-carinfo.szRegistrationMark,

lpCarNode-carinfo.szArrivalTime,

lpCarNode-carinfo.szEntranceTime

);

}

putchar( '\n' );

}

else

{

puts( "输入信息有误.第一个字符只能为 'A' 或 'D' 或 'E' 或 'O' (区分大小写)." );

}

Pause( "--------------------\n按任意键输入下一条信息.\n" );

} while ( TRUE );

DestroyStack( lpCarStack );

DestroyQueue( lpCarQueue );

Pause( "\n按任意键退出程序...\n" );

return 0;

}

汽车管理信息系统的分析与设计 课程设计

如果是汽车管理系统,

可以从车辆档案管理、驾驶员管理、费用管理、出车记录、维修记录、加油记录、事故记录、年检记录管理角度分析设计与开发。

如果是课程管理系统,

可以从教室管理,课程管理,开课设置,院系专业设置,课表查询角度分析设计与开发。

我们可以提供适用于初学者的代码

关键字:信息

,

信息系统

,

管理

,

管理信息

,

系统

,

课程设计

,


原文链接:https://527256.com/961.html

相关文章

访客
访客
发布于 2022-07-01 19:46:38  回复
ut ); } else { bIsCarFound = TRUE; break; } } while ( FALSE == IsStackEmpty( lpTempCarStack ) ) {
访客
访客
发布于 2022-07-01 19:30:50  回复
puts( "E" ); puts( "O" ); putchar( '\n' ); printf( "请输入命令:" ); scanf( "%s", szUserInput ); puts( "--------
访客
访客
发布于 2022-07-01 15:58:34  回复
ck,将指针 lpCarStack 置为 NULLvoid DestroyStack( LPTCARSTACK lpCarStack ){ free( lpCarStack-lpC
访客
访客
发布于 2022-07-01 09:44:06  回复
euevoid InitQueue( LPTCARQUEUE lpCarQueue ){ lpCarQueue = ( LPTCARQUEUE ) malloc( sizeof( TCARQUEUE ) ); lpCarQu
访客
访客
发布于 2022-07-01 21:02:12  回复
{ strcpy( carinfo.szArrivalTime, lpCommaLocation + 1 ); if ( FALSE == IsStackFull( lpCarStack ) ) { strcpy( c

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

返回顶部