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

如题所述

#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就行了

程序设计:编写程序,输入三个整数,利用三目运算符(条件表达式)输出最...
scanf("%d%d%d",&a,&b,&c);printf("%d\\n",a<b?(a<c?a:c):(b<c?b:c));return 0;}

编程:输入3个数,按从小到大的顺序输出
&a , &b , &c); \/\/输入三个数 空格分开 if(a<b && a<c) \/\/1、a最大 { if(b<c) { printf("%d %d %d" , a , b , c); } else { printf("%d %d %d" , a ,

三个数比较大小的c语言程序
printf("请输入三个整数:");scanf("%d%d%d",&a,&b,&c);if(a>b){t=a; a=b; b=t;} \/\/a与b若大小顺序不对,就交换位置 if(a>c){t=a; a=c; c=t;} \/\/a与c若大小顺序不对,就交换位置;到此a肯定是最小 if(b>c){t=b; b=c; c=t;} \/\/b与c若大小顺序...

三元运算符比较三个数大小
三目运算符:三目运算符也叫条件运算符,结合方向是从右至左;三目运算符仅此一个;基本形式:<表达式1>?<表达式2>:<表达式3>;比较原理: 表达式1是否为真,如果为真,执行表达式2,否则执行表达式3;如果在表达式中含有其他运算符,得考虑符号的优先等级很重要。三目运算符比较两个数之间的大小:<...

c语言编程:有3个整数a,b,c,由键盘输入,输出其中最大的数
include <stdio.h> int main(){ int a, b, c;printf("Pleaes input 3 int:");scanf("%d%d%d", &a, &b, &c);a =( a>=b)? a:b;a = (a>=c)? a:c;printf("Max: %d",a);return 0;}

C语言:编写一个程序实现3个数之间大小的比较。将最大的数输出
include<stdio.h> main(){ int a,b,c,d;printf("输入3个数:");\/\/输入3个数 scanf("%d%d%d",&a &b &c);if(a>b)\/\/比较大小并输出较大在数 d=a ;else d=b;if(d>c)printf("%d",d);else printf("%d",c);}

C语言3个数比较大小!
max_ab,min_ab,c);}输入三个数,判断前两个数,将大的数赋值给max_ab,小的数赋值给min_ab,再将max_ab与c作比较。若c大于等于max_ab,则输出c,max_ab,min_ab.若c小于max_ab且大于min_ab,则输出max_ab,c,min_ab.若c小于min_ab,则输出max_ab,min_ab,c 知识延展:C语言是一种计算机...

...设计一个程序实现求三个数的最大值(任意输入三个数,找出最大的数...
int a,b,c,max;printf("请任意输入三个数:\\n"); \/*这里类型说明为int整型,可自行进行修改*\/ scanf("%d%d%d",&a,&b,&c);max=a>b?a:b;max=max>c?max:c;printf("The max number is %d.",max);} 这里探讨一下楼上的回答,首先非常肯定这位兄台使用条件表达式的三目运算,使用...

c#的输入三个整数,找出最大的代码
冒泡排序啊。int[] iArrary = new int[] { 50,100,20 }; for (int i = 0; i < iArrary.Length; i++) { for (int j = i + 1; j < iArrary.Length; j++) { if (iArrary[i] > iArrary[j]) { inttemp = iArrary[i]; ...

编写求三个数最大值的函数 用C语言
include <stdio.h>int maxfun(int a,int b) \/\/直接用三目运算符? :实现.{ return a>b?a:b;} void main(){ int a,b,c,max;scanf("%d%d%d",&a,&b,&c); \/\/从键盘输入三个数.max=maxfun(a,maxfun(b,c)); \/\/调用函数. 返回三个数中的最大数.printf("max=%d\\n",...

相似回答