色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

技術干貨驛站 ▏深入理解C語言:掌握C語言條件判斷,從if到switch的應用

北京合眾恒躍科技有限公司 ? 2024-11-09 01:10 ? 次閱讀

編程中,條件判斷語句是控制程序流程的核心元素之一。它們使得程序能夠根據不同的輸入和狀態,做出相應的決策。特別是在C語言中,條件判斷語句的使用極為廣泛,涵蓋了從簡單的if語句到更復雜的switch語句和條件運算符。這些結構不僅增強了代碼的靈活性,還提高了程序的可讀性和可維護性。本文將深入探討C語言中的主要條件判斷語句,包括它們的語法、使用方法及實際應用,通過具體示例幫助讀者更好地理解和掌握這些重要概念。

01#

一:什么是條件判斷語句

判斷結構要求指定一個或多個要評估或測試的條件,以及條件為真時要執行的語句(必需的)和條件為假時要執行的語句(可選的)。

C 語言把任何非零和非空的值假定為true,把零或null假定為 false。


以下是C語言的三種條件判斷語句:

5d656ba8-9df4-11ef-8084-92fbcf53809c.png

02#

二:if語句

(1):if語句

一個 if 語句 由一個布爾表達式后跟一個或多個語句組成。

5d732fa4-9df4-11ef-8084-92fbcf53809c.png

如果布爾表達式為 true ,則 if 語句內的代碼塊將被執行。如果布爾表達式為 false ,則 if 語句結束后的第一組代碼(閉括號后)將被執行

編寫一個簡單的程序:

5d7a59f0-9df4-11ef-8084-92fbcf53809c.png

運行結果為:

5d8f4b80-9df4-11ef-8084-92fbcf53809c.png

(2):if...else 語句

一個 if 語句 后可跟一個可選的 else 語句,else 語句在布爾表達式為 false 時執行。

5d9bf0f6-9df4-11ef-8084-92fbcf53809c.png

如果布爾表達式為 true,則執行 if 塊內的代碼。如果布爾表達式為 false,則執行 else 塊內的代碼。


編寫一個簡單的程序:

5daa37ec-9df4-11ef-8084-92fbcf53809c.png

運行結果為:

5dbd990e-9df4-11ef-8084-92fbcf53809c.png

(3)if...else if...else語句

一個 if 語句后可跟一個可選的 else if...else 語句,這可用于測試多種條件。

當使用 if...else if...else 語句時,以下幾點需要注意:

l 一個 if 后可跟零個或一個 else,else 必須在所有 else if 之后。

l 一個 if 后可跟零個或多個 else if,else if 必須在 else 之前。

l 一旦某個 else if 匹配成功,其他的 else if 或 else 將不會被執行。

編寫一個簡單的程序:

5dc90294-9df4-11ef-8084-92fbcf53809c.png

運行結果為:

5ddb4f58-9df4-11ef-8084-92fbcf53809c.png

(4)嵌套 if...else語句

在 C 語言中,嵌套 if...else 語句是合法的,可以在一個 if 或 else if 語句內使用另一個 if 或 else if 語句。

編寫一個簡單的程序:

5de5f5ac-9df4-11ef-8084-92fbcf53809c.png

運行結果為:

5e00087a-9df4-11ef-8084-92fbcf53809c.png

03#

三:switch語句

(1):switch語句

switch 語句是一種有限制的控制流語句,它用于根據表達式的值執行不同的代碼塊。

一個 switch 語句允許測試一個變量等于多個值時的情況,每個值稱為一個 case,且被測試的變量會對每個 switch case 進行檢查。

5e14802a-9df4-11ef-8084-92fbcf53809c.png

編寫一個簡單的程序:

5e1de94e-9df4-11ef-8084-92fbcf53809c.png

運行結果為:

5e2c50a6-9df4-11ef-8084-92fbcf53809c.png

l switch 后面的表達式的值將會與每個 case 后面的常量值進行比較,直到找到匹配的值或者執行到 default(如果存在)。

l 如果找到匹配的值,將執行相應 case 后面的代碼塊,然后跳出 switch 語句。

l 如果沒有匹配的值,并且有 default,則執行 default 后面的代碼塊。

l 如果沒有匹配的值,并且沒有 default,則跳過整個 switch 語句直到結束。

(2):嵌套switch語句

可以在一個 switch 語句內使用另一個 switch 語句。

編寫一個簡單的程序:

5e412440-9df4-11ef-8084-92fbcf53809c.png

運行結果為:

5e4bd98a-9df4-11ef-8084-92fbcf53809c.png


推導一下流程:

l 第6行:開始時n=1,匹配下方case1

l 第8行:m自增1,此時m=3

l 第9行:由于沒有break,繼續執行n自增1,此時n=2

l 第10行:由于沒有break,繼續執行case3

l 第11行:此時匹配n=2

l 第14行:m自增1,n自增1,此時m=4 , n=3

l 第15行:由于存在break,退出該switch語句

l 第19行:m自增1,此時m=5

l 第20行:由于存在break,退出該switch語句

l 最終結果:m=5 , n=3

04#

四:條件運算符

我們在運算符部分提到了條件運算符 ? :,它是C語言唯一一個三目運算符,可以用來替代 if...else 語句。

其中,condition 、block1 和 block2 是表達式。

如果 condition 為真,則計算 block1 的值,結果即為整個表達式的值。如果 condition 為假,則計算 block2 的值,結果即為整個表達式的值。

5e54ec6e-9df4-11ef-8084-92fbcf53809c.png

編寫一個簡單的程序:

5e5d3d4c-9df4-11ef-8084-92fbcf53809c.png

運行結果為:

5e7057ce-9df4-11ef-8084-92fbcf53809c.png

關于更多嵌入式學習資料

將持續更新中

敬請期待

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • C語言
    +關注

    關注

    180

    文章

    7604

    瀏覽量

    136692
  • 運算符
    +關注

    關注

    0

    文章

    172

    瀏覽量

    11079
收藏 人收藏

    評論

    相關推薦

    C語言中if語句、if-else語句和switch語句詳解

    C語言中,有三種條件判斷結構:if語句、if-else語句和switch語句。
    發表于 08-18 16:36 ?1.2w次閱讀
    <b class='flag-5'>C</b><b class='flag-5'>語言</b>中if語句、if-else語句和<b class='flag-5'>switch</b>語句詳解

    技術干貨驛站深入理解C語言:基本數據類型和變量

    C語言中,數據類型和變量是編程的基礎,也是理解更復雜概念的關鍵。數據類型決定了變量的內存分配、存儲范圍和操作方式,而變量則是存儲數據的容器。本篇文章將從基本數據類型和變量兩個方面,帶你深入
    的頭像 發表于 07-26 17:53 ?2091次閱讀
    <b class='flag-5'>技術</b><b class='flag-5'>干貨</b><b class='flag-5'>驛站</b> ▏<b class='flag-5'>深入理解</b><b class='flag-5'>C</b><b class='flag-5'>語言</b>:基本數據類型和變量

    技術干貨驛站深入理解C語言掌握程序結構知識

    的HelloWorld程序開始,讓我們深入探討C語言的程序構成和基本語法規則。一:C語言程序結構先來看一個簡單的HelloWorld程序:一
    的頭像 發表于 07-27 08:45 ?1348次閱讀
    <b class='flag-5'>技術</b><b class='flag-5'>干貨</b><b class='flag-5'>驛站</b> ▏<b class='flag-5'>深入理解</b><b class='flag-5'>C</b><b class='flag-5'>語言</b>:<b class='flag-5'>掌握</b>程序結構知識

    技術干貨驛站深入理解C語言掌握常量,讓你的代碼更加穩固高效!

    C語言的世界中,常量是一種不可忽視的元素。無論你是在編寫簡單的代碼,還是構建復雜的系統,常量都能為你的程序帶來更高的穩定性和可靠性。在這篇文章中,我們將深入探討C
    的頭像 發表于 08-29 13:59 ?2839次閱讀
    <b class='flag-5'>技術</b><b class='flag-5'>干貨</b><b class='flag-5'>驛站</b> ▏<b class='flag-5'>深入理解</b><b class='flag-5'>C</b><b class='flag-5'>語言</b>:<b class='flag-5'>掌握</b>常量,讓你的代碼更加穩固高效!

    深入理解C語言比較有用的幾個資料

    這里有三個對深入理解C語言的資料,覺得不錯,分享一下
    發表于 08-07 21:37

    51單片機C語言講義(譚浩強)以及深入理解C指針

    本帖最后由 發燒友之麒麟 于 2014-10-6 09:19 編輯 C語言講義(譚浩強)及深入理解C指針,自己在用的資料,覺得寫得挺好的就拿出來分享,需要的請回[attach]2
    發表于 10-02 17:05

    C語言有哪些應用

    ,WOELD!”,點亮單片機的LED等,大用來進行嵌入式系統開發、寫操作系統和實現其他高級語言掌握C語言有助于我們學習其他編程
    發表于 07-20 06:58

    對棧的深入理解

    為什么要深入理解棧?做C語言開發如果棧設置不合理或者使用不對,棧就會溢出,溢出就會遇到無法預測亂飛現象。所以對棧的深入理解是非常重要的。注:動畫如果看不清楚可以電腦看更清晰啥是棧先來看
    發表于 02-15 07:01

    為什么要深入理解

    [導讀] 從這篇文章開始,將會不定期更新關于嵌入式C語言編程相關的個人認為比較重要的知識點,或者踩過的坑。為什么要深入理解棧?做C語言開發如
    發表于 02-15 06:09

    C++語言基礎講解視頻Switch分支條件判斷語句

    C++語言基礎講解視頻Switch分支條件判斷語句
    發表于 01-14 08:00 ?7次下載

    深入理解C指針(C/C++程序員進階必備,透徹理解指針與內存管理)pdf

    深入理解C指針
    發表于 03-21 09:42 ?118次下載

    深入探索Linux中的C語言

    本章將深入探索 Linux 中的 C 語言。在本章中,我們將學到更多關于編譯器、源碼二進制程序的 4 個步驟、如何使用 Make 工具以
    的頭像 發表于 03-14 16:48 ?1880次閱讀

    嵌入式C語言的結構特點

    過程中,不論是基于寄存器開發還是基于庫開發,深入理解掌握嵌入式C語言的函數、指針、結構體是學習STM32的關鍵。嵌入式C
    的頭像 發表于 11-24 16:16 ?673次閱讀
    嵌入式<b class='flag-5'>C</b><b class='flag-5'>語言</b>的結構特點

    技術干貨驛站深入理解C語言:編程高手必備,全方位解析運算符的核心技能!

    過程中發揮著重要作用,還對程序的性能和穩定性產生直接影響。繼上一期對C語言常量的深入分析后,本文將進一步探討C語言中的常用運算符,詳細解析其
    的頭像 發表于 09-18 15:56 ?349次閱讀
    <b class='flag-5'>技術</b><b class='flag-5'>干貨</b><b class='flag-5'>驛站</b> ▏<b class='flag-5'>深入理解</b><b class='flag-5'>C</b><b class='flag-5'>語言</b>:編程高手必備,全方位解析運算符的核心技能!

    深入理解C語言:循環語句的應用與優化技巧

    能讓你的代碼更加簡潔明了,還能顯著提升程序執行效率。本文將詳細介紹C語言中的三種常見循環結構——while循環、for循環和do...while循環,帶你深入理解
    的頭像 發表于 12-07 01:11 ?106次閱讀
    <b class='flag-5'>深入理解</b><b class='flag-5'>C</b><b class='flag-5'>語言</b>:循環語句的應用與優化技巧
    主站蜘蛛池模板: 亚洲在线中文无码首页| 欧美一区二区激情视频| 国产精品视频大全| av女优快播| 18禁在线无遮挡羞羞漫画| 樱花动漫成人隐藏入口| 亚洲午夜久久久无码精品网红A片| 性欧美video| 亚洲 制服 欧美 中文字幕| 丝瓜视频在线免费| 婷婷精品国产亚洲AV在线观看| 日本无码色哟哟婷婷最新网站 | 成人精品视频| xxnx动漫| 纯肉无码AV在线看免费看| yellow日本动漫观看免费| WWW久久只有这里有精品| 白丝制服被啪到喷水很黄很暴力| MATURETUBE乱妇| 成人国产在线看不卡| 俄罗斯雏妓的BBB孩交| 国产成人h在线视频| 国产精品综合AV一区二区国产馆 | 欲香欲色天天综合和网| 再深点灬舒服灬太大了在线视频 | 强奷漂亮女老板在线播放| 青青伊人久久| 甜性涩爱免费下载| 亚洲国产系列一区二区三区| 亚洲一区在线播放| 中文字幕在线视频免费观看| 99久久久无码国产精品免费人妻| 99影视久久电影网久久看影院 | 亚洲精品国产乱码AV在线观看| 亚洲精品久久7777777| 有人在线观看的视频吗免费| 91九色精品国产免费| 成人在线观看国产| 国产亚洲精品99一区二区| 久久亚洲A片COM人成A| 欧美亚洲精品午夜福利AV|