您好,登錄后才能下訂單哦!
本篇內容主要講解“如何用C語言實現簡單的停車場管理系統”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“如何用C語言實現簡單的停車場管理系統”吧!
1)有一個兩層的停車場,每層有6個車位,當第一層車位停滿后才允 許使用第二層(停車場可用一個二維數組實現),每輛車的信息包括車牌號,層號,車位號,停車時間共四項,其中停車時間按分鐘計算;
2)假設停車場初始狀態為第一層空、第二層已經有四輛車,其車位號依次為第二層的1-4號,停車時間依次為20,15,10,5;
3)停車操作:當一輛車進入停車場時,先輸入其車牌號,再為它分配一個層號和一個車位號(分配前先查詢車位的使用情況,如果第一層有空位則必須停在第一層),停車時間設為5,并將在此之前的停車時間加5。(此題簡化時間的處理:當有一輛車進入時才對別的車加時間5分鐘);
4)收費管理(取車):當有車開走時,輸入其車牌號,先按其停車時間計算費用,每5分鐘0.2元,同時將該車對應的車位設置為可使用狀態。
5)輸出停車場中全部車輛的信息;
6)退出系統;
涉及的知識
結構體的運用,用數組當函數參數等。
#include "stdio.h" #include<string.h> struct car { char car_num[10]; int floor; int position_num; int time; }CAR[12] = { {"0",1,1,0},{"0",1,2,0},{"0",1,3,0},{"0",1,4,0},{"0",1,5,0},{"0",1,6,0} ,{"冀F12345",2,1,20},{"冀F17845",2,2,15},{"冀F12856",2,3,10},{"冀F12445",2,4,5},{ "0",2,5,0 }, {"0",2,6,0} }; void park(struct car CAR[]) { int i, j,k; int flag = 0; char carn[10]; printf("\n請輸入車牌號\n"); scanf("%s", carn); for (k = 0; k < 12; k++) { if (strcmp(CAR[k].car_num, carn) == 0) { printf("該車已在停車場內\n"); flag = 2; break; } } for (i = 0; i < 12; i++) { if (strcmp(CAR[i].car_num,"0") == 0&&flag==0) { strcpy(CAR[i].car_num, carn); for (j = 0; j < 12; j++) { if (strcmp(CAR[j].car_num, "0") != 0) { CAR[j].time += 5; } } printf("該車可停在了%d層%d號\n", CAR[i].floor, CAR[i].position_num); flag = 1; break; } } if (flag == 0) { printf("\n停車場已滿\n"); } } void leave(struct car CAR[]) { int i, j; int flag = 0; char carn[10]; float price; scanf("%s",carn); for (i = 0; i < 12; i++) { if (strcmp(CAR[i].car_num,carn)==0) { strcpy(CAR[i].car_num,"0"); price = CAR[i].time*0.04; CAR[i].time = 0; flag = 1; printf("\n停車費%f\n", price); } } if (flag == 0) { printf("\n停車場內無此車\n"); } } void information(struct car CAR[]) { printf("車牌號 \t層號\t位號\t時間\n"); for (int i = 0; i < 12; i++) { printf("%-10s\t%d\t%d\t%d\n", CAR[i].car_num, CAR[i].floor, CAR[i].position_num, CAR[i].time); } } int main() { int n; int m = -1; while (m != 0) { printf("\n*************************\n"); printf("1.停車\n"); printf("2.離開\n"); printf("3.輸出停車場信息\n"); printf("0.退出\n"); printf("*************************\n"); printf("請輸入功能號0-3:"); scanf("%d", &m); while (m < 0 || m>3) { printf("\n輸入錯誤!請輸入正確的功能號0-3:"); scanf("%d", &m); } if (m == 1) park(CAR); else if (m == 2) leave(CAR); else if (m == 3) information(CAR); } return 0; }
到此,相信大家對“如何用C語言實現簡單的停車場管理系統”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續學習!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。