字符串排序-阿里云开发者社区

开发者社区> 人工智能> 正文
登录阅读全文

字符串排序

简介: 字符串排序的算法,将字符串从小到大输出 样例输入 2 2 Hello World 4 I Love C Language! 样例输出 Hello World C I Language! Love code: #include #include in...
字符串排序的算法,将字符串从小到大输出

样例输入
2
2
Hello
World
4
I
Love
C
Language!
样例输出
Hello
World

C
I
Language!
Love
code:
#include<stdio.h>
#include<string.h>
int main()
{
    int t,n;
    int k,i,j,m;
    char a[101][201],temp[201];
    freopen("5.in","r",stdin);
    //freopen("result.out","w",stdout);
    scanf("%d",&t);
    for(k=0;k<t;k++)
    {
        scanf("%d",&n);
        getchar();//接收上一行scanf的回车符 
        for(i=0;i<n;i++)
            gets(a[i]);//scanf("%s",a[i]);无法接收含有空格的字符串,所以这个题用scanf会Wrong Answer。 
        //下面是选择排序
        for(i=0;i<n-1;i++)
        {
            m=i;
            for(j=i+1;j<n;j++)
            {
                if(strcmp(a[j],a[m])<0)
                {
                    m=j;
                }
            }
            if(i!=m)//这里交换两行字符串
            {
                strcpy(temp,a[i]);
                strcpy(a[i],a[m]);
                strcpy(a[m],temp);
            }
        }
        //下面输出结果
        for(i=0;i<n;i++)
            printf("%s\n",a[i]);
        if(k!=t-1) printf("\n");/**/
    }
    return 0;
}

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
人工智能
使用钉钉扫一扫加入圈子
+ 订阅

了解行业+人工智能最先进的技术和实践,参与行业+人工智能实践项目

其他文章