名前の2次元配列をアルファベット順にソートしようとしていますが、動作させるためにシームできません。2次元文字配列をアルファベット順にソートする?
私は文字にバブルソートを使用しています。これは名前の最初の文字をソートしていますが、名前のうち3文字は同じ文字で始まり、順不同です。 ..
任意のアイデアを
は私がgoogleingとか試してみましたが、すべてティンは、ベクトルまたは文字列変数を使用することを言います..しかし、私は2Dのchar配列を使用することに限定されていますか?ここで
はほとんど機能し、現時点で私が持っているコードは次のとおりです。
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);
}
[OK]を、私はそれが働いて得ました!ここで
コードは(どのように私はところでこのフォームのコードを投稿できますか?)...である
それはほぼ正確にTEH同じですが、完全な文字列の比較とコピーを使用しています。
あなたは 'strcmp'を使用することを許可されていますか? –