要求:输入3
行,每行n
个字符串,按由小到大的顺序输出
声明:本代码思路简单但书写麻烦,请酌情参考。
---------------------------------------------------------------------------------------------------------------------------------
代码 :
int cpar3(char a, char b, char c)//比较三个字符串中同位置的大小
{
if (a < b && a < c)
{
return 1;
}
if (b < a && b < c)
{
return 2;
}
if (c < a && c < b)
{
return 3;
}
if (a < c && a == b)
{
return 4;
}
if (a < b && a == c)
{
return 5;
}
if (b < a && b == c)
{
return 6;
}
if (a == b && a == c)
{
return 0;
}
}
int cpar2(char a, char b)//比较两字符串中同位置的大小
{
if (a < b)
{
return 1;
}
if (b < a)
{
return 2;
}
if (a == b)
{
return 0;
}
}
//思路:先将三个字符串一起比较,直到输出一个最小的;再比较剩下两个字符串。
int main()
{
char ch_1[100];
char ch_2[100];
char ch_3[100];
scanf("%s", &ch_1);
scanf("%s", &ch_2);
scanf("%s", &ch_3);
int i, j;
for (i = 0; i < strlen(ch_1); i++)
{
if (cpar3(ch_1[i], ch_2[i], ch_3[i]) == 1)
{
for (j = 0; j < strlen(ch_1); j++)
{
printf("%c", ch_1[j]);
}
printf("\n");
for (i = 0; i < strlen(ch_1); i++)
{
if (cpar2(ch_2[i], ch_3[i]) == 1)
{
for (j = 0; j < strlen(ch_1); j++)
{
printf("%c", ch_2[j]);
}
printf("\n");
for (j = 0; j < strlen(ch_1); j++)
{
printf("%c", ch_3[j]);
}
return 0;
}
else if (cpar2(ch_2[i], ch_3[i]) == 2)
{
for (j = 0; j < strlen(ch_1); j++)
{
printf("%c", ch_3[j]);
}
printf("\n");
for (j = 0; j < strlen(ch_1); j++)
{
printf("%c", ch_2[j]);
}
return 0;
}
}
}
if (cpar3(ch_1[i], ch_2[i], ch_3[i]) == 2)
{
for (j = 0; j < strlen(ch_1); j++)
{
printf("%c", ch_2[j]);
}
printf("\n");
for (i = 0; i < strlen(ch_1); i++)
{
if (cpar2(ch_1[i], ch_3[i]) == 1)
{
for (j = 0; j < strlen(ch_1); j++)
{
printf("%c", ch_1[j]);
}
printf("\n");
for (j = 0; j < strlen(ch_1); j++)
{
printf("%c", ch_3[j]);
}
return 0;
}
else if (cpar2(ch_1[i], ch_3[i]) == 2)
{
for (j = 0; j < strlen(ch_1); j++)
{
printf("%c", ch_3[j]);
}
printf("\n");
for (j = 0; j < strlen(ch_1); j++)
{
printf("%c", ch_1[j]);
}
return 0;
}
}
}
if (cpar3(ch_1[i], ch_2[i], ch_3[i]) == 3)
{
for (j = 0; j < strlen(ch_1); j++)
{
printf("%c", ch_3[j]);
}
printf("\n");
for (i = 0; i < strlen(ch_1); i++)
{
if (cpar2(ch_1[i], ch_2[i]) == 1)
{
for (j = 0; j < strlen(ch_1); j++)
{
printf("%c", ch_1[j]);
}
printf("\n");
for (j = 0; j < strlen(ch_1); j++)
{
printf("%c", ch_2[j]);
}
return 0;
}
else if (cpar2(ch_1[i], ch_2[i]) == 2)
{
for (j = 0; j < strlen(ch_1); j++)
{
printf("%c", ch_2[j]);
}
printf("\n");
for (j = 0; j < strlen(ch_1); j++)
{
printf("%c", ch_1[j]);
}
return 0;
}
}
}
if (cpar3(ch_1[i], ch_2[i], ch_3[i]) == 4)
{
for (i = 1; i <= strlen(ch_1); i++)
{
if (cpar2(ch_1[i], ch_2[i]) == 1)
{
for (j = 0; j <= strlen(ch_1); j++)
{
printf("%c", ch_1[j]);
}
printf("\n");
for (j = 0; j <= strlen(ch_1); j++)
{
printf("%c", ch_2[j]);
}
printf("\n");
for (j = 0; j <= strlen(ch_1); j++)
{
printf("%c", ch_3[j]);
}
return 0;
}
else if (cpar2(ch_1[i], ch_2[i]) == 2)
{
for (j = 0; j <= strlen(ch_1); j++)
{
printf("%c", ch_2[j]);
}
printf("\n");
for (j = 0; j <= strlen(ch_1); j++)
{
printf("%c", ch_1[j]);
}
printf("\n");
for (j = 0; j <= strlen(ch_1); j++)
{
printf("%c", ch_3[j]);
}
return 0;
}
}
}
if (cpar3(ch_1[i], ch_2[i], ch_3[i]) == 5)
{
for (i = 1; i <= strlen(ch_1); i++)
{
if (cpar2(ch_1[i], ch_3[i]) == 1)
{
for (j = 0; j <= strlen(ch_1); j++)
{
printf("%c", ch_1[j]);
}
printf("\n");
for (j = 0; j <= strlen(ch_1); j++)
{
printf("%c", ch_3[j]);
}
printf("\n");
for (j = 0; j <= strlen(ch_1); j++)
{
printf("%c", ch_2[j]);
}
return 0;
}
else if (cpar2(ch_1[i], ch_3[i]) == 2)
{
for (j = 0; j <= strlen(ch_1); j++)
{
printf("%c", ch_3[j]);
}
printf("\n");
for (j = 0; j <= strlen(ch_1); j++)
{
printf("%c", ch_1[j]);
}
printf("\n");
for (j = 0; j <= strlen(ch_1); j++)
{
printf("%c", ch_2[j]);
}
return 0;
}
}
}
if (cpar3(ch_1[i], ch_2[i], ch_3[i]) == 6)
{
for (i = 1; i <= strlen(ch_1); i++)
{
if (cpar2(ch_2[i], ch_3[i]) == 1)
{
for (j = 0; j <= strlen(ch_1); j++)
{
printf("%c", ch_2[j]);
}
printf("\n");
for (j = 0; j <= strlen(ch_1); j++)
{
printf("%c", ch_3[j]);
}
printf("\n");
for (j = 0; j <= strlen(ch_1); j++)
{
printf("%c", ch_1[j]);
}
return 0;
}
else if (cpar2(ch_2[i], ch_3[i]) == 2)
{
for (j = 0; j <= strlen(ch_1); j++)
{
printf("%c", ch_3[j]);
}
printf("\n");
for (j = 0; j <= strlen(ch_1); j++)
{
printf("%c", ch_2[j]);
}
printf("\n");
for (j = 0; j <= strlen(ch_1); j++)
{
printf("%c", ch_1[j]);
}
return 0;
}
}
}
}
return 0;
}