由小到大输出字符串,但结果是倒着输出???
我想写一个程序,比如输出 aaa ccc bbb(实际分三行)然后用strcmp比较后按由小到大的顺序输出,也就是aaa bbb ccc(实际分三行),但结果是到这输出,就是 bbb ccc aaa 这是怎么回事///
程序代码:#include<stdio.h>
#include<string.h>
int main()
{
int num;
char a[20][20],b[20];
printf("How many strings do you want to enter\n");
scanf("%d",&num);
printf("please enter %d strings\n",num);
for(int i=0;i<num;i++)
scanf("%s",a[i]);
for(int i=0;i<=num-2;i++)
for(int j=0;j<=num-i-2;j++)
{
if(strcmp(a[j],a[j+1]))
{
strcpy(b,a[j]);strcpy(a[j],a[j+1]);strcpy(a[j+1],b);
}
else
;
}
printf("由小到大:\n");
for(int i=0;i<num;i++)
printf("%s\n",a[i]);
}







