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

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

3天內不再提示

C語言的循環與分支

汽車電子技術 ? 來源:微亮筆記 ? 作者: PASSION ? 2023-02-21 15:32 ? 次閱讀

我們大家都知道,c語言是一門** 結構化 **的程序設計語言,程序的運行都是以某種結構和順序為骨架去執行的,那么本期就向大家介紹一下c語言的幾種結構。

本期主要介紹分支與循環語句

1.什么是語句

2.if語句

3.switch語句

  • 什么是語句

c語言中用一個分號 ;隔開的就是一條語句。例如:

int main()
{
   int a=0;//語句由分號隔開,一條語句由分號表示結束
   printf ("%d\\n" , a);
   ; //這也是一種語句
   return 0;
}

一個程序基本的組成單位就是語句,值得一提的是 即使一個語句中只有一個分號(如上所示),它也是一條正確的語句,我們后面會有特殊的用法。

  • 分支語句

圖片

如上圖,我們在編程中常會遇到上述的結構,它們含有兩個或多個分支,如果想準確表達上圖所表示的意思,我們就要使用分支語句,其中包含if語句和switch語句。

  • lf語句

if語句的語法結構

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


if(表達式){
??語句1;
}
else
{
??語句2;
}
//多分支
if(表達式1){
??語句1
}
else if(表達式2){
??語句2;
}
else {
??語句3;
}

以上三種結構幾乎可用于一切的分支情況。

  • if語句如何執行

對于這種結構的分支語句來說:

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

只需要判斷表達式的值是否為真,若表達式為真則執行語句,否則跳出分支語句。

如何判斷表達式是否為真?

表達式為零則為假,表達式為非零則為真

對于這種結構的分支語句來說:

if(表達式){
??語句1;
}
else
{
??語句2;
}

只需要判斷表達式的值是否為真,若表達式為真則執行語句1,否則執行語句2。

對于這種結構的分支語句來說:

if(表達式1){
??語句1
}
else if(表達式2){
??語句2;
}
else {
??語句3;
}

首先判斷表達式1的值是否為真,如果為真則執行語句1,否則判斷表達式2的值是否為真,若表達式2的值為真則執語句2,否則執行語句3。

值得一提的是,if自動匹配之后的一條語句,但若超過兩條,則需要用”{}“括起來。如下圖所示,程序返回了”4“,驗證了我們的說法。

#include
int  test(int a)
{
  if (a)
    return 2;//若if包含下一條語句,程序會打印4,若包含兩條以上,程序會打印2
  return 4;
}
int main()
{
  int a = 1;
  int b=test(a);
  printf("%d\\n", b);
  return 0;
}
  • switch語句

switch也是一種分支語句。常常用于多分支的情況,例如,下面這種情景:

輸入1,輸出星期一
輸入2,輸出星期二
輸入3,輸出星期三
輸入4,輸出星期四
輸入5,輸出星期五
輸入6,輸出星期六
輸入7,輸出星期日

switch語句的語法結構

switch(整型表達式)
{
??case 整型表達式值1:
????語句1;
??case 整型表達式值2:
????語句2;
??case 整型表達式值3:
????語句3;
??case 整型表達式值4:
????語句4;
…
??default :
????語句5;
}
  • switch語句如何執行

    switch語句首先判斷整型表達式的值,當整型表達式與某個case后的值i相等時,則執行語句i至最后一條語句,當整型表達式的值與任意一個case后的值均不相等,則執行default語句至最后一條語句。

  • switch中的break

    switch語句只能選擇從某條語句開始執行,并不能選擇只執行某條case后的語句。也就是說,switch語句在開始執行后,除非遇到break或return,否則語句會逐個執行接下來的case語句直到語句結束。這里可以借用break語句來實現多分支。

那么上面打印星期幾的問題就可用以下代碼來解決:

# include 
int main()
{
  int day;
  printf("請輸入day的值\\n");
  scanf_s("%d", &day);
  switch (day) {
  case 1:printf("星期一\\n");break;
  case 2:printf("星期二\\n");break;
  case 3:printf("星期三\\n");break;
  case 4:printf("星期四\\n");break;
  case 5:printf("星期五\\n");break;
  case 6:printf("星期六\\n");break;
  case 7:printf("星期日\\n");break;
  }
}
  • switch語句的特殊應用場景

那么如果我們的需求變成了”輸入15,輸出工作日,輸入67,輸出休息日“的話,我們可以通過調整輸出語句和break 語句的位置來實現。如下所示

#include
#include
#include
int main()
{
  int day;
  printf("請輸入day的值\\n");
  scanf_s("%d", &day);
  switch (day) {
  case 1:
  case 2:
  case 3:
  case 4:
  case 5:printf("工作日\\n");break;
  case 6:
  case 7:printf("休息日\\n");break;
  }
}
聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • C語言
    +關注

    關注

    180

    文章

    7546

    瀏覽量

    131136
  • 結構化
    +關注

    關注

    0

    文章

    26

    瀏覽量

    10273
  • 程序設計語言

    關注

    0

    文章

    3

    瀏覽量

    6601
收藏 人收藏

    評論

    相關推薦

    C語言中for循環的用法和應用 C語言中for循環與while循環的區別

    C語言中的循環結構時,for循環是最常用的一種。它允許重復執行一段代碼,直到滿足特定條件為止。
    發表于 08-18 16:33 ?1181次閱讀
    C<b class='flag-5'>語言</b>中for<b class='flag-5'>循環</b>的用法和應用 C<b class='flag-5'>語言</b>中for<b class='flag-5'>循環</b>與while<b class='flag-5'>循環</b>的區別

    C語言循環結構的使用方法

    詳細介紹了C語言while循環結構、do-while循環結構、for循環結構、循環退出語句的語法和使用方法。
    發表于 11-02 11:26 ?509次閱讀
    C<b class='flag-5'>語言</b><b class='flag-5'>循環</b>結構的使用方法

    入門——C語言:多路分支#C語言

    C語言
    jf_49750429
    發布于 :2022年11月16日 15:34:54

    學習mcu先學習C語言--譚浩強c語言(最經典的c語言學習)

    數據類型、運算符與表達式 4最簡單的C程序設計—順序程序設計 5分支結構程序 6循環控制 7數組 8函 數 9預處理命令 10 指針 11 結構體與共用體 12 位運算 13 文件
    發表于 06-09 21:34

    學習C語言的用途~

    方式可使程序層次清晰,便于使用、維護以及調試。C語言是以函數形式提供給用戶的,這些函數可方便的調用,并具有多種循環、條件語句控制程序流向,從而使程序完全結構化。 5. C語法限制不太
    發表于 05-03 16:06

    【原創分享】單片機C語言If和for等基本語句結構

    (sequencing),分支/選擇(alternation)和循環(iteration)這三種流程結構就足以表達所有程序的本質。C語言作為結構化編程
    發表于 06-21 13:27

    C語言多層循環的方法有哪些

    C語言多層循環的幾種方法
    發表于 07-14 08:29

    c語言程序設計案例教程

    據類型和運算符、順序程序設計、分支程序設計、循環結構、數組等。學習C語言一定要知道它的利器——指針。這正是C
    發表于 07-20 07:25

    c語言for循環經典案例分享

    c語言for循環經典案例#includeint main(int argc,char*argv[]){int i=0;int sum=0;for(i=1;i
    發表于 07-20 06:13

    怎么實現c語言循環鏈表?

    怎么實現c語言循環鏈表?
    發表于 10-19 06:07

    C語言的3種循環結構分析

    C語言循環結構有for循環、while循環、do循環和goto循環。本文介紹前3種
    的頭像 發表于 05-20 13:43 ?1w次閱讀
    C<b class='flag-5'>語言</b>的3種<b class='flag-5'>循環</b>結構分析

    從零開始跟我學C語言之分支結構(下)

    Hi!這里是漁火。今天我們繼續來講C語言分支結構。在C語言里,可以使用if-else實現分支結構。
    的頭像 發表于 02-07 09:27 ?543次閱讀

    C語言循環分支-2

    而在c語言中我們經常會需要重復地進行一些指令,但是不斷的編輯重復代碼不僅很繁瑣,還容易出現bug,因此循環語句的使用就非常有必要。今天要介紹的就是循環語句相關的知識。
    的頭像 發表于 02-21 15:35 ?524次閱讀
    C<b class='flag-5'>語言</b>的<b class='flag-5'>循環</b>與<b class='flag-5'>分支</b>-2

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

    讀取更多技術文章,請掃碼關注前言在C語言中,按照程序的執行流程不同,分為順序結構、分支結構和循環結構。多么復雜的邏輯事物都是由這三個結構組成。順序結構順序結構是最簡單的一種流程結構,它采用自上而下
    的頭像 發表于 04-02 11:00 ?1008次閱讀
    C<b class='flag-5'>語言</b>基礎篇--選擇/順序/<b class='flag-5'>循環</b>結構

    c語言在while中嵌套if循環

    C語言是一種廣泛使用的面向過程編程語言,它提供了許多控制結構來幫助程序員實現復雜的邏輯和流程控制。其中,while循環和if語句是非常常見和重要的控制結構。本文將詳細介紹C語言中在wh
    的頭像 發表于 11-22 10:09 ?2024次閱讀
    亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看
    <acronym id="s8ci2"><small id="s8ci2"></small></acronym>
    <rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
    <acronym id="s8ci2"></acronym>
    <acronym id="s8ci2"><center id="s8ci2"></center></acronym>