if语句的逻辑:
逻辑:程序中某一段代码在某一个特定的条件下执行
if 语句: 如果条件满足则执行某一个代码块
if-else 语句: 如果条件满足则执行代码块1 ,否则执行代码块2
例如:
// if语句,如果判别式成立就执行“代码块”
if (判别式 )
{
/*代码块*/
}
// if - else 语句,嵌套
if (判别式)
{
/*代码块1*/
}
else
{
/*代码块2*/
}
三目运算符
“三目运算”可以可以将条件运算符理解为 if-else 语句的简化形式,在使用较为简单的表达式时,使用该运算符能够简化程序代码,使程序更加易读。
例如:
结果 = <判别式> ? <代码1> : <代码2>;
它们实际的使用:
以一个例子来说明,
Kiki参加了语文、数学、外语的考试,请帮他判断三科中的最高分。从键盘任意输入三个整数表示的分数,编程判断其中的最高分。
输入描述:
多组输入,每行输入包括三个整数表示的分数(0~100),用空格分隔。
输出描述:
针对每行输入,输出为一行,即三个分数中的最高分。
#include <stdio.h>
int main()
{
int n1 = 0;
int n2 = 0;
int n3 = 0;
while(scanf("%d%d%d", &n1, &n2, &n3) !=EOF)
{
/*方法一:使用三目运算符来进行判断*/
// int Max = n1 > n2 ? n1 : n2;
// Max = Max > n3 ? Max : n3;
// printf("%d\n",Max);
/*方法二:使用if-else语句*/
int Max = 0;
if (n1 > n2)
Max = n1;
else
Max = n2;
if (Max > n3)
Max = Max;
else
Max = n3;
printf("%d\n",Max);
}
return 0;
}
总结:
经过比较发现,其实三目表达式要简洁得多,当然如果判断结果偏复杂还是建议if判断比较好,毕竟if-else还是可以使用嵌套的。