汽车信息管理系统

Posted 痕迹天涯119

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了汽车信息管理系统相关的知识,希望对你有一定的参考价值。

本人大一花了两个星期闲时做的汽车信息管理系统,(密码是1008611),因为屏幕分辨率不同的原因,有些可能无法正常显示,以及其它未知纰漏,敬请指教

源代码贴上分享:

#include <stdio.h>
#include <stdlib.h>
#include <cstring>
#include<time.h>   
#include <windows.h>
#define D for(j=0;j<i;j++) printf("  ");
//定义结构体
struct car

	int num;
	char cname[50];
	char carclass[20];
	char press[50];
	char sort[50];
	char time[20];
	float price;
    struct car *next;
;
struct car *creatcar();                          //创建链表
struct car *addcar(struct car *head);           //添加汽车
int is_exist(struct car *head,int m);             //验证新添加的汽车编码是否已存在

void welcome();//欢迎界面
void deletecar(struct car *head);                //删除汽车
void fprint(struct car *head);                    //将链表写入文件
struct car *load();                               //从文件中读取信息并建成链表
void print_car(struct car *head);                //将链表信息输出
void Search(struct car *head);                    //查询汽车信息
void Num_Search(struct car *head);                //按汽车编号查询汽车
void Carclass_Search(struct car *head);              //按汽车级别查询汽车
void Class_Search(struct car *head);               //按类型查询汽车
void Time_Search(struct car *head);               //按出厂时间查询汽车
void Cname_Search(struct car *head);              //按汽车名查询汽车
void Revise(struct car *head);                    //修改汽车信息
void Sort_Car(struct car *head);                 //对汽车进行排序
void Num_Sort(struct car *head);                 //按汽车编号排序
void Time_Sort(struct car *head);                //按汽车出厂时间排序
void Price_Sort(struct car *head);               //按汽车价格排序
void Cname_Sort(struct car *head);               //按汽车名排序
void Carclass_Sort(struct car *head);               //按汽车级别排序
void quit();//退出界面

int main()

	welcome();
    system("color 03");   //控制颜色
	int choice,n,x,y=1,c,c1=1008611;
	char a,d,b[10],b1[10]="123";
	struct car *head=NULL;
	while(y)
		       time_t t;
        time(&t);
		system("cls");   //清屏
        printf("\\n\\n\\n\\n");
        puts("             ╔*☆***◎***◇***☆*** 欢迎光临 ***☆***◇***◎***☆*╗\\n");
		printf("         ********************** 汽车信息管理系统 ************************\\n\\n\\n");
		printf("\\n\\n");
		printf("                      ============1-用户登录===========\\n");
		printf("                      ============0-退出系统===========\\n\\n");
        printf("\\t\\t\\t\\t\\t\\t今天是:%s\\n",ctime(&t));
		printf("       请输入您的选择:");
		scanf("%d",&n);
		printf("\\n");
		getchar();
		switch(n)
		case 0:
			system("cls");y=0;quit();break;
		case 1:
			printf("       请输入您的用户名:");
			gets(b);
			printf("\\n");
			printf("       请输入您的密码:");
			scanf("%d",&c);
			printf("\\n");
			if(strcmp(b,b1)!=0||c!=c1)
				printf("           验证失败,请重新输入!\\n");
				scanf("%c",&d);
				getchar();
				system("cls");
			
			else
				printf("             验证通过!请按Enter键进入!\\n");
				scanf("%c",&d);
				getchar();
				x=1;
				
				while(x)
					system("cls");
					printf("                             ------------------\\n");
					printf("                             *汽车信息管理系统*\\n");
					printf("                             ------------------\\n\\n");
					printf("               **********************************************\\n\\n");
					printf("               **********************************************\\n\\n");
					printf("               || 1-添加汽车                    2-删除汽车 ||\\n\\n");
					printf("               || 3-汽车列表                    4-汽车排序 ||\\n\\n");
					printf("               || 5-查询汽车                    6-修改汽车 ||\\n\\n");
					printf("               || 7-录入数据                    0-退出系统 ||\\n\\n");
					printf("               **********************************************\\n\\n");
					printf("               **********************************************\\n\\n");
					printf("请输入所选择的序号:");
					scanf("%d",&choice);
					getchar();
					system("cls");
					switch(choice)
					
					case 0:
						x=0;break;
					case 1:
						head=load();
						if(head==NULL)
							printf("\\t\\t文件为空,请先录入数据\\t(温馨提示:主界面选择7即可正常录入汽车数据O(∩_∩)O)!\\n");
							getchar();
							break;
						
						else
							head=addcar(head);
							printf("添加成功!\\n");
							printf("是否将新信息保存到文件?(y/n)\\n");
							scanf("%c",&a);
							getchar();
							switch(a)
							case 'n':
								break;
							case 'y':
								fprint(head);
								printf("保存成功!\\n");
								getchar();
								break;
							
							break;
						
						
					case 2:
						head=load();
						if(head==NULL)
							printf("\\t\\t文件为空,请先录入数据!\\t(温馨提示:主界面选择7即可正常录入汽车数据O(∩_∩)O)\\n");
							getchar();
							break;
						
						
						else
							deletecar(head);
							getchar();
							break;
						
						break;
					case 3:
						head=load();
						if(head==NULL)
							printf("\\t\\t文件为空,请先录入数据!\\t(温馨提示:主界面选择7即可正常录入汽车数据O(∩_∩)O)\\n");
							getchar();
							break;
						
						else
							print_car(head);
							getchar();
							break;
						
					case 4:
						head=load();
						if(head==NULL)
							printf("\\t\\t文件为空,请先录入数据!\\t(温馨提示:主界面选择7即可正常录入汽车数据O(∩_∩)O)\\n");
							getchar();
							break;
						
						else
							Sort_Car(head);
							getchar();
						
						break;
					case 5:
						head=load();
						if(head==NULL)
							printf("\\t\\t文件为空,请先录入数据!\\t(温馨提示:主界面选择7即可正常录入汽车数据O(∩_∩)O)\\n");
							getchar();
							break;
						
						else
							Search(head);
							getchar();
						
						break;
					case 6:
						head=load();
						if(head==NULL)
							printf("\\t\\t文件为空,请先录入数据!\\t(温馨提示:主界面选择7即可正常录入汽车数据O(∩_∩)O)\\n");
							getchar();
							break;
						
						else
							Revise(head);
							getchar();
							break;
						
						break;
					case 7:
						printf("注意:输入汽车编码为0时结束!\\n");
						head=creatcar();
						printf("是否将输入的信息保存到文件以覆盖文件中已存在的信息?(y/n)\\n");
						getchar();
						scanf("%c",&a);
						getchar();
						switch(a)
						case 'n':
							break;
						case 'y':
							fprint(head);
							printf("保存成功!\\n");
							getchar();
							break;
						
						break;
						default:
							printf("您的输入有误,请重新输入!\\n");
							getchar();
							break;
				
				
			
		
		break;
		default:
			printf("        您的输入有误!  请重新输入!\\n");
			getchar();
			break;
		
	
	return 0;


//录入数据并形成链表
struct car *creatcar()

	struct car *head,*tail,*p;
	int num,n;char time[20];
	char cname[50],carclass[20],press[50],sort[50];
	float price;
	int size=sizeof(struct car);
	head=tail=NULL;
	printf("请输入汽车编号:");
	scanf("%d",&num);
    printf("请输入汽车名:");
    scanf("%s",cname);
	getchar();
    printf("请输入汽车级别:");
    scanf("%s",carclass);
	getchar();
    printf("请输入生产厂家:");
    scanf("%s",press);
	getchar();
	printf("请输入类型:");
    scanf("%s",sort);
	getchar();
    printf("请输入出厂时间:");
    scanf("%s",time);
	getchar();
    printf("请输入价格:");
    scanf("%f",&price);
	getchar();
	while(1)
		p=(struct car *)malloc(size);
		p->num=num;
		strcpy(p->cname,cname);
		strcpy(p->carclass,carclass);
		strcpy(p->press,press);
		strcpy(p->sort,sort);
		strcpy(p->time,time);
		p->price=price;
		p->next=NULL;
		if(head==NULL)
			head=p;
		else
			tail->next=p;
		tail=p;
		do
			printf("请输入汽车编号:");
			scanf("%d",&num);
			n=is_exist(head,num);
			if(n==0)
				break;
			else
				printf("您输入的编号已存在,请重新输入!\\n");
		while(1);
		if(num==0)
			break;
		else
		
			printf("请输入汽车名:");
			scanf("%s",cname);
			getchar();
			printf("请输入汽车级别:");
			scanf("%s",carclass);
			getchar();
			printf("请输入生产厂家:");
			scanf("%s",press);
			getchar();
			printf("请输入类型:");
			scanf("%s",sort);
			getchar();
			printf("请输入出厂时间:");
			scanf("%s",time);
			getchar();
			printf("请输入价格:");
			scanf("%f",&price);
			getchar();
		
	
	return head;


//插入结点,并且插入后仍按一定顺序
struct car *addcar(struct car *head)

	
	struct car *ptr,*p1,*p2,*p;
    char cname[50],carclass[20],press[50],sort[50];
	int size=sizeof(struct car);
    int num,n=1;char time[20];
	float price;
	do
        printf("请输入汽车编号:");
		scanf("%d",&num);
		n=is_exist(head,num);
		if(n==0)
			break;
		else
			printf("您输入的编号已存在,请重新输入!\\n");
	while(1);
    printf("请输入汽车名:");
    scanf("%s",cname);
	getchar();
    printf("请输入汽车级别:");
    scanf("%s",carclass);
	getchar();
    printf("请输入生产厂家:");
    scanf("%s",press);
	getchar();
	printf("请输入类型:");
    scanf("%s",sort);
	getchar();
    printf("请输入出厂时间:");
    scanf("%s",time);
	getchar();
    printf("请输入价格:");
    scanf("%f",&price);
	getchar();
	p=(struct car *)malloc(size);
    p->num=num;
    strcpy(p->cname,cname);
	strcpy(p->carclass,carclass);
	strcpy(p->press,press);
	strcpy(p->sort,sort);
	strcpy(p->time,time);
	p->price=price;
	p2=head;
	ptr=p;
	while((ptr->num>p2->num)&&(p2->next!=NULL))
		p1=p2;
		p2=p2->next;
	
	if(ptr->num<=p2->num)
		if(head==p2)
			head=ptr;
		else
			p1->next=ptr;
			p->next=p2;
		
	
	else
		p2->next=ptr;
		p->next=NULL;
	
	return head;


//验证添加的汽车编号是否已存在
int is_exist(struct car *head,int m)

	struct car *p;
	p=head;
	while(p!=NULL)
		if(p->num==m)
			break;
		p=p->next;
	
	if(p==NULL)
		return 0;
	else
		return 1;


//将新链表写入文件中
void fprint(struct car *head)

	FILE *fp;
	char ch='1';
	struct car *p1;
	if((fp=fopen("f1.txt","w"))==NULL)
		printf("File open error!\\n");
		exit(0);
	
	fputc(ch,fp);
	for(p1=head;p1;p1=p1->next)
		fprintf(fp,"%d %s %s %s %s %s %f\\n",p1->num,p1->cname,p1->carclass,p1->press,p1->sort,p1->time,p1->price);
	
	fclose(fp);

//从文件中读取汽车信息
struct car *load()

	FILE *fp;
	char ch;
	struct car *head,*tail,*p1;
	head=tail=NULL;
	if((fp=fopen("f1.txt","r"))==NULL)
		fp=fopen("f1.txt","w");
		printf("公司还没有任何汽车,快去购买一些吧!\\n");//执行一次
	
	ch=fgetc(fp);
	if(ch=='1')
		
		while(!feof(fp))
			p1=(struct car *)malloc(sizeof(struct car));
			fscanf(fp,"%d%s%s%s%s%s%f\\n",&p1->num,p1->cname,p1->carclass,p1->press,p1->sort,&p1->time,&p1->price);
			if(head==NULL)
				head=p1;
			else
				tail->next=p1;
			tail=p1;
		
		tail->next=NULL;
		fclose(fp);
        return head;
	
	else
		return NULL;
	


//将整个链表的信息输出
void print_car(struct car *head)

	struct car *ptr;
	if(head==NULL)
		printf("\\n没有信息!\\n");
		return;
	
	printf("                                 汽车信息列表如下\\n");
	printf("            ==========================================================\\n");
	printf("             编号   汽车名   汽车级别   生产厂家   类型   出厂时间   价格\\n\\n");
	for(ptr=head;ptr;ptr=ptr->next)
		printf("\\t      %d   %s   %s   %s   %s   %s  %.2f\\n\\n",ptr->num,ptr->cname,ptr->carclass,ptr->press,ptr->sort,ptr->time,ptr->price);
	printf("            ==========================================================\\n");


//删除汽车信息
void deletecar(struct car *head)

	int a;
	char b,ch='1';
	struct car *p1,*p2;
	FILE *fp;
	printf("请输入要删除的汽车编号:");
	scanf("%d",&a);
    p1=head;
    if(p1->num==a&&p1->next==NULL)          //对于文件中只有一组数据
		printf("是否清空文件!(y/n)\\n");
		getchar();
		scanf("%c",&b);
		getchar();
		switch(b)
		case 'n':
			break;
		case 'y':
			
            if((fp=fopen("f1.txt","w"))==NULL)
				printf("File open error!\\n");
				exit(0);
			
            fclose(fp);
			printf("文件已清空!\\n");
		
	
	else
        while(p1->num!=a&&p1->next!=NULL)
			p2=p1;
			p1=p1->next;
		
		
        if(p1->next==NULL)
			if(p1->num==a)
				p2->next=NULL;
                printf("是否确定从文件中彻底删除该汽车?(y/n)\\n");
				getchar();
                scanf("%c",&b);
				
                switch(b)
				case 'n':
					break;
				case 'y':
					fprint(head);
					printf("删除成功!\\n");
					getchar();
					break;
				
			
			
			else
				printf("没有找到要删除的数据!\\n");
				getchar();
			
		
        else if(p1==head)
			head=p1->next;
            printf("是否确定从文件中彻底删除该汽车?(y/n)\\n");
			getchar();
            scanf("%c",&b);
			
			switch(b)
			case 'n':
  	             break;
			case 'y':
				fprint(head);
				printf("删除成功!\\n");
				getchar();
				break;
			
			
		
		else
			p2->next=p1->next;
            printf("是否确定从文件中彻底删除该汽车?(y/n)\\n");
			getchar();
            scanf("%c",&b);
			
			switch(b)
			case 'n':
  	             break;
			case 'y':
				fprint(head);
				printf("删除成功!\\n");
				getchar();
				break;
			
		
	
	


//汽车查询
void Search(struct car *head)

	int a;
	printf("               ==========================================================\\n");
	printf("                     ** 1-按汽车编号查询        2-按汽车名查询 **\\n");
	printf("                     ** 3-按汽车类型查询        4-按汽车级别查询 **\\n");
	printf("                     ** 5-按出厂时间查询        0-退出查询     **\\n");
	printf("               ==========================================================\\n");
	printf("请输入所选择的编号:");
	scanf("%d",&a);
	getchar();
	switch(a)
	case 0:
		break;
	case 1:
		Num_Search(head);
		break;
	case 2:
		Cname_Search(head);
		break;
	case 3:
		Class_Search(head);
		break;
	case 4:
		Carclass_Search(head);
		break;
	case 5:
		Time_Search(head);
		break;
	default:
		printf("您的输入有误!\\n");
		break;
	


//按编号查询汽车信息
void Num_Search(struct car *head)

	int a;
	struct car *p;
	printf("请选择您要查询的汽车编号:");
	scanf("%d",&a);
	getchar();
	p=head;
    while(p!=NULL)
		if(p->num==a)
			break;
		p=p->next;
	
	
	if(p==NULL)
		printf("没有找到该编号的汽车!\\n");
	
	else
		printf("                        你所查询的汽车信息如下\\n");
		printf(" =========================================================================\\n");
		printf(" **   编号    汽车名    汽车级别    生产厂家    类型    出厂时间     价格   **\\n");
		printf("**%d  %s  %s  %s  %s  %s  %.2f\\n\\n",p->num,p->cname,p->carclass,p->press,p->sort,p->time,p->price);
		printf(" =========================================================================\\n");
	


//按汽车名查询汽车信息
void Cname_Search(struct car *head)

	char a[50];
	int flag=0;
	struct car *p;
	printf("请选择您要查询的汽车名:");
	gets(a);
	p=head;
	while(p!=NULL)
		if(strcmp(p->cname,a)==0)
			flag=1;
			break;
		
		p=p->next;
	
    if(flag==0)
		printf("没有找到该汽车名的汽车!\\n");
		
	
	else
		printf("                        你所查询的汽车信息如下\\n");
		printf(" =========================================================================\\n");
		printf(" **   编号    汽车名    汽车级别    生产厂家    类型    出厂时间     价格   **\\n");
		while(p!=NULL)
			if(strcmp(p->cname,a)==0)
				printf("**%d  %s  %s  %s  %s  %s  %.2f\\n\\n",p->num,p->cname,p->carclass,p->press,p->sort,p->time,p->price);
			
			p=p->next;
		
		printf(" =========================================================================\\n");
	
	


//按汽车级别查询汽车信息
void Carclass_Search(struct car *head)

	char a[50];
	int flag=0;
	struct car *p;
	printf("请选择您要查询的汽车汽车级别:");
	gets(a);
	p=head;
    while(p!=NULL)
		if(strcmp(p->carclass,a)==0)
			flag=1;
			break;
		
		p=p->next;
	
    if(flag==0)
		printf("没有找到该汽车名的汽车!\\n");
		
	
	else
		printf("                        你所查询的汽车信息如下\\n");
		printf(" =========================================================================\\n");
		printf(" **   编号    汽车名    汽车级别    生产厂家    类型    出厂时间     价格   **\\n");
		while(p!=NULL)
			if(strcmp(p->carclass,a)==0)
				printf("**%d  %s  %s  %s  %s  %s  %.2f\\n\\n",p->num,p->cname,p->carclass,p->press,p->sort,p->time,p->price);
				flag=1;
			
			p=p->next;
		
		printf(" =========================================================================\\n");
	
	


//按汽车类型查询汽车信息
void Class_Search(struct car *head)

	char a[50];
	int flag=0;
	struct car *p;
	printf("请选择您要查询的汽车类型:");
	gets(a);
	p=head;
    while(p!=NULL)
		if(strcmp(p->sort,a)==0)
			flag=1;
			break;
		
		p=p->next;
	
    if(flag==0)
		printf("没有找到该汽车名的汽车!\\n");
		
	
	else
		printf("                        你所查询的汽车信息如下\\n");
		printf(" =========================================================================\\n");
		printf(" **   编号    汽车名    汽车级别    生产厂家    类型    出厂时间     价格   **\\n");
		while(p!=NULL)
			if(strcmp(p->sort,a)==0)
				printf("** %d  %s  %s  %s  %s  %s  %.2f\\n\\n",p->num,p->cname,p->carclass,p->press,p->sort,p->time,p->price);
				flag=1;
			
			p=p->next;
		
		printf(" =========================================================================\\n");
	


//按汽车出厂时间查询汽车信息
void Time_Search(struct car *head)

	int flag=0;
	char a[20];
	struct car *p;
	printf("请选择您要查询的汽车出厂时间:");
	scanf("%s",a);
    getchar();
	p=head;
    while(p!=NULL)
		if(strcmp(p->time,a)==0)
			flag=1;
			break;
		
		p=p->next;
	
    if(flag==0)
		printf("没有找到该汽车名的汽车!\\n");
		
	
	else
		printf("                        你所查询的汽车信息如下\\n");
		printf(" =========================================================================\\n");
		printf(" **   编号    汽车名    汽车级别    生产厂家    类型    出厂时间     价格   **\\n");
		while(p!=NULL)
			if(strcmp(p->time,a)==0)
				printf("**%d  %s  %s  %s  %s  %s  %.2f\\n\\n",p->num,p->cname,p->carclass,p->press,p->sort,p->time,p->price);
				flag=1;
			
			p=p->next;
		
		printf(" =========================================================================\\n");
	


//修改汽车信息
void Revise(struct car *head)

	int a,b;
	char c;
	struct car *p;
	printf("请输入要修改的汽车编号:");
	scanf("%d",&a);
	p=head;
	while(p!=NULL)
		if(p->num==a)
			break;
		p=p->next;
	
	if(p==NULL)
		printf("没有找到该编号的汽车!\\n");
		getchar();
	
	else
		printf("              ============================================================\\n");
		printf("              **  1-编号               2-汽车名              3-汽车级别   **\\n");
		printf("              **  4-生产厂家             5-类型                6-出厂时间 **\\n");
		printf("              **  7-价格               8-修改全部            0-放弃修改 **\\n");
		printf("              ============================================================\\n");
		printf("请选择你要修改的信息编号:");
		scanf("%d",&b);
		getchar();
		switch(b)
		case 1:
			printf("请输入新编号:");
			scanf("%d",&p->num);
			printf("修改成功!\\n");
			getchar();
			break;
		case 2:
			printf("请输入新汽车名:");
			gets(p->cname);
			printf("修改成功!\\n");
			break;
		case 3:
			printf("请输入新汽车级别:");
			gets(p->carclass);
			printf("修改成功!\\n");
			break;
		case 4:
			printf("请输入新生产厂家:");
			gets(p->press);
			printf("修改成功!\\n");
			break;
		case 5:
			printf("请输入新类型:");
			gets(p->sort);
			printf("修改成功!\\n");
			break;
		case 6:
			printf("请输入新出厂时间:");
			scanf("%s",p->time);
			printf("修改成功!\\n");
			getchar();
			break;
		case 7:
			printf("请输入新价格:");
			scanf("%f",&p->price);
			printf("修改成功!\\n");
			getchar();
			break;
		case 8:
			printf("请输入新汽车编号:");
			scanf("%d",&p->num);
            printf("请输入新汽车名:");
            scanf("%s",p->cname);
			getchar();
            printf("请输入新汽车级别:");
            scanf("%s",p->carclass);
			getchar();
            printf("请输入新生产厂家:");
            scanf("%s",p->press);
			getchar();
			printf("请输入新类型:");
            scanf("%s",p->sort);
			getchar();
            printf("请输入新出厂时间:");
            scanf("%s",p->time);
			getchar();
            printf("请输入新价格:");
            scanf("%f",&p->price);
			getchar();
			printf("修改成功!\\n");
			getchar();
			break;
		case 0:
			break;
		default :
			printf("您的输入有误!\\n");
			break;
		
        printf("是否将修改后的信息保存到文件中?(y/n)\\n");
        scanf("%c",&c);
        getchar();
		switch(c)
		case 'n':
			break;
		case 'y':
			fprint(head);
			printf("保存成功!\\n");
			getchar();
			break;
		
		
	


//汽车排序
void Sort_Car(struct car *head)

	int a;
    printf("           ================================================================\\n");
	printf("                 **  1-按汽车编号排序            2-按汽车价格排序**\\n");
	printf("                 **               0-取消排序操作 **\\n");
	printf("           ================================================================\\n");
	printf("请输入您选择的编号:");
	scanf("%d",&a);
	getchar();
	switch(a)
	case 0:
		break;
	case 1:
		Num_Sort(head);
		break;
	case 2:
		Price_Sort(head);
		break;
	default:
		printf("您的输入有误!\\n");
		break;
	


//按汽车编号排序
void Num_Sort(struct car *head)

	struct car *a[1000],*p,*p1,*temp;
	int i,k,index,n=0;
	char b;
	p1=head;
	for(p=head;p;p=p->next)
		n++;
	for(i=0;i<n;i++)
		a[i]=p1;
		p1=p1->next;
	
	for(k=0;k<n-1;k++)
    
		index=k;
		for(i=k+1;i<n;i++)
		
			if(a[i]->num<a[index]->num)
				index=i;
		
        temp=a[index];
		a[index]=a[k];
		a[k]=temp;
	
    printf("排序成功!\\n");
	printf("是否显示排序结果?(y/n)\\n");
	scanf("%c",&b);
    getchar();
	switch(b)
	case 'n':
		break;
	case 'y':
		printf("        ================================================================\\n");
		printf("        ** 编号   汽车名   汽车级别   生产厂家   类型   出厂时间    价格  **\\n");
		for(i=0;i<n;i++)
			printf("**%d  %s  %s  %s  %s  %s  %.2f\\n\\n",a[i]->num,a[i]->cname,a[i]->carclass,a[i]->press,a[i]->sort,a[i]->time,a[i]->price);
		
		printf("        ================================================================\\n");
		break;
	default:
		printf("您的输入有误!\\n");
		break;
	


//按汽车价格排序
void Price_Sort(struct car *head)

	struct car *a[1000],*p,*p1,*temp;
	int i,k,index,n=0;
	char b;
	p1=head;
	for(p=head;p;p=p->next)
		n++;
	for(i=0;i<n;i++)
		a[i]=p1;
		p1=p1->next;
	
	for(k=0;k<n-1;k++)
		index=k;
		for(i=k+1;i<n;i++)
			if(a[i]->price<a[index]->price)
				index=i;
		
        temp=a[index];
		a[index]=a[k];
		a[k]=temp;
	
    printf("排序成功!\\n");
	printf("是否显示排序结果?(y/n)\\n");
	scanf("%s",&b);
    getchar();
	switch(b)
	case 'n':
		break;
	case 'y':
		printf("        ===============================================================\\n");
		printf("        ** 编号   汽车名   汽车级别   生产厂家   类型   出厂时间    价格 **\\n");
		for(i=0;i<n;i++)
			printf("**%d  %s  %s  %s  %s  %s  %.2f\\n\\n",a[i]->num,a[i]->cname,a[i]->carclass,a[i]->press,a[i]->sort,a[i]->time,a[i]->price);
		
		printf("        ===============================================================\\n");
		break;
	default:
		printf("您的输入有误!\\n");
		break;
	

void welcome()

	char s[10]="color 0",str[10]="123456789";
	int i=1,j;
	int n = 8;
	srand((unsigned int) time(NULL));
	system("mode con cols=140 lines=45");
		printf("                     ◆◆            ◆◆                                                               **                         \\n");
		printf("                      ◆◆          ◆◆                                                               ****                        \\n");
		printf("                       ◆◆        ◆◆                                                               ******                       \\n");
		printf("                        ◆◆      ◆◆                                                               ********                      \\n");
		printf("                         ◆◆    ◆◆                                                               **********                     \\n");
		printf("         ◆◆             ◆◆  ◆◆             ◆◆                                              ************                    \\n");
		printf("         ◆◆              ◆◆◆◆              ◆◆                                               **********                     \\n");
		printf("          ◆◆              ◆◆◆              ◆◆                                                 ********                      \\n");
		printf("           ◆◆             ◆◆◆             ◆◆                                                   ******                       \\n");
		printf("            ◆◆            ◆◆◆            ◆◆                                                     ****                        \\n");
		printf("             ◆◆          ◆◆◆◆          ◆◆                                                       **                         \\n");
		printf("              ◆◆        ◆◆  ◆◆        ◆◆                                          **************  **************          \\n");
		printf("               ◆◆      ◆◆    ◆◆      ◆◆                                          **************    **************         \\n");
		printf("                ◆◆    ◆◆      ◆◆    ◆◆                                          **************      **************        \\n");
		printf("                 ◆◆  ◆◆        ◆◆  ◆◆                                          **************        **************       \\n");
		printf("                  ◆◆◆◆          ◆◆◆◆                                          **************          **************      \\n");
		printf("                   ◆◆◆            ◆◆◆                                          **************            **************     \\n");

	while(n--)
	
		Sleep(500);	
		int num=rand()%9+1;
		s[7]=str[num];
		s[8] = '\\0';
		system(s);
	
	n=8;
	printf("\\n\\n\\n\\n");
printf("\\t\\t\\t@@@@@@@@@@@@@@                  @             @               @@           @@            @@\\n");
printf("\\t\\t\\t@@           @@                @@@           @@@              @@           @@            @@\\n");
printf("\\t\\t\\t@@            @@              @@@@@         @@@@@             @@           @@            @@\\n");
printf("\\t\\t\\t@@             @@            @@   @@       @@   @@            @@           @@            @@\\n");
printf("\\t\\t\\t@@              @@          @@     @@     @@     @@           @@           @@            @@\\n");
printf("\\t\\t\\t@@             @@          @@       @@   @@       @@          @@           @@            @@\\n");
printf("\\t\\t\\t@@            @@          @@         @@ @@         @@         @@           @@            @@\\n");
printf("\\t\\t\\t@@           @@          @@           @@            @@        @@           @@            @@\\n");
printf("\\t\\t\\t@@@@@@@@@@@@@            @@           @@            @@        @@           @@            @@\\n");
printf("\\t\\t\\t@@           @@          @@           @@            @@        @@           @@            @@\\n");
printf("\\t\\t\\t@@            @@         @@           @@            @@         @@         @@ @@         @@\\n");
printf("\\t\\t\\t@@             @@        @@           @@            @@          @@       @@   @@       @@\\n");
printf("\\t\\t\\t@@              @@       @@           @@            @@           @@     @@     @@     @@\\n");
printf("\\t\\t\\t@@             @@        @@           @@            @@            @@   @@       @@   @@\\n");
printf("\\t\\t\\t@@            @@         @@           @@            @@             @@@@@         @@@@@\\n");
printf("\\t\\t\\t@@          @@           @@           @@            @@              @@@           @@@\\n");
printf("\\t\\t\\t@@@@@@@@@@@@@            @@           @@            @@               @             @\\n");
	while(n--)
	
		Sleep(500);	
		int num=rand()%9;
		s[7]=str[num];
		s[8] = '\\0';
		system(s);
	
	while(1)
		system("cls");
		printf("                     ◆◆            ◆◆                                                               **                         \\n");
		printf("                      ◆◆          ◆◆                                                               ****                        \\n");
		printf("                       ◆◆        ◆◆                                                               ******                       \\n");
		printf("                        ◆◆      ◆◆                                                               ********                      \\n");
		printf("                         ◆◆    ◆◆                                                               **********                     \\n");
		printf("         ◆◆             ◆◆  ◆◆             ◆◆                                              ************                    \\n");
		printf("         ◆◆              ◆◆◆◆              ◆◆                                               **********                     \\n");
		printf("          ◆◆              ◆◆◆              ◆◆                                                 ********                      \\n");
		printf("           ◆◆             ◆◆◆             ◆◆                                                   ******                       \\n");
		printf("            ◆◆            ◆◆◆            ◆◆                                                     ****                        \\n");
		printf("             ◆◆          ◆◆◆◆          ◆◆                                                       **                         \\n");
		printf("              ◆◆        ◆◆  ◆◆        ◆◆                                          **************  **************          \\n");
		printf("               ◆◆      ◆◆    ◆◆      ◆◆                                          **************    **************         \\n");
		printf("                ◆◆    ◆◆      ◆◆    ◆◆                                          **************      **************        \\n");
		printf("                 ◆◆  ◆◆        ◆◆  ◆◆                                          **************        **************       \\n");
		printf("                  ◆◆◆◆          ◆◆◆◆                                          **************          **************      \\n");
		printf("                   ◆◆◆            ◆◆◆                                          **************            **************     \\n");
	
printf("\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n");
	    D
		printf("         ●●●●●\\n");
		D
		printf("        ●   ●   ●\\n");
		D
		printf("       ●    ●    ●\\n");
		D
		printf("   ●●●●●●●●●●●●\\n");
		D
		printf("  ●                      ●\\n");
		D
		printf("  ●   ●●        ●●    ●\\n");
		D
		printf("  ●●●○●●●●●○●●●●\\n");
		D
		printf("       ●●        ●●\\n");	
	
		Sleep(20);
            i++;
			if(i%10==0)
			
				int num=rand()%9;
			s[7]=str[num];
		    s[8] = '\\0';
			system(s);
				
		if(i==55)
			break;
			
	
	system("color 06");
	printf("                    made by_痕迹天涯119\\n");
	Sleep(6000);
	system("mode con cols=80 lines=25");

void quit()

	char s[10]="color 0",str;
	int n = 20;
	srand((unsigned int) time(NULL));
	printf("\\n\\n\\n\\n\\n");
		printf("	 ×  × × × × × × × × × × × × × × × × × ×  ×\\n");
		printf("	 ×                            *                            ×\\n");
		printf("	 ×                       *         *                       ×\\n");
		printf("	 ×                  *                    *                 ×\\n");
		printf("	 ×              *                              *           ×\\n");
		printf("	 ×          *                                      *       ×\\n");
		printf("	 ×     *              thanks  for your  use            *   ×\\n");
		printf("         ×           *                                   *         ×\\n");
		printf("	 ×                  *   *             *    *               ×\\n");
		printf("	 ×                      *             *                    ×\\n");
		printf("	 ×                      *      *      *                    ×\\n");
		printf("	 ×  × × × × × × × × × × × × × × × × × ×  ×\\n");
	while(n--)
	
		Sleep(100);	
		int num=rand()%9+1;
		str=num+'0';
		s[7]=str;
		s[8] = '\\0';
		system(s);
	

如果界面显示不正常,可通过命令行属性编辑窗口大小。

测试图:






以上是关于汽车信息管理系统的主要内容,如果未能解决你的问题,请参考以下文章

汽车APP开发时应该加上的功能

JavaWeb(SpringBoot)汽车信息管理系统(数据库+源码+论文《精品毕设》)实现客户端汽车信息查看发布汽车信息评论收藏后台对用户管理汽车类型管理汽车管公告信息评论信息的

工业元宇宙: 工厂装配线 3D 可视化看板,让管理者快速定位生产瓶颈!

Java毕业设计+现成产品 —>基于java(springboot)汽车信息管理系统(数据库+源码+论文《精品毕设》)实现客户端汽车信息查看发布汽车信息评论收藏后台对用户管理汽车类型管理汽

高精度定位系统在汽车4S店的应用

你知道“汽车Vin码识别”技术可以识别事故车吗?