ganmu


私信TA

用户名:dotcpp0726067

访问量:3465

签 名:

等  级
排  名 1522
经  验 2809
参赛次数 0
文章发表 104
年  龄 0
在职情况 学生
学  校
专  业

  自我简介:

解题思路:

注意事项:

参考代码:

#include <iostream>

#include<cstdio>

#include<cstring>

using namespace std;

//自定义函数,实现比较a,b两个字符数组大小

//前两个参数传入两个字符数组a,b

//第三个参数用于递归时标记比较的位置,初始传入0即可

int ifBig(char a[], char b[], int i){

   if(a[i]>b[i]) return 1;//如果第一个就比较出来了,直接返回

   if(a[i]<b[i]) return 0;//如果第一个就比较出来了,直接返回

   if(a[i]==b[i]) {//如果相等

       if(strlen(a)==i+1) return 0;//看看是否到末端了,如果到了返回

       if(strlen(b)==i+1) return 1;//看看是否到末端了,如果到了返回

       return ifBig(a,b,i+1);//都没到,那就比下一个

   }

}

//主函数

int main() {

   //三个进行初始化

   char a[100];

   char b[100];

   char c[100];

   gets(a);

   gets(b);

   gets(c);

   //如果a最小,a先输出,剩下两个比较后进行输出

   if(ifBig(a,b,0)==0 && ifBig(a,c,0)==0){

       cout<<a<<endl;

       if(ifBig(b,c,0)==0){

           cout<<b<<endl;

           cout<<c<<endl;

       } else {

           cout<<c<<endl;

           cout<<b<<endl;

       }

   }

   //如果b最小,b先输出,剩下两个比较后进行输出

   if(ifBig(b,a,0)==0 && ifBig(b,c,0)==0){

       cout<<b<<endl;

       if(ifBig(a,c,0)==0){

           cout<<a<<endl;

           cout<<c<<endl;

       } else {

           cout<<c<<endl;

           cout<<a<<endl;

       }

   }

   //如果c最小,c先输出,剩下两个比较后进行输出

   if(ifBig(c,b,0)==0 && ifBig(c,a,0)==0){

       cout<<c<<endl;

       if(ifBig(a,b,0)==0){

           cout<<a<<endl;

           cout<<b<<endl;

       } else {

           cout<<b<<endl;

           cout<<a<<endl;

       }

   }

   return 0;

}


 

0.0分

0 人评分

  评论区

  • «
  • »