C語言實(shí)現(xiàn)車輛信息管理系統(tǒng)
本文實(shí)例為大家分享了C語言實(shí)現(xiàn)車輛信息管理系統(tǒng)的具體代碼,供大家參考,具體內(nèi)容如下
車輛信息管理系統(tǒng)
問題描述:建立車輛信息管理系統(tǒng),實(shí)現(xiàn)車輛信息的添加和維護(hù)管理。
系統(tǒng)存儲(chǔ)數(shù)據(jù)要求:每臺(tái)車輛至少需要包含以下屬性,系統(tǒng)中保存多臺(tái)車輛的信息:
- 車輛型號(hào)(如思域、卡羅拉、天籟等)
- 廠商(如廣汽本田、一汽大眾、東風(fēng)日產(chǎn)等)
- 車型級(jí)別(如緊湊型車、中型車、SUV等)
- 座位數(shù)(如5座、7座等)
- 排量(如1.2T、1.4T、1.5T、1.6T等)
- 變速箱(如手動(dòng)、手自一體、無級(jí)變速等)
- 車身顏色(白色、黑色等)
- 車輛價(jià)格(單位為萬)
程序基本要求:
1、 要有系統(tǒng)菜單,選擇不同選項(xiàng)執(zhí)行不同功能。每個(gè)功能執(zhí)行結(jié)束后,需返回到系統(tǒng)菜單,繼續(xù)進(jìn)行功能選擇操作。
2、系統(tǒng)需要完成以下基本功能,每個(gè)功能的代碼封裝在單獨(dú)的函數(shù)里:
(1) 系統(tǒng)初始化時(shí),至少要有10條車輛記錄信息。
(2) 錄入車輛信息:錄入某臺(tái)車輛的基本信息,為新記錄自動(dòng)生成一個(gè)記錄號(hào)。輸入數(shù)據(jù)時(shí)要有提示語,錄入結(jié)束后在屏幕上輸出新增的車輛信息。
車輛信息輸出格式如下:
車輛型號(hào) 廠商 車型級(jí)別 座位數(shù) 排量 變速箱 車身顏色 車輛價(jià)格
雅閣 本田 中型車 5座 1.5T 無級(jí)變速 白色 19.98萬
(3) 瀏覽所有車輛信息:統(tǒng)計(jì)共有多少臺(tái)車輛,并在屏幕中顯示所有車輛信息。
(4) 按不同字段查詢車輛信息,包括按照廠商、車型級(jí)別、車輛價(jià)格范圍(輸入最低價(jià)格、最高價(jià)格)
(5) 修改車輛信息:對(duì)車輛的基本信息進(jìn)行修改,要求提供菜單選擇某一項(xiàng)參數(shù)信息進(jìn)行修改,而不是重新覆蓋錄入整條信息。
(6) 刪除車輛信息:將滿足條件的車輛信息刪除,包括按型號(hào)、廠商刪除。要求刪除前,先按照型號(hào)或者廠商查找需要?jiǎng)h除的車輛信息,如果找不到則給出對(duì)應(yīng)的提示信息。
擴(kuò)展要求:
(1) 實(shí)現(xiàn)排序功能。例如按車輛價(jià)格、座位數(shù)、排量等對(duì)車輛信息進(jìn)行排序。
(2) 所有車輛信息存儲(chǔ)在文件中。
(3) 每次打開程序,把文件中的信息導(dǎo)入到程序中。
(4) 可自己定義其他功能需求,并編碼實(shí)現(xiàn)。
#include<stdio.h> #include<stdlib.h> #include<string.h> #include <conio.h> ? ? typedef struct car Car,*cheliang; ? ? struct car ?? ?{ ?? ?char brand[20];//型號(hào) ?? ?char manufacturar[15];//產(chǎn)商 ?? ?char degree[15];//等級(jí) ?? ?int seats;//座位數(shù) ?? ?float displacement;//排量 ?? ?char biansuxiang[20];//變速箱? ?? ?char color[20];//顏色 ?? ?char price[30];//價(jià)格 ?? ?cheliang next; ?? ?}; cheliang head,tail; /*********************************************************************** ?* 說明: ?從data.dat中讀取車輛信息保存為單鏈表 ?***********************************************************************/ void read_cars();? /*********************************************************************** ?* 說明: ?把車輛信息寫入data.dat中 ?***********************************************************************/ void write_cars(); /*********************************************************************** ?* 說明: ?新增車輛信息 ?***********************************************************************/ void add_car();//沒問題 /*********************************************************************** ?* 說明: ?把所有的車輛信息輸出到電腦 ?***********************************************************************/ void display_cars();//沒問題 /*********************************************************************** ?* 說明: ?修改車輛信息 ?***********************************************************************/ void change(); /*********************************************************************** ?* 說明: ?查找車輛信息 ?***********************************************************************/ void find(); /*********************************************************************** ?* 說明: ?按車輛型號(hào)來查找車輛信息 ?***********************************************************************/ void find_brand(); /*********************************************************************** ?* 說明: ?按產(chǎn)商來查找車輛信息 ?***********************************************************************/ void find_manufacturar();//沒問題 /*********************************************************************** ?* 說明: ?按車輛等級(jí)來查找車輛信息 ?***********************************************************************/ void find_degree(); /*********************************************************************** ?* 說明: ?按車輛價(jià)格來查找車輛信息 ?***********************************************************************/ void find_price(); /*********************************************************************** ?* 說明: ?刪除車輛信息 ?***********************************************************************/ void delete_car(); /*********************************************************************** ?* 說明: ?通過車輛型號(hào)來刪除車輛信息 ?***********************************************************************/ void delete_car_brand(); /*********************************************************************** ?* 說明: ?通過產(chǎn)商來刪除車輛信息 ?***********************************************************************/ void delete_car_manufacturar(); int main() { ?? ?read_cars();//讀取文件 ?? ?int i; ?? ?while(1) ?? ?{ ?? ??? ?while(1) ?? ??? ?{ ?? ??? ??? ?printf("請選擇相關(guān)操作:\n1.增加車輛信息\n2.瀏覽車輛信息\n"); ?? ??? ??? ?printf("3.查詢車輛信息\n4.修改車輛信息\n5.刪除車輛信息\n6.保存數(shù)據(jù)并退出管理系統(tǒng)\n"); ?? ? ? ? ? ?printf("請輸入數(shù)字選擇要實(shí)現(xiàn)的功能:\n"); ?? ??? ??? ?scanf("%d",&i); ?? ??? ??? ?if(i>=1&&i<=6) ?? ??? ??? ?{ ?? ??? ??? ??? ?break; ?? ??? ??? ?} ?? ??? ??? ?else ?? ??? ??? ?{ ?? ??? ??? ??? ?printf("數(shù)字錯(cuò)誤,請重新輸入"); ?? ??? ? ? ?} ?? ??? ?} ?? ??? ?switch(i) ?? ??? ?{ ?? ??? ?case 1: add_car();break; ?? ??? ?case 2: display_cars();break; ?? ??? ?case 3: find();break; ?? ??? ?case 4: change();break; ?? ??? ?case 5: delete_car();break; ?? ??? ?case 6: write_cars();//把數(shù)據(jù)信息保存到文件里 ?? ??? ??? ?printf("謝謝使用!\n"); ?? ??? ??? ?exit(0); ?? ??? ?} ?? ?} ?? ?return 0; } void read_cars() { ?? ?FILE *fp; ?? ?if (0 != fopen_s(&fp, "data.dat", "a+b"))//fopen_s方法返回值是0或非0,0代表打開成功,非0代表打開失敗 ?? ?{ ?? ??? ?perror("打開文件失敗,原因是");//perror(s) 用來將上一個(gè)函數(shù)發(fā)生錯(cuò)誤的原因輸出到標(biāo)準(zhǔn)設(shè)備(stderr) ?? ??? ?getch(); ?? ??? ?exit(1); ?? ?} ?? ?cheliang car; ?? ?head = (cheliang)malloc(sizeof(Car)); ?? ?if (NULL == head) ?? ?{ ?? ??? ?printf("內(nèi)存分配失敗!\n"); ?? ??? ?exit(EXIT_FAILURE); ?? ?} ?? ?head->next = NULL; ?? ?tail = head; ?? ?while (1) ?? ?{ ?? ??? ?car = (cheliang)malloc(sizeof(Car)); ?? ??? ?if (fread(car, sizeof(Car), 1, fp) == 0) ?? ??? ?{ ?? ??? ??? ?free(car); ?? ??? ??? ?break; ?? ??? ?} ?? ??? ?car->next = NULL; ?? ??? ?tail->next = car; ?? ??? ?tail = car; ?? ?} ?? ?fclose(fp); } void write_cars() { ?? ?FILE *fp; ?? ?if (0 != fopen_s(&fp, "data.dat", "w+"))//打開文件 ?? ?{ ?? ??? ?perror("打開文件失敗,原因是"); ?? ??? ?_getch(); ?? ??? ?return; ?? ?} ?? ?cheliang car = head->next; ?? ?while (car != NULL) ?? ?{ ?? ??? ?fwrite(car, sizeof(Car), 1, fp); ?? ??? ?car = car->next; ?? ?} ?? ?fclose(fp);//關(guān)閉文件 } void add_car() { ?? ?cheliang p,temp; ?? ?p=(cheliang)malloc(sizeof(Car)); ?? ?if(p==NULL) ?? ?{ ?? ??? ?printf("內(nèi)存分配失敗"); ?? ??? ?exit(1); ?? ?} ?? ?printf("請輸入車輛信息\n型號(hào):"); ?? ?scanf("%s",p->brand); ?? ?printf("商家:"); ?? ?scanf("%s",p->manufacturar); ?? ?printf("等級(jí):"); ?? ?scanf("%s",p->degree); ?? ?printf("座位數(shù):"); ?? ?scanf("%d",&p->seats); ?? ?printf("排量:"); ?? ?scanf("%f",&p->displacement); ?? ?printf("變速箱:"); ?? ?scanf("%s",p->biansuxiang); ?? ?printf("顏色:"); ?? ?scanf("%s",p->color); ?? ?printf("價(jià)格:"); ?? ?scanf("%s",p->price); ? ? if(NULL == head->next) ? ? { ? ? head->next = p; ? ? p->next = NULL; ? ? } ?? ?else ? ? { ? ? temp = head->next;//頭插法 ? ? head->next = p; ? ? p->next = temp; ? ? } ?? ?printf("%-15s|%-15s|%-15s|%5s|%5s|%-15s|%-15s|%-5s\n", ?? ??? ?"車輛型號(hào)", "廠商", "車型級(jí)別", "座位數(shù)", "排量(L)", "變速箱", "車身顏色", "車輛價(jià)格(萬)"); ?? ?printf("%-16s%-16s%-16s%-7d%-8.1f%-16s%-16s%-5s\n",p->brand,p->manufacturar,p->degree,p->seats,p->displacement,p->biansuxiang,p->color,p->price); ?? ? } void display_cars() { ?? ?int a=0; ?? ?cheliang p=head->next; ?? ?if(NULL == head->next) ? ? { ? ? printf("無車輛信息\n"); ? ? return ; ? ? } ?? ?printf("%-15s|%-15s|%-15s|%5s|%5s|%-15s|%-15s|%-5s\n", ?? ??? ?"車輛型號(hào)", "廠商", "車型級(jí)別", "座位數(shù)", "排量(L)", "變速箱", "車身顏色", "車輛價(jià)格(萬)"); ?? ?for(;p!=NULL;p=p->next) ?? ?{ ?? ??? ?a++; ?? ??? ?printf("%-16s%-16s%-16s%-7d%-8.1f%-16s%-16s%-5s\n",p->brand,p->manufacturar,p->degree,p->seats,p->displacement,p->biansuxiang,p->color,p->price); ?? ??? ? ?? ?} ?? ?printf("一共有%d臺(tái)車輛信息",a); } void find() { ?? ?int k; ?? ?while(1) ?? ?{ ?? ??? ?printf("請選擇查找方式:1.按照型號(hào)查找 2.按照產(chǎn)商查找 3.按照等級(jí)查找 4.按照價(jià)格查找"); ?? ? ? ?printf("請選擇:"); ?? ? ? ?scanf("%d",&k); ?? ??? ?if(k>=1&&k<=4){ ?? ??? ??? ?break; ?? ??? ?} ?? ??? ?else{ ?? ??? ??? ?printf("數(shù)字錯(cuò)誤,請重新輸入"); ?? ??? ?} ?? ?} ?? ?switch(k) ?? ?{ ?? ?case 1: find_brand();break; ?? ?case 2: find_manufacturar();break; ?? ?case 3: find_degree();break; ?? ?case 4:find_price();break; ?? ?} } void find_brand() { ?? ?cheliang p; ?? ?p=head->next; ?? ?printf("請輸入要查找的型號(hào):"); ?? ?char brand[20]; ?? ?scanf("%s",brand); ?? ?int j=0; ?? ?printf("您要找的資料是:\n"); ?? ?printf("%-15s|%-15s|%-15s|%5s|%5s|%-15s|%-15s|%-5s\n", ?? ??? ?"車輛型號(hào)", "廠商", "車型級(jí)別", "座位數(shù)", "排量(L)", "變速箱", "車身顏色", "車輛價(jià)格(萬)"); ?? ?while(p!=NULL) ?? ?{ ?? ??? ?if(strcmp(p->brand,brand)==0) ?? ??? ?{ ?? ??? ??? ?printf("%-16s%-16s%-16s%-7d%-8.1f%-16s%-16s%-5s\n",p->brand,p->manufacturar,p->degree,p->seats,p->displacement,p->biansuxiang,p->color,p->price); ?? ??? ??? ?p=p->next; ?? ??? ??? ?j++; ?? ??? ?} ?? ??? ?else ?? ??? ? p=p->next; ?? ?} ?? ??? ?if(j==0) ?? ??? ?{ ?? ??? ??? ?printf("該系統(tǒng)無該產(chǎn)商的車輛信息"); ?? ??? ?} } void find_manufacturar() { ?? ?cheliang p; ?? ?p=head->next; ?? ?printf("請輸入要查找的產(chǎn)商:"); ?? ?char manufacturar[15]; ?? ?int j=0; ?? ?scanf("%s",manufacturar); ?? ? fflush(stdin); ?? ?printf("您要找的資料是:\n"); ?? ?printf("%-15s|%-15s|%-15s|%5s|%5s|%-15s|%-15s|%-5s\n", ?? ??? ?"車輛型號(hào)", "廠商", "車型級(jí)別", "座位數(shù)", "排量(L)", "變速箱", "車身顏色", "車輛價(jià)格(萬)"); ?? ?while(p!=NULL) ?? ?{ ?? ??? ?if(strcmp(p->manufacturar,manufacturar)==0) ?? ??? ?{ ?? ??? ??? ?printf("%-16s%-16s%-16s%-7d%-8.1f%-16s%-16s%-5s\n",p->brand,p->manufacturar,p->degree,p->seats,p->displacement,p->biansuxiang,p->color,p->price); ?? ??? ??? ?p=p->next; ?? ??? ??? ?j++; ?? ??? ?} ?? ??? ?else ?? ??? ? p=p->next; ?? ?} ?? ??? ?if(j==0) ?? ??? ?{ ?? ??? ??? ?printf("該系統(tǒng)無該產(chǎn)商的車輛信息"); ?? ??? ?} } void find_degree() { ?? ?cheliang p; ?? ?p=head->next; ?? ?printf("請輸入找要尋找的等級(jí):"); ?? ?char degree[15]; ?? ?int j=0; ?? ?scanf("%s",degree); ?? ?printf("您要找的資料是:\n"); ?? ? fflush(stdin); ?? ?printf("%-15s|%-15s|%-15s|%5s|%5s|%-15s|%-15s|%-5s\n", ?? ??? ?"車輛型號(hào)", "廠商", "車型級(jí)別", "座位數(shù)", "排量(L)", "變速箱", "車身顏色", "車輛價(jià)格(萬)"); ?? ?while(p!=NULL) ?? ?{ ?? ??? ?if(strcmp(p->degree,degree)==0) ?? ??? ?{ ?? ??? ??? ?printf("%-16s%-16s%-16s%-7d%-8.1f%-16s%-16s%-5s\n",p->brand,p->manufacturar,p->degree,p->seats,p->displacement,p->biansuxiang,p->color,p->price); ?? ??? ??? ?p=p->next; ?? ??? ??? ?j++; ?? ??? ?} ?? ??? ?else ?? ??? ??? ?p=p->next; ?? ?} ?? ??? ?if(j==0) ?? ??? ?{ ?? ??? ??? ?printf("該系統(tǒng)無該等級(jí)的車輛信息"); ?? ??? ?} } void find_price() { ?? ?cheliang p; ?? ?p=head->next; ?? ?//char price_max[30],price_min[30]; ?? ?int price_max,price_min; ?? ?int j=0; ?? ?printf("請輸入價(jià)格的最大值:"); ?? ?scanf("%d",&price_max); ?? ? fflush(stdin); ?? ?printf("請輸入價(jià)格的最小值:"); ?? ?scanf("%d",&price_min); ?? ? fflush(stdin); ?? ?printf("您要找的資料是:\n"); ?? ?printf("%-15s|%-15s|%-15s|%5s|%5s|%-15s|%-15s|%-5s\n", ?? ??? ?"車輛型號(hào)", "廠商", "車型級(jí)別", "座位數(shù)", "排量(L)", "變速箱", "車身顏色", "車輛價(jià)格(萬)"); ?? ?while(p!=NULL) ?? ?{ ?? ??? ?if(atoi(p->price)>price_min && atoi(p->price)<price_max) ?? ??? ?{ ?? ??? ??? ?printf("%-16s%-16s%-16s%-7d%-8.1f%-16s%-16s%-5s\n",p->brand,p->manufacturar,p->degree,p->seats,p->displacement,p->biansuxiang,p->color,p->price); ?? ??? ??? ?j++; ?? ??? ?} ?? ??? ??? ?p=p->next; ?? ?} ?? ?if(j==0) ?? ?{ ?? ??? ?printf("該系統(tǒng)無該價(jià)格范圍的車輛信息"); ?? ?} } void change() { ?? ?cheliang q; ?? ?int i; ?? ?q=head->next; ?? ?int j=0; ?? ?printf("請輸入要修改車輛的型號(hào):\n"); ?? ?char brand[20]; ?? ?scanf("%s",brand); ?? ? fflush(stdin); ?? ?printf("%-15s|%-15s|%-15s|%5s|%5s|%-15s|%-15s|%-5s\n", ?? ??? ?"車輛型號(hào)", "廠商", "車型級(jí)別", "座位數(shù)", "排量(L)", "變速箱", "車身顏色", "車輛價(jià)格(萬)"); ?? ?while(q!=NULL) ?? ?{ ?? ??? ?if(strcmp(q->brand,brand)==0) ?? ??? ?{ ?? ??? ??? ?printf("%-16s%-16s%-16s%-7d%-8.1f%-16s%-16s%-5s\n",q->brand,q->manufacturar,q->degree,q->seats,q->displacement,q->biansuxiang,q->color,q->price); ?? ? ? ? ? ?j++; ?? ??? ??? ?while(1){ ?? ??? ??? ? ? ?printf("1.改變型號(hào) 2.改變產(chǎn)商 3.改變等級(jí) 4.改變座位數(shù) 5.改變排量 6.改變變速箱 7.改變顏色 8.改變價(jià)格"); ?? ??? ??? ??? ?printf("請輸入要修改的車輛信息的類型:"); ?? ??? ??? ? ? ?scanf("%d",&i); ?? ??? ??? ??? ?if(i>=1&&i<=8){ ?? ??? ??? ??? ??? ?break; ?? ??? ??? ??? ?} ?? ??? ??? ??? ?else{ ?? ??? ??? ??? ??? ?printf("請輸入正確的數(shù)字"); ?? ??? ??? ??? ?} ?? ??? ??? ?} ? ? ? ? ? ? ? switch(i) ?? ??? ??? ? ?{ ?? ??? ??? ? ?case 1: ? ? ? ? ? ? ? ? ? ?printf("型號(hào):"); ?? ??? ??? ??? ? ? char str1[20]; ?? ??? ??? ??? ? ? scanf("%s",str1); ?? ??? ??? ??? ? ? strcpy(q->brand,str1);break; ?? ??? ??? ? ?case 2: ?? ??? ??? ??? ? ? printf("產(chǎn)商:"); ?? ??? ??? ??? ? ? char str2[15]; ?? ??? ??? ??? ? ? scanf("%s",str2); ?? ??? ??? ??? ? ? strcpy(q->manufacturar,str2);break; ?? ??? ??? ? ?case 3: ? ? ??? ? ? ? ? ? ? ?printf("等級(jí):"); ?? ??? ??? ??? ??? ?char str3[15]; ?? ??? ??? ??? ??? ?scanf("%s",str3); ?? ??? ??? ??? ? ? strcpy(q->degree,str3);break; ?? ??? ??? ? ?case 4: ?? ? ? ? ? ? ? ? ? ?printf("座位數(shù):"); ?? ??? ??? ??? ??? ?int str4; ?? ??? ??? ??? ??? ?scanf("%d",&str4); ?? ??? ??? ??? ? ? q->seats=str4;break; ?? ??? ??? ? ?case 5: ?? ? ? ? ? ? ? ? ? ?printf("排量:"); ?? ??? ??? ??? ??? ?float str5; ?? ??? ??? ??? ??? ?scanf("%f",&str5); ?? ??? ??? ??? ??? ?q->displacement=str5;break; ?? ??? ??? ? ?case 6: ?? ? ? ? ? ? ? ? ? ?printf("變速箱:"); ?? ??? ??? ??? ??? ?char str6[20]; ?? ??? ??? ??? ??? ?scanf("%s",str6); ?? ??? ??? ??? ? ? strcpy(q->biansuxiang,str6);break; ?? ??? ??? ? ?case 7: ?? ? ? ? ? ? ? ? ? ?printf("顏色:"); ?? ??? ??? ??? ??? ?char str7[20]; ?? ??? ??? ??? ??? ?scanf("%s",str7); ?? ??? ??? ??? ? ? strcpy(q->color,str7);break; ?? ??? ??? ? ?case 8: ?? ? ? ? ? ? ? ? ? ?printf("價(jià)格:"); ?? ??? ??? ??? ??? ?char str8[30]; ?? ??? ??? ??? ??? ?scanf("%s",str8); ?? ??? ??? ??? ? ? strcpy(q->price,str8);break; ?? ??? ??? ? ?} ?? ??? ??? ?printf("修改成功\n"); ?? ??? ??? ?printf("%-16s%-16s%-16s%-7d%-8.1f%-16s%-16s%-5s\n",q->brand,q->manufacturar,q->degree,q->seats,q->displacement,q->biansuxiang,q->color,q->price); ?? ??? ? ? ?q=q->next; ?? ??? ??? ?break; ?? ??? ?} ?? ??? ? ?? ??? ?else ?? ??? ?{ ?? ??? ??? ?q=q->next; ?? ??? ?} ?? ?} ?? ?if(j==0) ?? ?{ ?? ??? ? printf("沒找到你要的型號(hào)"); ?? ?} } void delete_car() { ?? ?int i; ?? ?while(true){ ?? ??? ?printf("按什么的方式尋找車輛:1.型號(hào) 2.產(chǎn)商\n"); ?? ? ? ?scanf("%d",&i); ?? ??? ?if(i>=1&&i<=2){ ?? ??? ? ? break; ?? ??? ?} ?? ??? ?else{ ?? ??? ??? ?printf("數(shù)字錯(cuò)誤,請重新輸入"); ?? ??? ?} ?? ?} ?? ?switch(i) ?? ?{ ?? ?case 1: delete_car_brand();break; ?? ?case 2: delete_car_manufacturar();break; ?? ?} } void delete_car_brand() { ?? ?cheliang p,q; ?? ?int j=0; ?? ?char brand[20]; ?? ?printf("請輸入要?jiǎng)h除的車輛的型號(hào):"); ?? ?scanf("%s",brand); ?? ? fflush(stdin); ?? ?//p=head; ?? ?q=head; ?? ?printf("%-15s|%-15s|%-15s|%5s|%5s|%-15s|%-15s|%-5s\n", ?? ??? ?"車輛型號(hào)", "廠商", "車型級(jí)別", "座位數(shù)", "排量(L)", "變速箱", "車身顏色", "車輛價(jià)格(萬)"); ?? ?while(q->next!=NULL) ?? ?{ ?? ??? ?if(strcmp(q->next->brand,brand)==0) ?? ??? ?{ ?? ??? ??? ?printf("%-16s%-16s%-16s%-7d%-8.1f%-16s%-16s%-5s\n",q->next->brand,q->next->manufacturar,q->next->degree,q->next->seats,q->next->displacement,q->next->biansuxiang,q->next->color,q->next->price); ?? ??? ??? ?j++; ?? ??? ??? ?p=q->next; ? ? ? ? ? ? q->next = q->next->next; ?? ??? ??? ?printf("數(shù)據(jù)刪除成功!\n"); ?? ??? ??? ?free(p); ?? ??? ??? ?break; ?? ??? ?} ?? ??? ?else ?? ??? ? q=q->next; ?? ?} ?? ?if(j==0) ?? ?{ ?? ??? ?printf("該系統(tǒng)無你所要?jiǎng)h除的車輛信息!\n"); ?? ?} } void delete_car_manufacturar() { ?? ?cheliang p,q; ?? ?int j=0; ?? ?char manufacturar[15]; ?? ?printf("請輸入要?jiǎng)h除的車輛的產(chǎn)商:"); ?? ?scanf("%s",manufacturar); ?? ? fflush(stdin); ?? ?q=head; ?? ?printf("%-15s|%-15s|%-15s|%5s|%5s|%-15s|%-15s|%-5s\n", ?? ??? ?"車輛型號(hào)", "廠商", "車型級(jí)別", "座位數(shù)", "排量(L)", "變速箱", "車身顏色", "車輛價(jià)格(萬)"); ?? ?while(q->next!=NULL) ?? ?{ ?? ??? ?if(strcmp(q->next->manufacturar,manufacturar)==0) ?? ??? ?{ ?? ??? ??? ?printf("%-16s%-16s%-16s%-7d%-8.1f%-16s%-16s%-5s\n",q->next->brand,q->next->manufacturar,q->next->degree,q->next->seats,q->next->displacement,q->next->biansuxiang,q->next->color,q->next->price); ?? ??? ??? ?j++; ?? ??? ??? ?p=q->next; ? ? ? ? ? ? q->next = q->next->next; ?? ??? ??? ?printf("數(shù)據(jù)刪除成功!\n"); ?? ??? ??? ?free(p); ?? ??? ??? ?break; ?? ??? ?} ?? ??? ?else ?? ??? ? q=q->next; ?? ?} ?? ?if(j==0) ?? ?{ ?? ??? ?printf("該系統(tǒng)無你所要?jiǎng)h除的車輛信息!\n"); ?? ??? ??? ?exit(0); ?? ?} }
以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
C++基于蔡基姆拉爾森計(jì)算公式實(shí)現(xiàn)由年月日確定周幾的方法示例
這篇文章主要介紹了C++基于蔡基姆拉爾森計(jì)算公式實(shí)現(xiàn)由年月日確定周幾的方法,涉及C++針對(duì)日期時(shí)間的數(shù)值運(yùn)算相關(guān)操作技巧,需要的朋友可以參考下2017-07-07Qt串口通信開發(fā)之QSerialPort模塊詳細(xì)使用方法與實(shí)例
這篇文章主要介紹了Qt串口通信開發(fā)之QSerialPort模塊詳細(xì)使用方法與實(shí)例,需要的朋友可以參考下2020-03-03C語言實(shí)現(xiàn)校運(yùn)動(dòng)會(huì)項(xiàng)目管理系統(tǒng)
這篇文章主要為大家詳細(xì)介紹了C語言實(shí)現(xiàn)校運(yùn)動(dòng)會(huì)項(xiàng)目管理系統(tǒng),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-02-02