用if嵌套实现整数排序

近来发现基础不扎实,重新看了一遍c++程序设计。

对其中的一些以前觉得抽象的东西重新做了一遍,比如说输入三个整数,进行比较,涉及到了if-else的嵌套,有点意思,呵呵~~

 

#include<iostream>

using namespace std;
int main()
{
  
 int a,b,c;
 cout<<"input three number /n";
 cin>>a;
 cin>>b;
 cin>>c;
 cout<<a<<"  "<<b<<"   "<<c<<endl;
 if(a>b)
    {
  if(b>c)
   cout<<"a>b>c"<<a<<">"<<b<<">"<<c<<endl;
  else
  {
   if(a<c)
    cout<<"c>a>b"<<c<<">"<<a<<">"<<b<<endl;
   else
    cout<<"a>c>b"<<a<<">"<<c<<">"<<b<<endl;
  
  }
 
 
 }    
 else
 {
  if(a>c)
   cout<<"b>a>c"<<b<<">"<<a<<">"<<c<<endl;
  else
  {
   if(c>b)
    cout<<"c>b>c"<<c<<">"<<b<<">"<<a<<endl;
   else
    cout<<"b>c>a"<<b<<">"<<c<<">"<<a<<endl;
  
  }
 
 }
 return 0;
}

三个整数列举全部排序应该有3!种可能~

上面三个整数的比较是逻辑是很简单,这时突然想到自己以前看过一个mit的视屏,上面提到过如果四个整数也是用这种方式比较的情形,所以无聊就写了四个整数比较的程序:(好多嵌套,呵呵)

 

 

 

#include<iostream>
#include<string>
using namespace std;
int main()
{
  
 int a,b,c,d;
 cout<<"input four number /n";
 cin>>a;
 cin>>b;
 cin>>c;
 cin>>d;
 cout<<a<<"  "<<b<<"   "<<c<<"  "<<d<<endl;
 if(a>b)
 {
  if(b>c)
  {if(c>d)
   cout<<"a>b>c>d"<<"  "<<a<<">"<<b<<">"<<c<<">"<<d<<endl;
   else
   {
   if(b>d)
    cout<<"a>b>d>c"<<"   "<<a<<">"<<b<<">"<<d<<">"<<c<<endl;
   else
   {
    if(a>d)
     cout<<"a>d>b>c"<<"  "<<a<<">"<<d<<">"<<b<<">"<<c<<endl;
    else
     cout<<"d>a>b>c"<<"  "<<d<<">"<<a<<">"<<b<<">"<<c<<endl;
   }
  
   }
  
  
  }
        else
  {
   if(a>c)
   {
    if(b>d)
     cout<<"a>c>b>d"<<"  "<<a<<">"<<c<<">"<<b<<">"<<d<<endl;
    else
    {
     if(c>d)
      cout<<"a>c>d>b"<<"  "<<a<<">"<<c<<">"<<d<<">"<<b<<endl;
     else
     {
      if(a>d)
       cout<<"a>d>c>b"<<"  "<<a<<">"<<d<<">"<<c<<">"<<b<<endl;
      else
       cout<<"d>a>c>b"<<"  "<<d<<">"<<a<<">"<<c<<">"<<b<<endl;
     }
    }
   
   }
   else
   {
    if(b>d)
     cout<<"c>a>b>d"<<"  "<<c<<">"<<a<<">"<<b<<">"<<d<<endl;
    else
    {
     if(a>d)
      cout<<"c>a>d>b"<<"  "<<c<<">"<<a<<">"<<d<<">"<<b<<endl;
     else
     {
      if(c>d)
       cout<<"c>d>a>b"<<"  "<<c<<">"<<d<<">"<<a<<">"<<b<<endl;
      else
       cout<<"d>c>a>b"<<"  "<<d<<">"<<c<<">"<<a<<">"<<b<<endl;
     }
    
    }
   }
  
  }
 }
 else
 {
  if(a>c)
  {
   if(c>d)
    cout<<"b>a>c>d"<<"  "<<b<<">"<<a<<">"<<c<<">"<<d<<endl;
   else
   {
    if(a>d)
     cout<<"b>a>d>c"<<"  "<<b<<">"<<a<<">"<<d<<">"<<c<<endl;
    else
    {
     if(b>d)
      cout<<"b>d>a>c"<<"  "<<b<<">"<<d<<">"<<a<<">"<<c<<endl;
     else
      cout<<"d>b>a>c"<<"  "<<d<<">"<<b<<">"<<a<<">"<<c<<endl;
    
    }
   }
  }
  else
  {
   if(b>c)
   {
    if(a>d)
     cout<<"b>c>a>d"<<"  "<<b<<">"<<c<<">"<<a<<">"<<d<<endl;
    else
    {
     if(c>d)
      cout<<"b>c>d>a"<<"  "<<b<<">"<<c<<">"<<d<<">"<<a<<endl;
     else
     {
      if(b>d)
       cout<<"b>d>c>a"<<"  "<<b<<">"<<d<<">"<<c<<">"<<a<<endl;
      else
       cout<<"d>b>c>a"<<"  "<<d<<">"<<b<<">"<<c<<">"<<a<<endl;
     }
    
    }
   
   }
   else
   {
    if(a>d)
     cout<<"c>b>a>d"<<"  "<<c<<">"<<b<<">"<<a<<">"<<d<<endl;
    else
    {
     if(b>d)
      cout<<"c>b>d>a"<<"  "<<c<<">"<<b<<">"<<d<<">"<<a<<endl;
     else
     {
      if(c>d)
       cout<<"c>d>b>a"<<"  "<<c<<">"<<d<<">"<<b<<">"<<a<<endl;
      else
       cout<<"d>c>b>a"<<"  "<<d<<">"<<c<<">"<<b<<">"<<a<<endl;
     }
    }
   
   
   }
  
  }
 
 }

 return 0;
}

 

 

4个整数比较后可能的排序就有4!=24种了,那大于5个的话,再用这种方式比较的话就要有足够的勇气了~~

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值