标签:string ret 行存储 类型 %s 防止 不可 代码 ring
【编程题】丈母娘的考验
题目ID:1136
【问题描述】小豪和女友恋爱数年,终于要修成正果了。今天,他将以准女婿的身份去女友家,唉呀,忐忑不安。
丈母娘一见小豪,嗯嗯,果然是传说中的高富帅,不错不错!
额额额,等会,这孩子不会是红漆马桶吧?长得好看,可是一肚子的粑粑o(^▽^)o,那可配不上我家宝贝乖乖女儿哦。
“小豪,好孩子,能帮阿姨一个忙吗?老年大学有一道题,我还不会呢。”
原来是这样的一道题:有三个正整数,将其连成一排,求最大的数。
例如,5,6,7,最大数为765;又如33,444,5,最大数为544433
你能帮小豪做出这道题吗?使得小豪能通过丈母娘的考验,迎娶白富美,走上人生巅峰。
【输入形式】三个正整数i,j,k(1<=i,j,k<=30000)
【输出形式】最大数
【样例输入】
【测试用例】
1)
输入:
65 654 6543
输出:
656546543
2)
输入:
12 123 1234
输出:
123412312
3)
输入:
123 32 51
输出:
5132123
4)
输入:
87 234 43
输出:
8743234
5)
输入:
234 355 1987
输出:
3552341987
#include<stdio.h>
#include<string.h>
int main()
{
char a[3][6]; //定义二维数组,以行保存字符串
int i;
for (i=0;i<3;i++){
scanf("%s",&a[i]); //按行读入字符串
}
int j;
for (i=0;i<3;i++){
for (j=0;j<3-i-1;j++){ //j多减1,防止数组越界
char tema[12],temb[12]; //临时数组保存要比较的值
strcpy(tema,a[j]);
strcat(tema,a[j+1]);
strcpy(temb,a[j+1]);
strcat(temb,a[j]);
if (strcmp(tema,temb)<0){ //比较a+b与b+a的大小(字符串比较),把小的顶到右边去
char tem[6]; //临时数组保存a[i]
strcpy(tem,a[j]);
strcpy(a[j],a[j+1]);
strcpy(a[j+1],tem);
}
}
}
for (i=0;i<3;i++){ //按行输出二维数组
printf ("%s",a[i]);
}
return 0;
}
标签:string ret 行存储 类型 %s 防止 不可 代码 ring
原文地址:https://www.cnblogs.com/fanqieya/p/10807394.html