我想按照字母順序排列名稱的二維數組,但我無法縫合以使其工作。按字母順序排列2D Char陣列?
我在字母上使用了氣泡排序,這是對名稱的第一個字母進行排序,但是3個名字以相同的字母開始,並且它們仍然沒有順序。
我試圖googleing之類的東西,但每婷說,使用向量或字符串變量..但我僅限於使用二維字符數組..
任何想法?
下面是代碼我此刻的作品近:
using namespace std;
int main(){
char heroes[11][17] = { "Captain America", "Thor", "Wolverine", "Cyclops", "Goliath", "Beast", "Angel", "Colossus", "Hulk", "Quicksilver", "Ironman"};
cout<<"Printing the array as is"<<endl<<endl;
for (int i=0; i<12; i++){
cout<<heroes[i]<<endl;
}
cout<<endl<<"Ordering the heroes in Alphabetical order"<<endl<<endl;
char temp = NULL;
// bubble sort
for(int i=0;i<11;i++){
for(int j=0; j<(11-1); j++){
if (heroes[i][0] < heroes[j][0]){
for (int k=0; k<17-1; k++){
swap(heroes[i][k], heroes[j][k]);
}
}
}
}
cout<<"Printing the array Sorted"<<endl<<endl;
for (int i=0; i<12; i++){
cout<<heroes[i]<<endl;
}
// Pause
cout<<endl<<endl<<endl<<"Please Close Console Window"<<endl;
cin.ignore('\n', 1024);
return(0);
}
好吧我得到它的工作!
這裏是代碼...(我如何這種形式郵編BTW?)
它幾乎是完全相同德一樣,但使用完整的字符串比較和副本。
你被允許使用'strcmp'? – 2012-03-17 12:50:40