• 02-语言入门-02-ASCII码排序


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

    输出
    对于每组输入数据,输出一行,字符中间用一个空格分开。
     
    样例输入
    2
    qwe
    asd
    样例输出
    e q w
    a d s
     
     
    代码:
    #include <stdio.h>

    static void compareValue(char *min,char *max);

    int main()
    {
         int readLen = 0;
         scanf("%d",&readLen);
         getchar();
        
         while(readLen > 0)
         {
              char left,mid,right;
             
              scanf("%c%c%c",&left,&mid,&right);
              getchar();
             
              compareValue(&left,&mid);
              compareValue(&left,&right);
              compareValue(&mid,&right);
              printf("%c %c %c ",left,mid,right);
             
              --readLen;
         }
        
         return 0;
    }

    static void compareValue(char *min,char *max)
    {
         if(*min > *max)
         {
              char tmp = *min;
              *min = *max;
              *max = tmp;
         }
    }
     
    在这里特别需要注意:
    1.最终的输出结果一定要加空格
    2.在scanf之后,一定要加上getchar,否则下次scanf读取的第一个字符是
    对于这个问题还有一个方案,就是scnaf中加入 ,如:
     scanf("%c%c%c ",&left,&mid,&right);
    但是这样在Dos环境手动输入内容时不方便测试,所以还是建议采用getchar的方式.
     
     
  • 相关阅读:
    DC综合流程
    DC set_tcl脚本配置
    同步FIFO设计
    顺序脉冲 发生器
    状态机的写法
    verilog串并转换
    indexOf()
    jQuery 效果
    jQuery 事件
    jQuery css
  • 原文地址:https://www.cnblogs.com/sharpfeng/p/5141172.html
Copyright © 2020-2023  润新知