我有作業。我試圖解決它,但我需要一些幫助..隊列在C++ ..家庭作業
- 使用隊列ADT並且不要更改任何ADT的功能或過程。您必須創建一個代表將在車站等候隊列中以清洗車身的汽車的結構車。每輛車都有自己的ID,看起來像
124ate
[6個字符],並且名稱像例如。Superpan
和生產年份作爲整數變量。在你的程序中,你不應該明確地調用Queue ADT,而應該使用全局函數來調用它們(隱式地)。 - 您的主程序只應該聲明和調用全局函數, 不應該使用任何結構。
- 你的輸出應該首先如下所示:
- 公園新車
- 打印
- 移動最早來車
- 打印所有汽車的汽車數量
- 出口
我的回答:
#include <iostream>
#include "queue.h"
#include <string>
using namespace std ;
struct car {
char ID[6];
int year;
string name;
}
int main()
{
int num;
car car1;
Queue <car> q1;
do {
cout << "mniu \n"
<< "1. Park new car \n"
<< "2. Print the number of cars \n"
<< "3. move earliest coming car \n"
<< "4. Print All cars \n"
<< "5. exit \n";
cin >> num;
switch (num)
{
case 1:
int n;
cout << "enter id:\n";
cin >> car1.ID;
cout << "enter name:\n";
cin >> car1.name;
cout << "enter year:\n";
cin >> car1.year;
q1.enqueue (car1);
break;
case 2:
cout << "number of cars: " << q1.queueCount();
break;
case 3:
q1.dequeue(car1);
break;
case 4:
while (q1.queueCount()!=0)
cout << q1.front();
case 5:
cout << "Thank you /n End program";
break;
default:
cout << "failed number. chose from 1 to 5 \n";
}
}
while (num==5);
return 0;
}
我的問題:
- 我如何可以打印節點的隊列節點而不刪除它?
- 「你的主程序只應該聲明和調用全局函數, 不應該使用任何結構。」這是否意味着我的代碼是錯誤的,因爲我寫的所有內容都是主要的..我不明白。
什麼意思使得「不應該使用結構」的要求?你將如何模擬一輛汽車?類也是默認情況下具有公共訪問權的結構。 – harper 2011-03-24 15:18:14
+1用於發佈您的代碼並且不要求人們編寫您的程序。 – 2011-03-24 16:48:32