if 与三目

关键字 if 用于判读其后括号中的表达式是否为真,假如为真那么执行 if 后面的语句,假如为假,那么执行else后面的语句。

#include<iostream>
using namespace std;
int main()
{
int x = 3;
if (x==0)//假如()中的判断为真(正确)就执行下面一条语句,假如为假(不正确)就跳过下一条语句
{
//如果x=0那么就执行小括号后的语句,假如不等于0,那么就跳过小括号后的语句,
cout << "x=0\n";
}
else//假如不添加else语句,if语句为真是就会执行if后面的功能然后继续执行其他语句
{//而加上else语句,假如if语句为真就不执行else语句
cout << "x!=0\n";
}
return 0;
}

一条 if 语句后面可以跟多个else语句。
 
#include<iostream>
using namespace std;
int main()
{
int a = 41;
if (a < 10)//表达式为真则执行括号内的语句,假如为假则执行下一条语句
{
cout << "a小于10\n";
}
else if (a<20)
{
cout << "a大于10,小于20\n";
}
else if (a < 40)//当所有else  if   语句都为假时,则执行else语句。
{
cout << "a大于10,小于40\n";
}
else//以上语句语句都不被满足时,则执行else语句。
{
cout << "a大于或等于40\n";
}
cout << "欢迎来到玫瑰坊!\n";
return 0;
}

下面是 i f 语句的嵌套:
在 i f 语句中添加一个或多个i f 语句就叫 i f 语句嵌套

#include<iostream>
using namespace std;
int main()
{
cout << "请输入一个整数:\n";
int x;
cin >> x;
if (x > 1)
{
if (x < 100)
{
cout << "x大于1,小于100\n";
}
else
{
cout << "x大于或等于100\n";
}
if (x < 1)
{
cout << "x小于1\n";
}
else
{
cout << "x等于1\n";
}
}
cout << "欢迎来到玫瑰坊!\n";
return 0;
}


逻辑运算符:
逻辑“与”:&&,它表示如果运算符两边的条件表达式为真,那么该逻辑表达式方才成立。
逻辑“或”:| |   ,它表示如果运算符两边只要有一边的判断为真,那么这个逻辑表达式就成立。
逻辑“非”:!  ,它表示如果表达式为真时取反,则为假,当表达式为假时,表达式就成立。
逻辑运算符优先级:一行语句中出现3个或3个以上的逻辑运算符,就会产生优先级的问题,此时可以使用()小括号来确定优先顺序。

逻辑与:&&
#include<iostream>
using namespace std;
int main()
{
int x = 2;
if (x > 1 && x < 100)
{
cout << "欢迎来到玫瑰坊!\n";
}
return 0;
}

逻辑或:|  |
#include<iostream>
using namespace std;
int main()
{
int x = 1000;
if (x > 1 || x < 100)
{
cout << "欢迎来到玫瑰坊!\n";
}
return 0;
} 

逻辑非:!
#include<iostream>
using namespace std;
int main()
{
int x = 100;
if (!x== 100)
{
cout << "x=1时,此表达式为真时,则执行else语句。\n";
}
else
{
cout << "欢迎来到玫瑰坊!\n";
} 
return 0;
}

三目运算:
z = (a > b) ? a : b;
//意思就是如果问号左边的表达式为真,则将 冒号 左边的 a 赋给 z ,如果为假,就将冒号  右边的 b 赋给 z ,这里的小括号是为了助于理解。

三目运算符的优先问题,三目运算符的执行方向依次为自右向左。
z=a>b?a :a>b?a:b;       a=1,b=2;
这里就先执行右边的三目运算符,结果为 b 那么再执行   z=a>b?a:b;左边的表达式为假,所以z的值为2;

三目运算符的使用问题:
三目运算符一定要用在赋值语句里,也可以与cout搭配使用。
#include<iostream>
using namespace std;
int main()
{
int a=1, b=2, c=0;
//c=a<b?a:b;  三目运算代替 i f 的方法
        //cout<<(a<b?a:b) 
if (a < b)
{
c = a;
}
else
{
c = b;
}
cout << "c:" << c << endl;
return 0;
}

三目运算符允许对不同类型的数值进行操作:
int main()
{
int a = 1;
float b = 2.1f;
cout<<(a > b ? a : b);
return 0;
}

三目运算符如何在字符型变量中使用:

int main()
{
char a;
cin >> a;
cout << (a = (a >= 'A'&&a <= 'Z') ? (a + 32):a)<<endl;
//a+32,就是将大写转换为小写,ASCII码中大小写的差值就是32.
return 0;
}

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值