C语言题目:输入多行数据,把每行的字符按从小到大的顺序排列输出多行!

最好附上多行输出入的方法,尽量简单些!

二维数组的每一行进行冒泡排序就行,代码如下:

#include<stdio.h>
#include<string.h>
#define MAX 100
void main()
{
    int i,j,k,n,len;
    char t;
    char s[MAX][MAX];
    printf("请输入行数:");
    scanf("%d",&n);
    printf("请输入数据:\n");
    for(i=0;i<n;i++)
    {
        scanf("%s",s[i]);
    }
    for(i=0;i<n;i++)
    {
        len = strlen(s[i]);     //得到第i行字符串的长度
        for(j=1;j<len;j++)       //对第i行进行冒泡排序
            for(k=len-1;k>=j;k--)
                if(s[i][k-1]>s[i][k])
                {
                    t = s[i][k-1];
                    s[i][k-1] = s[i][k];
                    s[i][k] = t;
                }
    }
    printf("排序后:\n");
    for(i=0;i<n;i++)
    {
        printf("%s\n",s[i]);
    }
}

望采纳~

温馨提示:答案为网友推荐,仅供参考
第1个回答  2013-05-05
这是啥题目,数据?任何信息都是数据阿追问

假如输入
qwe
asd
zxc
输出 e w q
a d s
c x z

追答

那就应该描述为:
输入多行字符串,然后将每个字符串按照从大到小排序后,逐个输出各字符串

追问

代码,我需要代码,我不知道怎么弄?如果有多重输出一维数组对比最好!

相似回答