私は実際に配列を昇順でソートするコードを書き込もうとしているので、これが私が持っているものであると言うことが起こります。
char myListArray[10][40];
myListArray = "Yeah?",
"Tomorrow",
"Again",
"I will see you";
つまり、ASCII値の順に並べ替える必要があります。
Again
I will see you
Tomorrow
Yeah?
私はこのようなものを作成しました...
char temp[40];
temp[0] = '\0';
int i, j, pos = 10, flag = 1;
for(i = 1; (i <= pos) && flag; i++)
{
flag = 0;
for (j=0; j < (pos -1); j++)
{
if (phrase[i][j+1] > phrase[i][j])
{
strcpy(temp, phrase[i]);
strcpy(phrase[i], phrase[i+1]);
strcpy(phrase[i+1], temp);
flag = 1;
}
}
}
ロジックに問題があるのかわかりませんが、簡単に並べ替える関数があるかどうか知りたいですか?またはbubble sort
最も簡単ですか?
アップデート:
以下の答えの1つを受け入れますが、最も簡単な方法で配列をソートする方法の解決策を見つけました。
while(pos < 9){
if(phrase[pos][i] > phrase[pos+1][i]){
strcpy(temp, phrase[pos]);
strcpy(phrase[pos], phrase[pos+1]);
strcpy(phrase[pos+1], temp);
flag = 1;
if(flag = 1){
pos = 0;
}
}
pos++;
}