输入3个字符串,按由大到小的顺序输出。

输入3个字符串,按由大到小的顺序输出。输入3个字符串,按由大到小的顺序输出。

gets()读取字符串,用strcmp比较字符就可以了,参考如下:

img

代码:

#include <stdio.h>
#include <string.h>
int main()
{
    char buf[3][100]={0};
    char tmp[100]={0};
    int i=0;
    for(;i<3;i++)
    {
        gets(buf[i]);
    }
    if (strcmp(buf[0],buf[1])<0)
    {
        memcpy(tmp,buf[0],strlen(buf[0]));
        memset(buf[0],0,100);
        memcpy(buf[0],buf[1],strlen(buf[1]));
        memset(buf[1],0,100);
        memcpy(buf[1],tmp,strlen(tmp));
        memset(tmp,0,100);
    }

    if(strcmp(buf[1],buf[2])<0)
    {
        memcpy(tmp,buf[1],strlen(buf[1]));
        memset(buf[1],0,100);
        memcpy(buf[1],buf[2],strlen(buf[2]));
        memset(buf[2],0,100);
        memcpy(buf[2],tmp,strlen(tmp));
        memset(tmp,0,100);
    }

    if (strcmp(buf[0],buf[1])<0)
    {
        memcpy(tmp,buf[0],strlen(buf[0]));
        memset(buf[0],0,100);
        memcpy(buf[0],buf[1],strlen(buf[1]));
        memset(buf[1],0,100);
        memcpy(buf[1],tmp,strlen(tmp));
        memset(tmp,0,100);
    }
    for(i=0;i<3;i++)
        printf("%s\n",buf[i]);

    return 0;
}