分支语句 if 是什么东西,我该怎么用?
if 是c语言中的选择语句,用来选择和判断不同的条件。
if语句
if语句语法表达
if(表达式)
{
语句
}
表达式成立为真,语句执行。
表达式不成立为假,语句则不执行。
c语言中0为假,1为真。
所以想要让 if 语句功能实现要让表达式的值为 1 即为真
情况为:
这里表达式 (numb= =1)因为 numb 初始值定义为1所以(numb==1)成立
if 语句为真所以执行 printf 打印 numb 的值:
初始值为 1
运行程序结构为 1
要是我们把 numb的初始值设定为 0 的话
因为我们把 numb 的值设为了 0
numb=0 0不等于1
if(numb= =1)表达式为假,不执行语句
运行了程序什么都不执行
要是我们想要表达输入 1和 1以外的结果时那就可以用到
else
else
这里我们用到了输入函数 scanf
scanf可以输入任意一个不超过 (-231 ~231-1) 整型
因为int numb 是有符号整型
假设我们输入1
if 表达式成立 实行语句 “打印数字1”
假设我们输入 1 除外的数
这里if 表达式不成立
执行else 的语句
“打印数字一以外的数”
使用 if else 时要注意
if(表达式)
{
语句;
}
else
{
语句;
}
else 只会跟最近的 if 语句
中间插入其他语句就会报错
所以 if 后面一般都跟着 else 不跟else也行
但是 else 必须跟着 if
if 嵌套语句
if还能嵌套使用
if(语句)
{
if(语句)
{
表达式;
}
}
这里 if 嵌套 numb 满足了大于 0 的条件由满足了小于 6 的条件
所以程序运行
打印 numb的值 为 5
if 嵌套一样可以用 else
这里else没有找到if语句
所以什么都没执行
正确的语句应为
numb 只满足大于0的条件 不满足小于6的条件
打印**“都不满足”**
还有嵌套语句 else if
if(表达式)
{
语句;
}
else if(表达式)
{
语句;
}
else
{
语句;
}
这个和上面有所不同
这个语句只会执行一次符合条件的表达式
因为numb=2 满足了numb>2就直接执行打印了
不会再执行下面的语句
只要你想套可以无限套娃
gitee里面有 if 测试
swtich 语句 分支语句中的另外一条语句
switch 语句的话 和 if else 相似,if else 另一种表达方法就是 else if上面说过
都是 分支语句
switch(整型表达式)
{
case 整型常量:(语句);break;
case 整型常量:(语句);break;
}
if(表达式)
{
if(表达式)
{
语句:
}
else
{
语句;
}
}
if(表达式)
{
语句;
}
else if(表达式)
{
语句;
}
else
{
语句;
}
但是 switch 和 if 语句的表达式有点不同
上面 if 语句的表达式在C语言中,if后面的条件可以是任何表达式,不一定是整型。只要表达式的值为0,则条件为假,否则为真。例如,以下代码是合法的:
if (x > 0.5) {
printf("x is greater than 0.5");
}
其中,表达式x > 0.5的值为1或0,如果x大于0.5,则为1,否则为0。
switch 语句呢他后面跟的表达式必须是整型。
整型大概意思是一个整数的意思,不是小数。
switch 后面跟的 case 也必须是整型常量,记住一定是常量
变量是会报错的
switch 语句的 default 和 if 语句中的 else 一样都差不多是默认的一样
就是要是上面语句都不能执行就默认执行 default .
这里输入 i 的值是 7 大于 3 都不执行
所以执行 default 语句打印“超出范围”
输入 1 就是执行 case 1 语句 打印 i 的值
这里要注意 break,要是不打 break 的话
就会一直打执行下去直到语句结束。