C语言实现车辆出租管理系统
这个项目是我今年的C语言课设。做这个项目一个人大概用了一天的时间来完成,整体将近700行,量不是很多,所以也没用多文件什么的,当然也是采用了模块化设计的思路,在代码中写了几个函数来实现特定的功能。
以下是这个项目的一些要求和全部源码。
一、软件开发目的
该软件主要是使用C语言设计开发一个简单的车辆租赁管理系统,实现租赁信息的查询、修改、删除、添加以及订单的查询等功能。
二、数据结构
程序中采用结构体数组存储租赁信息。租赁结构体成员包括:订单号、身份证号、车牌号、费用。数组的长度不超过100。
三、软件功能说明
1.租赁信息的录入和保存:
输入租赁信息包括:订单号、身份证号、车牌号、费用。还车前费用为0。在录入数据的同时,系统将对信息的合法性进行检验,若录入了不合法的数据系统应作出提示,并且要求重新输入。
2.显示单条租赁信息:
将租赁信息在屏幕上列表输出。要求先显示提示信息“订单号、身份证号、车牌号、费用”,然后再显示租赁信息,每行显示一条租赁信息。
3.查询单条租赁信息
输入身份证号进行查询,输出符合条件的租赁信息,输出订单号、身份证号、车牌号、费用。
4.查询每辆车的租赁费用:
输入车牌号进行查询,输出该车所有租赁的总费用。输出车牌号、总费用。
5.添加租赁信息
输入新的租赁信息,将新的信息插入原租赁信息清单中,并将新的列表输出,以方便用户确认。
6.修改、删除租赁信息
通过身份证号对某条租赁信息进行进行修改和删除,并将租赁信息列表输出,以方便用户确认。
7.统计:
(1)统计输出当月订单总金额
(2)统计输出订单金额最高的车牌号
8.退出系统,结束任务。
以下是该程序的全部代码
#include#include #include #include #include HANDLEhandle=GetStdHandle(STD_OUTPUT_HANDLE); intloop=0; intmenu(); intmenu_2(); intmenu_3(); voidgotoxy(); voidHideCursor(); voidInsertInformation(); voidPrintInformation(); voidIdSearch(); voidPlateNumber(); voidExitSystem(); voidReviseInformation(); voidDeleteInformation(); voidAddInformation(); voidMoneySum(); voidChampionCar(); structinformation{ inttheOrderNumber; charIdNumber[20]; charPlateNumber[10]; doubleCost; }car[999999]; intkey; intmain(){ HideCursor(); menu(); key=menu(); switch(key){ case1: InsertInformation(); break; case2: PrintInformation(); break; case3: menu_2(); switch(menu_2()){ case1: MoneySum(); break; case2: ChampionCar(); break; case3: system("cls"); main(); break; case4: ExitSystem(); break; } break; case4: ReviseInformation(); break; case5: DeleteInformation(); break; case6: AddInformation(); break; case7: menu_3(); switch(menu_3()){ case1: MoneySum(); break; case2: ChampionCar(); break; case3: system("cls"); main(); break; case4: ExitSystem(); break; } break; case8: ExitSystem(); break; } return0; } voidgotoxy(shortx,shorty){ COORDcoord={x,y};/*定义结构体变量coord*/ SetConsoleCursorPosition(GetStdHandle(STD_OUTPUT_HANDLE),coord); } voidHideCursor(){ CONSOLE_CURSOR_INFOcursor_info={1,0}; SetConsoleCursorInfo(GetStdHandle(STD_OUTPUT_HANDLE),&cursor_info); } intmenu(void){ inti,choose; gotoxy(50,5); for(i=0;i<20;i++){ printf("-"); } for(i=0;i<5;i++){ gotoxy(49-2*i,6+i); printf("/"); } for(i=0;i<50;i++){ gotoxy(25+i,10); printf("-"); } for(i=0;i<5;i++){ gotoxy(25,11+i); printf("|"); } gotoxy(35,13); printf("欢迎使用汽车租赁管理系统"); gotoxy(40,15); printf("[1]信息录入"); gotoxy(40,16); printf("[2]信息显示"); gotoxy(40,17); printf("[3]查询信息"); gotoxy(40,18); printf("[4]修改信息"); gotoxy(40,19); printf("[5]删除信息"); gotoxy(40,20); printf("[6]追加信息"); gotoxy(40,21); printf("[7]统计信息"); gotoxy(40,22); printf("[8]退出"); gotoxy(40,26); printf("Zenith版权所有"); gotoxy(40,23); printf("请选择(1-8):"); scanf("%d",&choose); while(choose<1||choose>8){ printf("请输入范围为1-8的整数"); gotoxy(40,23); printf("请选择(1-8):"); scanf("%d",&choose); } returnchoose; } intmenu_2(void){ system("cls"); inti,choose; gotoxy(50,5); for(i=0;i<20;i++){ printf("-"); } for(i=0;i<5;i++){ gotoxy(49-2*i,6+i); printf("/"); } for(i=0;i<50;i++){ gotoxy(25+i,10); printf("-"); } for(i=0;i<5;i++){ gotoxy(25,11+i); printf("|"); } gotoxy(35,13); printf("欢迎使用汽车租赁管理系统"); gotoxy(40,15); printf("[1]按照身份证号检索"); gotoxy(40,16); printf("[2]按照车牌号检索"); gotoxy(40,17); printf("[3]返回主菜单"); gotoxy(40,18); printf("[4]退出系统"); gotoxy(40,26); printf("Zenith版权所有"); gotoxy(40,23); printf("请选择(1-4):"); scanf("%d",&choose); while(choose<1||choose>8){ printf("请输入范围为1-4的整数"); gotoxy(40,23); printf("请选择(1-4):"); scanf("%d",&choose); } returnchoose; } intmenu_3(void){ system("cls"); inti,choose; gotoxy(50,5); for(i=0;i<20;i++){ printf("-"); } for(i=0;i<5;i++){ gotoxy(49-2*i,6+i); printf("/"); } for(i=0;i<50;i++){ gotoxy(25+i,10); printf("-"); } for(i=0;i<5;i++){ gotoxy(25,11+i); printf("|"); } gotoxy(35,13); printf("欢迎使用汽车租赁管理系统"); gotoxy(40,15); printf("[1]查看车辆总收入"); gotoxy(40,16); printf("[2]查看盈利冠军车辆"); gotoxy(40,17); printf("[3]返回主菜单"); gotoxy(40,18); printf("[4]退出系统"); gotoxy(40,26); printf("Zenith版权所有"); gotoxy(40,23); printf("请选择(1-4):"); scanf("%d",&choose); while(choose<1||choose>8){ printf("请输入范围为1-4的整数"); gotoxy(40,23); printf("请选择(1-4):"); scanf("%d",&choose); } returnchoose; } voidInsertInformation(){ system("cls"); inta,k,j,x,one; doublecost; inti=0; do{ printf("\n----------------------------------------------------\n"); printf("\t———信息录入———\n\n"); fflush(stdin);//清空缓冲区 printf("请输入订单号(1-999999):"); scanf("%d",&x); while(x<1||x>100){ printf("订单号范围为1~100:"); scanf("%d",&x); } one=0; for(j=0;j =loop){ do{ printf("输入的行数必须小于已有的条目数!请重新输入:"); scanf("%d",&row); }while(row<=loop); } for(i=loop;i>=row;i--){ car[i]=car[i-1]; } printf("请输入订单号(1-100):"); scanf("%d",&x); while(x<1||x>100){ printf("订单号范围为1~100:"); scanf("%d",&x); } one=0; for(j=0;j =high){ high=car[i].Cost; j=i; } } gotoxy(3,5); printf("截止目前盈利冠军车辆为收入%lf元的%s",high,car[j].PlateNumber); gotoxy(3,6); printf("按任意键返回主菜单"); getch(); system("cls"); main(); } voidExitSystem(){ system("cls"); printf("\n退出系统中..."); Sleep(1000); exit(0); }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。