C语言字符如何比较排序啊,大神们看看我的代码为什么不对

描述
输入三个字符(可以重复)后,按各字符的ASCII码从小到大的顺序输出这三个字符。
输入
第一行输入一个数N,表示有N组测试数据。后面的N行输入多组数据,每组输入数据都是占一行,有三个字符组成,之间无空格。
输出
对于每组输入数据,输出一行,字符中间用一个空格分开。

#include
#include
int asd(const void a,const void*b)
{
return *(int
)b-*(int*)a;
}
int main()
{
int i,n;
char a[3];
scanf("%d",&n);
while(n--)
{
for(i=0;i<3;++i)
scanf("%c",&a[i]);
qsort(a,3,sizeof(char),asd);
for(i=0;i<3;++i)
printf("%c ",a[i]);
}
return 0;
}
为什么不对啊

1个回答

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
立即提问