题目:
输入3个字符串,要求按由小到大的顺序输出。
代码实现:
#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
int main()
{
char arr[3][20] = { 0 };
char* p[3] = { 0 };
int i = 0;
int j = 0;
char* tem = NULL;
//输入
for (i = 0; i < 3; i++)
{
scanf("%s", arr[i]);
p[i] = arr[i];
}
//调序
for (i = 0; i < 2; i++)
{
//当i == 0时
//循环2次,p[1]分别与p[2]、p[3]相比较,跳出循环时,p[1]为最小字符串
//当i == 1时
//循环一次,使p[2]、p[3]相比较,跳出循环时,p[3]为最大字符串
//
for (j = i + 1; j < 3; j++)
{
if (strcmp(p[i], p[j]) > 0)
{
tem = p[i];
p[i] = p[j];
p[j] = tem;
}
}
}
//输出
for (i = 0; i < 3; i++)
{
printf("%s ", p[i]);
}
return 0;
}