在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

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

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

3天內不再提示

C語言基礎篇--選擇/順序/循環(huán)結構

正點原子 ? 2022-04-02 11:00 ? 次閱讀

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

前言

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

順序結構

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

pYYBAGJHtWuAAAbSAAA5cJxcb7Q569.png

分支結構

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

選擇結構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標簽起,執(zhí)行后續(xù)的語句,直至遇到break語句為止。如果沒有匹配到case標簽,則從default標簽起,執(zhí)行后續(xù)的語句,直到遇到break為止。

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

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

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

循環(huán)結構

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

while語句也稱while循環(huán),具體使用格式如下:

while(表達式)
  語句

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

do while語句也稱do while循環(huán),具體使用格式如下:

do 
語句
while(表達式)

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

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

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

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

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

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

這三個循環(huán)語句,哪種情況用哪個好呢?

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

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

    關注

    6058

    文章

    44822

    瀏覽量

    644842
  • 嵌入式
    +關注

    關注

    5125

    文章

    19438

    瀏覽量

    313181
  • C語言
    +關注

    關注

    180

    文章

    7628

    瀏覽量

    139746
  • 電子技術
    +關注

    關注

    18

    文章

    922

    瀏覽量

    57182
收藏 人收藏

    評論

    相關推薦

    深入理解C語言C語言循環(huán)控制

    C語言編程中,循環(huán)結構是至關重要的,它可以讓程序重復執(zhí)行特定的代碼塊,從而提高編程效率。然而,為了避免程序進入無限循環(huán)
    的頭像 發(fā)表于 04-29 18:49 ?374次閱讀
    深入理解<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'>循環(huán)</b>控制

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

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

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

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

    技術干貨驛站 ▏深入理解C語言:嵌套循環(huán)循環(huán)控制的底層原理

    大家好!在上一節(jié)中,我們學習了C語言中的基本循環(huán)語句,如for、while和do...while循環(huán)。今天,我們將進一步探討嵌套循環(huán)
    的頭像 發(fā)表于 02-21 18:26 ?348次閱讀
    技術干貨驛站  ▏深入理解<b class='flag-5'>C</b><b class='flag-5'>語言</b>:嵌套<b class='flag-5'>循環(huán)</b>與<b class='flag-5'>循環(huán)</b>控制的底層原理

    分析C語言代碼結構的設計問題

    來分析一個C語言代碼結構的設計問題。 這段代碼,使用了兩次malloc,分別給 p1 和 p2 申請了內存。用完后,內存釋放,防止內存泄漏。 大家覺得,這樣的代碼設計有沒有問題。 代碼是某位學員在
    的頭像 發(fā)表于 02-11 09:31 ?262次閱讀

    深入理解C語言循環(huán)語句的應用與優(yōu)化技巧

    在程序設計中,我們常常需要重復執(zhí)行某一段代碼。為了提高效率和簡化代碼,循環(huán)語句應運而生。C語言作為一門經典的編程語言,提供了多種循環(huán)控制
    的頭像 發(fā)表于 12-07 01:11 ?453次閱讀
    深入理解<b class='flag-5'>C</b><b class='flag-5'>語言</b>:<b class='flag-5'>循環(huán)</b>語句的應用與優(yōu)化技巧

    結構體成員的順序會影響結構體的大小嗎

    相同的結構體成員,如果把順序調整一下,會不會影響結構體的大小? 答案是會的,這主要跟字節(jié)對齊有關。 比如這樣的結構體,前面兩個是 char 類型,后面跟上一個 int 類型。 stru
    的頭像 發(fā)表于 11-25 16:24 ?455次閱讀

    如何選擇適合自己的編程語言

    在當今這個技術日新月異的時代,編程語言選擇對于軟件開發(fā)者來說至關重要。不同的編程語言有著不同的優(yōu)勢和適用場景,因此,選擇合適的編程語言不僅
    的頭像 發(fā)表于 11-15 09:37 ?1619次閱讀

    C語言C++中結構體的區(qū)別

    同樣是結構體,看看在C語言C++中有什么區(qū)別?
    的頭像 發(fā)表于 10-30 15:11 ?582次閱讀

    C語言與Java語言的對比

    C語言和Java語言都是當前編程領域中的重要成員,它們各自具有獨特的優(yōu)勢和特點,適用于不同的應用場景。以下將從語法特性、內存管理、跨平臺性、性能、應用領域等多個方面對C
    的頭像 發(fā)表于 10-29 17:31 ?834次閱讀

    計算機程序的三種基本控制結構是什么

    順序被執(zhí)行一次,直到程序結束。在順序結構中,每個語句都是順序執(zhí)行的,不存在任何跳轉和分支。 選擇結構
    的頭像 發(fā)表于 09-04 17:00 ?2385次閱讀

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

    在計算機編程的世界中,C語言被廣泛認可為一門強大而高效的編程語言,其簡潔的語法和直接的指令使得它成為了許多程序員的首選。了解C語言的程序
    的頭像 發(fā)表于 07-27 08:45 ?1707次閱讀
    技術干貨驛站 ▏深入理解<b class='flag-5'>C</b><b class='flag-5'>語言</b>:掌握程序<b class='flag-5'>結構</b>知識

    【《大語言模型應用指南》閱讀體驗】+ 基礎

    今天開始學習《大語言模型應用指南》第一——基礎,對于人工智能相關專業(yè)技術人員應該可以輕松加愉快的完成此閱讀,但對于我還是有許多的知識點、專業(yè)術語比較陌生,需要網上搜索學習更多的資
    發(fā)表于 07-25 14:33

    PLC常用編程語言有哪些

    語言多種多樣,每種語言都有其獨特的特點和適用場景。本文將詳細介紹PLC常用的編程語言,包括梯形圖(LD)、指令表(IL)、功能模塊圖(FBD)、順序功能流程圖(SFC)以及
    的頭像 發(fā)表于 06-14 16:58 ?2421次閱讀

    嵌入式中C語言結構體基本實現(xiàn)

    C語言中的數組只能允許程序員定義存儲相同類型數據。但是結構C語言編程中允許您存儲不同數據類型的數據。
    的頭像 發(fā)表于 05-11 08:49 ?1371次閱讀
    嵌入式中<b class='flag-5'>C</b><b class='flag-5'>語言</b><b class='flag-5'>結構</b>體基本實現(xiàn)
    主站蜘蛛池模板: 中文字幕在线观看一区二区三区 | 二区三区视频 | 国产va精品免费观看 | 色射啪| 日本v片免费一区二区三区 日本www.色 日本wwwwww | 久久精品亚洲精品国产欧美 | 国产一级特黄生活片 | 亚洲1314 | 亚洲午夜久久 | 午夜欧美视频 | 美女色18片黄黄色 | 野外啪啪抽搐一进一出 | 欧美猛操 | 日韩在线影院 | 国产aaaaa一级毛片 | 天天躁夜夜躁 | 日韩三级一区 | 亚洲一区不卡视频 | 正在播放国产巨作 | 午夜看大片 | 国产网站在线免费观看 | 日韩成a人片在线观看日本 日韩成人黄色 | 黄色hd| 免费爱爱小视频 | 亚洲综合区图片小说区 | 亚洲一区在线观看视频 | 中文字幕日本一区波多野不卡 | 国产三级久久久精品三级 | 看一级特黄a大片日本片 | 国产午夜精品一区二区三区 | 特级aaaaaaaaa毛片免费视频 | 韩国三级视频网站 | 怡红院免费va男人的天堂 | 91视频污污版 | 91大神在线精品视频一区 | 中国日韩欧美中文日韩欧美色 | 国产黄色高清视频 | 亚洲黄色三级视频 | 天天做天天添婷婷我也去 | 欧美hhh | 国产日本在线观看 |