使用一個數組,你可以用char *來處理空的數組單元格,比如「EMPTY」。要查找通過數組搜索的項目,並找到「替換」或添加它。
const char * Empty = "EMPTY";
cout << "Please enter a city you want to add:"
cin >> city;
for(int i = 0; i < Arr_Size; i++) //variable to represent size of array
{
if(Arr[i] == Empty) //check for any empty cells you want to add
{
//replace cell
}
else if(i == Arr_Size-1) //if on last loop
cout << "Could not find empty cell, sorry!";
}
作爲去除細胞:
cout << "Please enter the name of the city you would like to remove: ";
cin >> CityRemove;
for(int i = 0; i < Arr_Size; i++)
{
if(Arr[i] == CityRemove)
{
Arr[i] = Empty; //previous constant to represent your "empty" cell
}
else if(i == Arr_Size - 1) //on last loop, tell the user you could not find it.
{
cout << "Could not find the city to remove, sorry!";
}
}
打印陣列而跳過 '空' 細胞 //打印陣列
for(int i = 0; i < Arr_Size; i++)
{
if(Arr[i] != Empty) //if the cell isnt 'empty'
{
cout << Arr[i] << endl;
}
}
但我不使用載體同意將是一個更有效的方法,這只是一個創造性的方法來讓你的思維得到啓發。
你在''''''數組中有一些額外的逗號。另外,如下所述,使用'[]'不會使數組可變長度;它使得它的長度取決於初始化列表的長度,在這種情況下。4.從這一點開始,它與固定長度數組相同。 'std :: vector'就是你真正想要的東西。 –
評論是有意的。我正在學習數組,並只告訴使用數組... – user1756669
我說*逗號*沒有評論。例如。 '「聖路易斯」,''應該''聖路易斯''。 –