国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

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

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

3天內不再提示

C語言基礎篇--選擇/順序/循環結構

正點原子 ? 2022-04-02 11:00 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

以下文章來源于:公_眾_號開源電子網

前言

C語言中,按照程序的執行流程不同,分為順序結構、分支結構和循環結構。多么復雜的邏輯事物都是由這三個結構組成。

順序結構

順序結構是最簡單的一種流程結構,它采用自上而下的方式逐條執行各語句。簡易順序結構如下所示:

pYYBAGJHtWuAAAbSAAA5cJxcb7Q569.png

分支結構

分支結構,又稱選擇結構,可以控制程序的部分流程是否被執行,或者是從多條執行路徑種選擇一條來執行。在C語言中有兩種選擇語句:①if語句,用來實現兩個分支的選擇結構②switch語句,用來實現多分支的選擇結構。

選擇結構if,具體用法如表格所示:

if (表達式) {語句}

if (表達式) {語句1}

else {語句2}

if (表達式) { if (表達式) {語句} }

else {語句}

if (表達式) {語句}

else if (表達式) {語句}

else {語句}

選擇結構switch,具體使用格式如下:

switch(整型表達式)
{
  case整型常量表達式1:
  [語句1;break;]
  case整型常量表達式2:
  [語句2;break;]
  case整型常量表達式3:
  [語句3;break;]
 …
  [default:
  語句n;break;]
}

在程序運行時,首先會計算整型表達式的值,然后用該值與后面的所有case標簽進行一一匹配(即查看該值是否與case標簽的表達式的值相同)。如果有匹配的case標簽,則從該case標簽起,執行后續的語句,直至遇到break語句為止。如果沒有匹配到case標簽,則從default標簽起,執行后續的語句,直到遇到break為止。

這里特別需要注意:①case后帶的表達式一定要是常數,并且是整型。②在語句后面通常是有break關鍵字。③ 最后一般有default,即前面case沒有一個符合的情況,就會調到default里執行。雖然說語法上可以允許沒有default,但是為了完整,建議是需要的。

那么if和switch這兩種選擇結構有啥區別呢?

if語句比較適用在對比條件比較復雜的且分支比較少的情況下使用;switch語句則是適用在對比條件比較簡單且分支比較多的情況下使用;正常情況下,先考慮能不能用switch語句,假如不滿足使用需求,則使用if語句。當然,不管黑貓白貓捉到老鼠的就是好貓,能實現效果即可。

循環結構

循環結構就是重復執行一個語句塊,直到不滿足某個條件為止。在C語言中有三種循環語句:①while語句②do while語句③for語句

while語句也稱while循環,具體使用格式如下:

while(表達式)
  語句

while語句根據小括號內表達式的值來決定是否執行語句,當表達式的值為假時,循環結束,語句不會被執行;假如表達式的值為真,語句被執行,然后會再次判斷表達式的值,如此反復,直至表達式的值為假。

do while語句也稱do while循環,具體使用格式如下:

do 
語句
while(表達式)

從結構上,由“do”關鍵字開頭,緊接著是語句也就是循環體了,最后是while關鍵字和表達式。do while語句是先執行循環體,然后再檢查條件是否成立,若成立,再執行循環體,這就是跟while語句不同。

for語句,相對前面兩個循環語句復雜一點,具體使用格式如下:

for(表達式1;表達式2;表達式3)
語句

相比前面的while和do while語句,for語句的表達式有三個,表達式之間用‘;’隔開,這三個表達式的作用和執行時期是不一樣的,具體情況如下表:

表達式作用執行時期
表達式1通常在這個地方對循環變量進行初始化或賦值開始時執行1次
表達式2表達式的值為真時執行循環體,為假時結束for語句循環體執行前
表達式3通常在這個地方對循環變量進行修改,通常是加減操作循環體執行后

具體執行流程:在for語句被執行前,首先會執行表達式1,然后再檢查表達式2的值:假如為假,不執行循環體,結束for語句;假如為真,則執行循環體語句。執行完循環語句后,再去執行表達式3,并再次去檢查表達式2的值,如此反復,直到表達式2的值為假,結束for語句。

這三個循環語句,哪種情況用哪個好呢?

如果程序中固定了循環的次數,那么就可以采用for語句。如果程序中必須執行一次程序,那么就可以使用do while語句。除了以上兩種情況,就可以使用while語句。

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

    關注

    6076

    文章

    45494

    瀏覽量

    670272
  • 嵌入式
    +關注

    關注

    5198

    文章

    20442

    瀏覽量

    333986
  • C語言
    +關注

    關注

    183

    文章

    7644

    瀏覽量

    145570
  • 電子技術
    +關注

    關注

    19

    文章

    930

    瀏覽量

    60019
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    C語言主要特點

    。 3.數據類型豐富。C語言提供的數據類型包括整形、浮點型、字符型、數組類型、指針類型、結構體類型和共用體類型等,C99又擴充了復數浮點型、超長整型(long long)和布爾類型(b
    發表于 01-05 07:41

    C語言循環隊列

    data; } return -1; // Buffer is empty } 循環隊列是一種高效的數據結構,適用于緩沖區和數據流應用,例如串口通信接收緩沖。
    發表于 12-12 08:28

    C語言的編程技巧

    設計,分層開發代碼,便于理解和維護。 ?8、避免使用GOTO語句?:盡管GOTO語句在某些情況下仍然有用,但現代編程更傾向于使用函數和循環控制結構,以提高代碼的可讀性和維護性。 ?9、利用C
    發表于 11-27 06:46

    C語言程序的結構

    ,87LPC764有4KB的Flash ROM,而筆者的程序量只有2KB多點,因而第一個想法是改用C語言作為主要的開發語言,應該不至于導致代碼空間不夠用。其次,考慮到需要定時功能的模塊(或稱任務,以下統稱任務
    發表于 11-26 08:12

    C語言的分支結構介紹

    1.簡單if語句 C語言中的分支結構語句中的if條件語句。 簡單if語句的基本結構如下: 代碼語言:javascript if(表達
    發表于 11-25 07:48

    控制結構介紹

    1. 順序結構:按照代碼的書寫順序,逐行執行程序。這是最基本的程序結構。 2. 選擇結構:根據
    發表于 11-24 06:43

    C語言結構體使用

    型的數據組合。 結構體的聲明與定義 結構體的聲明一般形式為: c struct 結構體名{ 成員1; 成員2; ... }; //注意分號 例如:
    發表于 11-12 08:30

    第4章 C語言基礎以及流水燈的實現(4.5 4.6)

    4.5while循環語句 在單片機C語言編程的時候,每個程序都會固定的加一句while(1),這條語句就可以起到死循環的作用。對于while語句來說,他的一般形式是: ? ? ? ?w
    的頭像 發表于 11-06 11:21 ?350次閱讀

    人工智能行業如何使用for循環語句進行循環

    人工智能行業可以使用以下是關于for循環在不同編程語言中的基本用法說明: Python中的for循環: 主要用于遍歷序列(列表、元組、字符串等) 典型結構:for item in se
    的頭像 發表于 09-10 12:55 ?564次閱讀

    基礎3:掌握Python中的條件語句與循環

    在Python編程語言中,條件語句和循環是構成復雜邏輯和數據處理的基石。本篇基礎教程將幫助您深入了解Python中的條件語句和循環結構,讓您能夠更好地控制程序流程。 條件語句 條件語句
    發表于 07-03 16:13

    C語言精彩編程百例-364頁

    內容提要 C是一種通用的程序設計語言,它包含了緊湊的表達式、豐富的運算符集合、現代控制流以及數據結構等四個部分。C語言功能豐富,衣達能力強,
    發表于 06-13 17:28

    《ESP32S3 Arduino開發指南》第三章 C/C++語言基礎

    ++基礎,由于篇幅有限,在此僅對C/C++語言基礎進行簡單介紹。本章將分為如下9個小節:3.1 數據類型3.2 運算符3.3 表達式3.4 數組3.5 字符串3.6 注釋3.7 順序
    發表于 06-10 09:20

    深入理解C語言C語言循環控制

    C語言編程中,循環結構是至關重要的,它可以讓程序重復執行特定的代碼塊,從而提高編程效率。然而,為了避免程序進入無限循環,
    的頭像 發表于 04-29 18:49 ?2043次閱讀
    深入理解<b class='flag-5'>C</b><b class='flag-5'>語言</b>:<b class='flag-5'>C</b><b class='flag-5'>語言</b><b class='flag-5'>循環</b>控制

    必看!15個C語言常見陷阱及避坑指南

    ? C語言雖強大,但隱藏的“坑”也不少!稍不留神就會導致程序崩潰、數據異常。本文整理15個高頻陷阱,助你寫出更穩健的代碼! ? 陷阱1:運算符優先級混淆? 問題:運算符優先級不同可能導致計算順序錯誤
    的頭像 發表于 03-16 12:10 ?1778次閱讀

    全套C語言培訓資料—PPT課件

    全套C語言培訓資料,共427頁,13個章節:C語言概述、程序的靈魂—算法、數據類型 & 運算符與表達式、順序程序設計、
    發表于 03-12 14:50