您的位置:首頁>正文

C語言學習新手福利之選擇結構精講篇,老鳥繞道,僅限新手哦

閱讀須知:

學習交流,請少俠駐足:C/C++學習交流 8群 491994603

1.如何比較

生活中我們常常會做比較, 通過比較我們知道6大於5, 那麼C語言中又是怎麼來比較的呢?

C語言是通過>(大於)、<(小於)、==(等於)、>=(大於等於)、<=(小於等於)、!=(不等於), 這些運算子來進行比較的, 比如:

學習交流,請少俠駐足:C/C++學習交流 8群 491994603

像上面的運算式叫做關聯運算式, 關聯運算式的值為"真"或者"假", 像上面a < b就為真, a > b就為假。

注意當比較兩個變數是否相等時是使用==來比較的, 是兩個等號連著用哦, 如果只是一個等號=這是賦值的意思, 比如a = 4是把4賦值給a這個變數, 而不是a是不是等於4的意思。

2.如何判斷真假

C語言除了會做比較運算外還有一種新的運算叫做邏輯運算, 那什麼叫邏輯運算呢?就是用"真"和"假"這兩個值來做運算。 邏輯運算的值也是"真"和"假", 用"0"表示假, 用非0數字表示"真", 一般使用"1"表示"真"。

首先我們先來介紹三種符號:&&與運算,

規則:"真&&真"為真, "真&&假"為假, "假&&真"為假, "假&&假"為假||或運算, 規則:"真||真"為真, "真||假"為真, "假||真"為真, "假||假"為假 ! 非運算, 規則:"!真"為假, "!假"為真

舉個例子:

學習交流,請少俠駐足:C/C++學習交流 8群 491994603

(a < b) && (b < c) 為真 (a < b) || (a < c) 為真 a < b 為真, !(a < b) 為假

3.判斷是正數還是負數

一個非0整數不是正數就是負數, 如果我們想判斷一個數字是不是負數, 用C語言該怎麼解決呢?

我們知道小於0的數就是負數, 現在用C語言來判斷一個數是不是負數, 如果是就讓它自己說出來"我是負數":

學習交流,請少俠駐足:C/C++學習交流 8群 491994603

這裡出現一個新的用法--if語句, 它就是C語言中的判斷語句。

if語句括弧中的句子就是條件, 條件可以是關聯運算式也可以是邏輯運算式, 比如a < 0就是一個條件。 if語句後面都會跟著一對花括弧{},

在這個花括弧的裡面的內容就是滿足if條件後的一些處理, 在這裡可以寫任意的C語言的語句。

當if語句中只有一個C語言的語句時可以不適用花括弧, 所以

if (a < 0)

printf("我是負數!");

也是合法的, 只不過為了代碼的可讀性考慮, 一般都會加上花括弧。

4.如何判斷是奇數還是偶數

一個整數不是奇數就是偶數, 現實中我們判斷偶數的依據是看這個數是否能被2整除, 也就是看看這個數字除以2之後的餘數是否為0, 如果不為0那肯定就是奇數。 現在我們把這個想法轉化為C的語句吧!

在C語言中求餘數是用%這個符號的, 運用上個練習中我們學習的if()語句來試試吧。

學習交流,請少俠駐足:C/C++學習交流 8群 491994603

嘿嘿, 這裡我們又使用了一個新的語句else,

其實else就是它英文字面的意思, 就是除了符合if條件之外的它都接收。 比如上面的例子中如果不是偶數那剩下的肯定是奇數。

else的使用方法和if類似, 也要在後面加上{}這對花括弧, 所有符合else條件的處理都要包含在花括弧中。

5.分數等級查詢小系統

我們知道老師一般會把分數進行分級, 學生可以根據自己的考試分數來查詢自己的成績是哪個等級:

80 < score <= 100 為優秀 60 <= score <= 80 為良好 score < 60 為不及格

既然我們知道了分等級的規則就幫著老師來做一個分數等級查詢的小系統吧。

優秀等級對應的C語言的語句是:

if (score <= 100 && score >80)

{

printf("你的成績是優秀!");

}

良好等級對應的C語言的語句是:

if(score <= 80 && score >=60)

{

printf("你的成績是良好!");

}

不及格等級對應的C語言的語句是:

if (score < 60)

{

printf("你的成績是不及格!");

}

上面寫這麼多的if語句是不是有點兒煩, C語言中有一種方法可以把上邊所有的if語句連起來, 看清楚哦:

學習交流,請少俠駐足:C/C++學習交流 8群 491994603

這個代碼看起來有點兒長, 但是非常好理解。 如果不符合第一個條件的分支我就走到else裡面, 結果else裡面還有條件判斷, 再跟這個條件進行匹配,直到匹配到合適的條件為止。使用這麼一層一層的if和else就叫條件陳述式的嵌套。使用時一定要注意格式對齊,這樣你的代碼看起來才清楚。

6.星期查詢小系統

我們已經學習了if和else的嵌套使用,當多層的嵌套使用時出錯的可能性就增加了。C語言中還有一種新的語句能解決這個問題,我一直叫它開關語句:switch,下面我們來講一下怎麼使用switch語句:

switch (weekday)

{

case1:

printf("Today is Monday");

break;

case2:

printf("Today is Tuesday");

break;

… …

case7:

printf("Today is Sunday");

break;

default:

printf("You write number is wrong!");

break;

}

上面的代碼就是switch的使用方法,switch後面的括弧()裡是一個變數,上面的例子中weekday就是個變數,用來存數位的,我們希望這個數字是1-7之間的整數。

case後面跟著的數位就是用來跟weekday進行匹配的,如果是weekday中存1,就進入case 1中,進行相應的處理,否則就不會進去。

case後面不只能寫數字,也可以是一個字母,但是不能是變數,每個case後面跟的不能重複。

default是用來處理異常的,比如weekday中存的不是1-7的數字而是別的,這時就會進入到default這個語句中進行相應的處理。

每個case後面必須有一個break,是跳出的意思。

7.打賭輸贏機

生活中我們經常會打賭,賭你贏了怎麼樣我贏了怎麼樣,C語言中有一個跟這個非常類似的語句,叫條件運算子:

(運算式 ? 值1 : 值2)

"運算式"就是賭注的內容,值1和值2就是賭贏的獎勵。

y = (x == 2 ? 100 : 50) ;

如果x等於2,那麼y就等於100,如果x不等於2,那麼y就等於50.

學習交流,請少俠駐足:C/C++學習交流 8群 491994603

以上是基礎篇,更有思維篇,程式設計篇,那麼今天分享就到這裡結束了,謝謝大家

再跟這個條件進行匹配,直到匹配到合適的條件為止。使用這麼一層一層的if和else就叫條件陳述式的嵌套。使用時一定要注意格式對齊,這樣你的代碼看起來才清楚。

6.星期查詢小系統

我們已經學習了if和else的嵌套使用,當多層的嵌套使用時出錯的可能性就增加了。C語言中還有一種新的語句能解決這個問題,我一直叫它開關語句:switch,下面我們來講一下怎麼使用switch語句:

switch (weekday)

{

case1:

printf("Today is Monday");

break;

case2:

printf("Today is Tuesday");

break;

… …

case7:

printf("Today is Sunday");

break;

default:

printf("You write number is wrong!");

break;

}

上面的代碼就是switch的使用方法,switch後面的括弧()裡是一個變數,上面的例子中weekday就是個變數,用來存數位的,我們希望這個數字是1-7之間的整數。

case後面跟著的數位就是用來跟weekday進行匹配的,如果是weekday中存1,就進入case 1中,進行相應的處理,否則就不會進去。

case後面不只能寫數字,也可以是一個字母,但是不能是變數,每個case後面跟的不能重複。

default是用來處理異常的,比如weekday中存的不是1-7的數字而是別的,這時就會進入到default這個語句中進行相應的處理。

每個case後面必須有一個break,是跳出的意思。

7.打賭輸贏機

生活中我們經常會打賭,賭你贏了怎麼樣我贏了怎麼樣,C語言中有一個跟這個非常類似的語句,叫條件運算子:

(運算式 ? 值1 : 值2)

"運算式"就是賭注的內容,值1和值2就是賭贏的獎勵。

y = (x == 2 ? 100 : 50) ;

如果x等於2,那麼y就等於100,如果x不等於2,那麼y就等於50.

學習交流,請少俠駐足:C/C++學習交流 8群 491994603

以上是基礎篇,更有思維篇,程式設計篇,那麼今天分享就到這裡結束了,謝謝大家

同類文章
Next Article
喜欢就按个赞吧!!!
点击关闭提示