字符串排序(2);多单词多行字符串输入处理;排序方法同字符串排序(1);C语言

字符串排序(2)

https://ac.nowcoder.com/acm/contest/5646/I

#include <stdio.h>
#include <string.h>

int main()
{
    int i,j,n;
    int flag=0;
    while(1){
        char s[100][1000];
        char *p[100];
        char *tmp;
        for(i=0; ;i++){
            if(scanf("%s",s[i])==EOF){
                flag = 1;
                break;
            }
            p[i] = s[i];
            if(getchar()=='\n'){ // 该行输入完毕
                break;
            }
        }
        if(flag){
            break;
        }
        n=i+1; // 单词个数,如:一个单词,则退出时 i=0,n=1
        for(i=0;i<n-1;i++){
            for(j=i+1;j<n;j++){
                if(strcmp(p[i],p[j])>0){
                    tmp = p[i];
                    p[i] = p[j];
                    p[j] = tmp;
                }
            }
        }
        for(i=0;i<n-1;i++){
            printf("%s ",p[i]);
        }
        printf("%s\n",p[i]);
    }

    return 0;
}
全部评论

相关推荐

11-01 20:03
已编辑
门头沟学院 算法工程师
Amazarashi66:这种也是幸存者偏差了,拿不到这个价的才是大多数
点赞 评论 收藏
分享
3 收藏 评论
分享
牛客网
牛客企业服务