else ; 三目運算子 ; switch 語句的基本用法
阿新 • • 發佈:2019-01-03
條件語句 if ; 三目運算子 ; switch
if 語句
格式
if(關係表示式)//所謂的關係表示式的值 (真假性)
{
語句塊1; 可以是一句也可以是多句話,甚至可以沒有
}
1. 變數的作用域:變數的有效範圍,變數所在的大括號
2. 自定義變數的作用域
{ 這個大括號 就是定義了 i這個變數的作用域
int i = 0;
printf("i = %d\n",i);
}
一個經典的面試題
if-else 結構
格式
if 如果
else 否則
if(關係表示式) 關係表示式只有兩個結果
{
語句塊1; 如果為真 執行 “語句塊1”
}
else
{
語句塊2; 如果為假 執行 “語句塊2”
}
* 注意1 : 語句塊1 和語句塊2 有且僅有一個會被執行*
if - else if - else
if(條件表示式1) { 執行語句塊1; } else if(條件表示式2) { 執行語句塊2; } else if(條件表示式3) { 執行語句塊3; }else if(條件表示式4) { 執行語句塊4; } else{ //是指以上的條件表示式都不滿足的時候 語句塊n; }
執行順序
先判斷一個條件表示式 如果不成立,在判斷第二個
條件表示式
如果前面的條件表示式都不成立 那麼執行else
三目運算子
* 格式*
條件表示式? 值1 : 值2
int num = 20;
num > 0 ? 第一個值 : 第二個值;
注意
1. 條件表示式 也可以是一個普通的表示式
eg : 2 - 3 ? 100 : 200
2. 值1 和值2 也是可以 別的語句
eg:
int num = 20;
num > 10 ? printf(“比較大”) : printf(“比較小”);
產生隨機數
1. 隨機數: 一個範圍內的 隨機產生的數
2. c語言中:
引入一個東西: #include<stdio.h>
使用這個函式: arc4random_uniform(一個整數);
eg: 產生一個 20 --- 200 之間的數
arc4random_uniform(181) + 20;
( 最大數-最小數 + 1 )+ 最小數
switch 語句
switch(普通的表示式)
{//只要是表示式
肯定是有一個結果的 1,2,3,4...
case 1:
語句1;
break;
case 2:
語句2;
break;
case 3:
語句3;
break;
case 4:
語句4;
break;
case 6:
語句5;
break;
default: 預設:就是上面的case都沒有符合
那麼執行預設
語句n;
break;
}
注意:switch 中 有且僅有一個會被執行
case 穿透
1. 介紹一下 switch-case中的break的用途:
break的作用就是打斷switch語句
使switch語句結束(執行到最後的大括號)
2.如果case中沒有break,那麼switch就不會結束
會執行下一個case裡的語句
而不用進行判斷,這個現象就是穿透現象
switch 注意點
- switch 和case 後面只能是“整數”或者“字元”
- 在case 模組中 可以加大括號
但是如果第一句是一個定義變數的語句 必須加大括號 - case語句中可以是一句也可以是多句 甚至可以沒有語句
- case 後面不能是變數 只能是常量中的“整數”和“字元”
- case 後面的額值不能相同