程序设计:编写程序,输入三个整数,利用三目运算符(条件表达式)输出最小数?

如题所述

#include <stdio.h>


int main()

{

    int a,b,c;

    scanf("%d%d%d",&a,&b,&c);

    printf("%d\n",a<b?(a<c?a:c):(b<c?b:c));

    return 0;

}

温馨提示:答案为网友推荐,仅供参考
第1个回答  2020-11-19
三目运算符由表达式和条件运算符组成:条件?表达式1:表达式2;

if-else 是先赋值再运算,为了节省时间,分支预测会先猜测运行 if 还是 else 并继续运行 (默认是if),若猜对则因并行运算而节省时间,若猜错则因消除运算而耗费时间。
三目运算 是先运算再赋值,遇到选择支时停止并行并判断条件。

虽然说三目运算只能使用两个表达式,但是,三目运算符也是和if-else一样,可以嵌套语句。

但是通常在多数情况下,运算结果为0与为1的可能相近,分支预测&并行运算会比三目运算耗费更多时间,所以使用使用三目运算更为简洁快速。

当然三目运算也是能进行多个值的比较的,例如比较大小,在if和三目运算中就有了较好的比较。
例如:使用if和三目运算符来比较输入的三位整数参数的大小比较,并且由小到大排序

在If中条件都输出完了以后才进行输出。



使用if的话就只能够这样一步步的繁琐嵌套判断来进行循环判断

然而像这种类型的判断表达式用三目运算符来进行计算的符就比较简单了。
此处使用三目运算符来进行判断比较值的大小,然后在根据获取的参数值再进行比较来进行比较


由上例子足以得知,使用三目运算比if-else可读性上,代码简介程度也比if-else好。但是,三目运算符只是能进行简单的判断运算。
第2个回答  2020-02-23


java编程 从控制台上输入一个数字用三目运算符:判断它是否是3的倍数的程序如下:

import java.util.Scanner;
public class MM {
 public static void main(String[] args) {
  Scanner sc=new Scanner(System.in);
  int num=sc.nextInt();
  System.out.println(num%3==0?true:false);
 }
}

运行结果:

5
false





第3个回答  2020-11-18
假设输入abc三个数,设变量ans
ans=a>b?b:a;
ans=ans>c?c:ans;
最后输出ans就行了
相似回答