C程序显示从用户输入的3个数字中显示的最大和最小数字

时间:2017-09-28 23:05:59

标签: c logic

我需要解决这个问题:

我有3个nubmers A,B,C ,我需要在相同的if状态中找到最小值和最大值。

我写了下面的代码并且它没有用,我需要解决这个问题这种格式任何人都可以帮助我吗?

#include <stdio.h>

int main()
{
   int a,b,c;
   printf("\nEnter Three numbers = ");
   scanf("%d%d%d",&a ,&b, &c);
   if( (a > b) && (a > c) )
   {
        if(b > c)
        {
             printf("a is largest\n");
             printf("c is smallest\n");

        }
        else
        {
             printf("a is largest\n");
             printf("b is smallest\n");
        }
   }
   else
   {
        if(c > a)
        {
             printf("c is largest\n");
             printf("b is smallest\n");
        }
        else
        {
             printf("a is largest\n");
             printf("c is smallest\n");
        }
    }
    return 0;
 }

在单个if语句中需要它有点像这样。请帮帮我

1 个答案:

答案 0 :(得分:0)

A | B | C
----------
2 | 1 | 0 
2 | 0 | 1
1 | 2 | 0 
1 | 0 | 2
0 | 1 | 2
0 | 2 | 1

SO- 如果A是大的那么B或C是最小的,所以你的条件是好的 否则C \ B是最大的,小的是第二个和A之间的小。

if((a>b)&&(a>c){
   if(b>c){ printf("A biggest , C smallest);
     }else{ printf("A biggest , B smallest);
}else{
   if(b>c){
     if(a>c){ printf("B biggest , C smallest);
       }else{ printf("B biggest , A smallest);
   }else{
     if(a>b){ printf("C biggest , B smallest);
       }else{ printf("C biggest , A smallest);
     }
   }
}

我希望这会对你有所帮助。我没有检查代码是否编译,但我认为它的工作