你这是输入5个字符串排序的代码,不是输入5个字符排序的代码。
把
strcpy(word[i], temp);
strcpy(word[j], word[i]);
strcpy(temp, word[j]);
改成
strcpy(temp,word[i] );
strcpy(word[i], word[j]);
strcpy(word[j], temp);
把for (i = 1; i < 5; i++)改成for (i = 0; i < 5; i++)。
把printf("%s",word[i][20]);改成 printf("%s ",word[i]);。
//是输入5个字母还是 5个字符串?看你的程序像是五个字符串啊。
//按照5个字母的理解给你写了一个,有问题追问
#include
#include
#include
int main()
{
int i, j;
char word[5];
char temp;
printf("5 words input:");
for (i = 0; i < 5; i++)
{
scanf("%c", &word[i]);
}
for (i = 0; i < 5; i++)
{
for (j = 0; j < 5-i-1;j++)
{
if (word[j]>word[j+1])
{
temp=word[j];
word[j]= word[j+1];
word[j+1]=temp;
}
}
}
printf("outputting after ordering:");
for (i = 0; i < 5; i++){
printf("%c",word[i]);
}
getchar();
getchar();
getchar();
}