zoukankan      html  css  js  c++  java
  • Openjudge-计算概论(A)-字符串排序

    描述
    参考整数排序方法,设计一种为字符串排序的算法,将字符串从小到大输出
    输入
    第一行为测试数据组数t, 后面跟着t组数据。每组数据第一行是n,表示这组数据有n行字符串,接下来是要排序的n行字符串。每行字符串的字符个数不会大于200, n < 100。
    输出
    对于每组数据,输出排好序的字符串,每组输出后要多输出一个空行
    样例输入
    2
    2
    Hello
    World
    4
    I
    Love
    C
    Language!
    样例输出
    Hello
    World
    
    C
    I
    Language!
    Love
    思路:这题可以把它们全部输入到一个二维数组里面去,再判断数字与字符串,我用的是另一种,逐个判断,排序,输出就得了。
    代码如下:
     1 #include<stdio.h>
     2 #include<string.h> 
     3 void sort(char array[][202],int n)//排序函数
     4 {
     5     char temp[202];
     6     int i,j,k;
     7     for(i=0;i<n-1;i++)
     8     {
     9         k=i;
    10         for(j=i+1;j<n;j++)
    11             if(strcmp(array[k],array[j])>0)
    12             k=j;
    13         if(k!=i)
    14         {
    15             strcpy(temp,array[i]);   //字符串交换顺序(和数组一样一样的,不解释)
    16             strcpy(array[i],array[k]);
    17             strcpy(array[k],temp);
    18         }
    19     }
    20 }
    21 int main()
    22 {
    23     char str[202][202];
    24     int i,j,k=0,n,o;
    25     scanf("%d",&o);    
    26     while(k!=o)
    27     {
    28         scanf("%d",&n);
    29         for(i=0;i<n;i++)
    30         {
    31             scanf("%s",str[i]);//输入N个字符串
    32         }
    33         sort(str,n);//对输入的字符串排序
    34         for(i=0;i<n;i++)//输出 
    35         {
    36             printf("%s
    ",str[i]);
    37         }           
    38         k++;
    39     }    
    40     return 0;
    41 }
     
    我不怕千万人阻挡,只怕自己投降…
  • 相关阅读:
    POI中文API文档
    接口
    JDK中的URLConnection参数详解
    RPC远程过程调用概念及实现
    tkinter 打包成exe可执行文件
    PHP 的命令行模式
    php CLI SAPI 内置Web Server
    ppython的移位操作
    HAProxy基础
    HAProxy用法详解
  • 原文地址:https://www.cnblogs.com/geek-007/p/4296300.html
Copyright © 2011-2022 走看看