汽车汽修管理系统课程设计doc 47页.docx

上传人:b****1 文档编号:23283819 上传时间:2023-05-15 格式:DOCX 页数:59 大小:213.33KB
下载 相关 举报
汽车汽修管理系统课程设计doc 47页.docx_第1页
第1页 / 共59页
汽车汽修管理系统课程设计doc 47页.docx_第2页
第2页 / 共59页
汽车汽修管理系统课程设计doc 47页.docx_第3页
第3页 / 共59页
汽车汽修管理系统课程设计doc 47页.docx_第4页
第4页 / 共59页
汽车汽修管理系统课程设计doc 47页.docx_第5页
第5页 / 共59页
点击查看更多>>
下载资源
资源描述

汽车汽修管理系统课程设计doc 47页.docx

《汽车汽修管理系统课程设计doc 47页.docx》由会员分享,可在线阅读,更多相关《汽车汽修管理系统课程设计doc 47页.docx(59页珍藏版)》请在冰豆网上搜索。

汽车汽修管理系统课程设计doc 47页.docx

汽车汽修管理系统课程设计doc47页

汽车汽修管理系统课程设计(doc47页)

一、设计题目1

二、设计目的1

三、设计说明1

四、总体设计2

五、详细设计3

六、结论7

七、附录(程序源代码):

7

(2)软件环境。

本系统的设计采用VisualC++6.0编写。

在WindowsXPSP2环境下测试通过。

四、总体设计

1.数据设计

(1)类设计

车辆信息类car_infor,该类有共同的信息车牌号car_no、牌号car_brand、型号car_modles、生产厂家manufacturer、修理项目码repair_code、车主姓名owner_name、联系电话phone_nomber、修理日期repair_time。

车辆修理菜单信息类repair_list,该类有共同的修理单编号list_no、修理工工号repaiman_no、修理日期repair_time、修理项目project、修理小时数repair_hours、完工日期complete_time。

用户信息类user,该类有成员用户名user_name、密码password。

功能类fun,该类中包含所有的功能函数,实现对车辆信息及车辆修理单信息的增加、修改、删除以及统计等实用功能。

voidadd()增加车辆信息,voiddel()删除车辆信息,voidmodify()修改车辆信息,voidadd_list()增加车辆修理单信息,voiddel_list()删除车辆修理单信息,voidmodify_list()修改车辆修理单信息,intJudge()判断函数,voidquery_car()查询车辆信息,voidquery_list()查询车辆修理单信息,voidquery_car_no()按车辆名查询,voidquery_owner_name()按车主名查询,voidquery_repaiman_no()按修理工工号查询,voidquery_rlist_no()按车辆修理单号查询,Statistics()修理单统计等。

(2)函数设计

Intregiste()用户注册,intJudge6()用户登录,voidadd()增加车辆信息,voiddel()删除车辆信息,voidadd_list()增加车辆修理单信息,voidmodify()修改车辆信息,voiddel_list()删除车辆修理单信息,voidmodify_list()修改车辆修理单信息,intJudge()判断函数,voidquery_car()查询车辆信息,voidquery_list()查询车辆修理单信息,voidquery_car_no()按车辆名查询,voidquery_owner_name()按车主名查询,voidquery_repaiman_no()按修理工工号查询,voidquery_rlist_no()按车辆修理单号查询,voidStatistics()1按月输出汽车修理单信息,voidStatistics()2统计每个修理工的月修理信息。

1.结构设计

系统流程图如图4-1所示。

图4-1系统流程图

五、详细设计

(1)用户登录/注册界面设计

 

图5-1用户登录界面

此界面用户通过选择进行登录、注册操作,通过调用函数registe(),Judge6()实现相关功能。

(2)汽车汽修管理系统界面

 

图5-2汽车汽修管理系统界面

通过用户选择相关功能进行操作,由menu()函数实现显示功能,用户根据相关提示进入下一步。

(3)增加车辆信息

 

图5-3增加车辆信息

用户按照提示输入,进入相关调用及选择如图中调用add()函数实现对数据的增加操作。

(4).删除车辆信息

 

图5-4删除车辆信息

此界面实现对信息的删除操作,调用del()函数,实现中先判断有无此信息,然后进行相关操作。

(5)修改车辆信息

 

图5-5修改车辆信息

此界面调用了modify()函数,系统先判断有无此信息,然后用户根据提示,找到数据,进行修改操作。

(6)查询车辆信息

图5-6查询车辆信息

此界面调用query_car()函数,此函数包含其他两函数工能,因此用户根据提示选择自己的查询方式。

(7)统计车辆修理单信息

 

图5-7统计车辆修理单信息

此界面调Statistics()函数,此函数包含其他两函数工能,因此用户根据提示选择相关需要统计。

六、结论

这次做的是汽车汽修管理系统,能够很好的实现对相关信息的增加、删除、修改、查询以及用户的注册、登录等功能。

并且还能够实现相关功能间的循环转换,本次开发主要用了c++中对于类以及文件的使用,大部分功能的实现依靠文件的相关控制。

因此在实现和代码上有许多值得改进和的地方。

由于时间原因,程序功能相关部分,还有许多地方值得推敲和拓展开发。

开发过程中,由于是开发者单独的设计和编写,所以在某些功能上可能与实际的需求有出入,主要是在技术上和需求分析上问题,因此该系统还是有尚需要改进的部分。

可能因为时间的原因,有些地方做得不够精细,所学的东西不能全部用好。

多多把所学的运用到实际中是以后的编程中应该加强和注意的。

七、附录(程序源代码):

#include

#include

#include

#include

#include

#include

usingnamespacestd;

//****车辆信息类****

classcar_infor

{

public:

car_infor()

{}

private:

stringcar_no;//车牌号

stringcar_brand;//牌号

stringcar_modles;//型号

stringmanufacturer;//生产厂家

stringrepair_code;//修理项目码

stringowner_name;//车主姓名

stringphone_number;//联系电话

stringrepair_time;//修理日期

};

//****修理单类****

classrepair_list

{

public:

repair_list()

{}

private:

stringlist_no;//修理单编号

stringrepairman_no;//修理工工号

stringrepair_time;//修理日期

stringproject;//修理项目

stringrepair_hours;//修理小时数

stringcomplete_time;//完工日期

};

//****用户信息类****

classuser

{

public:

user()

{}

private:

stringuser_name;//用户名

stringpassword;//密码

};

//****功能类****

classfun

{

public:

fun()

{}

//**********信息维护************

//****增加车辆信息****

voidadd()

{

system("cls");

stringa,b,c,d,e,f,g,h;

stringline;

ofstreamcar("d:

\\cars.txt",ios:

:

app);

if(!

car)

{

cerr<<"openerror!

"<

exit

(1);

}

intflag=1;

while(flag)

{

cout<

cout<<"\t\t\t*****************"<

cout<<"\t\t\t1.增加汽车信息"<

cout<<"\t\t\t0.返回上一菜单"<

cout<<"\t\t\t*****************"<

cout<<"\t\t\t请输入您的选择:

";

intn;

cin>>n;

switch(n)

{

case1:

system("cls");

cout<

cout<<"\t请按提示输入车辆信息:

"<

cout<<"\t车牌号:

";

cin>>a;

cout<

cout<<"\t汽车的牌号:

";

cin>>b;

cout<

cout<<"\t汽车的型号:

";

cin>>c;

cout<

cout<<"\t生产厂家:

";

cin>>d;

cout<

cout<<"\t修理项目码:

";

cin>>e;

cout<

cout<<"\t车主姓名:

";

cin>>f;

cout<

cout<<"\t联系电话:

";

cin>>g;

cout<

cout<<"\t修理日期:

";

cin>>h;

cout<

car<

:

left)<

system("cls");

cout<

!

!

"<

system("pause");break;

case0:

flag=0;system("cls");break;

default:

system("cls");cout<

请重新输入!

";

}

}

car.close();

}

//***判断函数***

intJudge1(stringcar_n,stringline)

{

ifstreamcar("d:

\\cars.txt");

stringa,b,c,d,e,f,g,h;

while(getline(car,line))

{

istringstreamis(line);

is>>a>>b>>c>>d>>e>>f>>g>>h;

if(car_n==a)

{

return1;

}

}

return0;

}

//****删除车辆信息****

voiddel()

{

system("cls");

stringa,b,c,d,e,f,g,h;

stringline;

stringcar_no;

ifstreamcar("d:

\\cars.txt");

if(!

car)

{

cerr<<"cars.txtcan'topen!

"<

exit

(1);

}

ofstreamtemp("d:

\\temp.txt");

if(!

temp)

{

cerr<<"temp.txtcan'topen!

"<

exit

(1);

}

intflag=1;

while(flag)

{

cout<

cout<<"\t\t\t*****************"<

cout<<"\t\t\t1.删除车辆信息"<

cout<<"\t\t\t0.返回上一菜单"<

cout<<"\t\t\t*****************"<

cout<<"\t\t\t请输入您的选择:

";

intflag1=1;

intn;

cin>>n;

switch(n)

{

case1:

{

stringcar_n;

cout<

cout<<"\t\t\t请输入要删除的车辆的车牌号:

";

cin>>car_n;

if(Judge1(car_n,line)==1)

{

system("cls");

cout<

cout<<"\t\t存在这辆汽车,确定要删除?

(Y/N)"<

cout<<"\t\t请输入您的选择:

"<

cout<<"\t\t";

charch;

cin>>ch;

switch(ch)

{

case'Y':

while(getline(car,line)&&flag1)

{

stringa,b,c,d,e,f,g,h;

stringline;

stringcar_n;

stringcar_no;

cout<<"\t\t请再次输入要删除的车辆的车牌号:

"<

cout<<"\t\t";

cin>>car_n;

ifstreamcar("d:

\\cars.txt");

ofstreamtemp("d:

\\tem.txt");

while(getline(car,line))

{

istringstreamis(line);

is>>a>>b>>c>>d>>e>>f>>g>>h;

if(!

car)

{

cout<<"您要的信息不存在";

}

if(car_n!

=a)

{

temp<

:

left)<

}

}

ofstreamcar1("d:

\\cars.txt",ios:

:

trunc);

ifstreamtemp1("d:

\\tem.txt");

while(getline(temp1,line))

{

istringstreamis(line);

is>>a>>b>>c>>d>>e>>f>>g>>h;

car1<

:

left)<

}

ofstreamtemp2("d:

\\tem.txt",ios:

:

trunc);

temp2.close();

car.close();

car1.close();

temp.close();

temp1.close();

system("cls");

cout<

"<

flag1=0;

};break;

case'N':

system("cls");continue;break;

default:

system("cls");cout<

请重新输入!

";//++++++++++++++++

}

}

else

{

system("cls");

cout<

!

!

"<

break;

}

};break;

case0:

flag=0;break;

default:

system("cls");cout<

请重新输入!

";

}

}

car.close();

temp.close();

}

//****修改车辆信息****

voidmodify()

{

system("cls");

stringa,b,c,d,e,f,g,h;

stringline;

stringcar_n;

cout<

ifstreamcar("d:

\\cars.txt");

if(!

car)

{

cerr<<"cars.txtcan'topen!

"<

exit

(1);

}

ofstreamtemp("d:

\\tem.txt");

if(!

temp)

{

cerr<<"tem.txtcan'topen!

"<

exit

(1);

}

intflag=1,flag1=1;

while(flag)

{

cout<

cout<<"\t\t\t*****************"<

cout<<"\t\t\t1.修改车辆信息"<

cout<<"\t\t\t0.返回上一菜单"<

cout<<"\t\t\t*****************"<

cout<<"\t\t\t请输入您的选择:

";

intn;

cin>>n;

switch(n)

{

case1:

{

stringcar_n;

cout<

cout<<"\t\t\t请输入要修改的汽车号码:

"<

cout<<"\t\t\t";

cin>>car_n;

if(Judge1(car_n,line)==1)

{

system("cls");

cout<

cout<<"\t\t存在这辆汽车,确定修改?

(Y/N)"<

cout<<"\t\t请输入您的选择:

"<

cout<<"\t\t";

charch;

cin>>ch;

switch(ch)

{

case'Y':

while(getline(car,line)&&flag1)

{

stringa,b,c,d,e,f,g,h;

stringline;

stringcar_n;

stringcar_no;

cout<<"\t\t请再次输入要修改的车辆的车牌号:

"<

cout<<"\t\t";

cin>>car_n;

ifstreamcar("d:

\\cars.txt");

ofstreamtemp("d:

\\tem.txt");

while(getline(car,line))

{

istringstreamis(line);

is>>a>>b>>c>>d>>e>>f>>g>>h;

if(!

car)

{

cout<<"您要的信息不存在";

}

if(car_n!

=a)

{

temp<

:

left)<

}

}

ofstreamcar1("d:

\\cars.txt",ios:

:

trunc);

ifstreamtemp1("d:

\\tem.txt");

while(getline(temp1,line))

{

istringstreamis(line);

is>>a>>b>>c>>d>>e>>f>>g>>h;

car1<

:

left)<

}

ofstreamtemp2("d:

\\tem.txt",ios:

:

trunc);

temp2.close();

temp.close();

temp1.close();

system("cls");

cout<

cout<<"\t\t请按提示重新输入车辆信息:

"<

cout<<"\t\t车牌号:

";

cin>>a;

cout<

cout<<"\t\t汽车的牌号:

";

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 农林牧渔 > 水产渔业

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1