精品国产人成在线_亚洲高清无码在线观看_国产在线视频国产永久2021_国产AV综合第一页一个的一区免费影院黑人_最近中文字幕MV高清在线视频

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

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

從零開始跟我學(xué)C語言之分支結(jié)構(gòu)(上)

jf_ZqFkd6Up ? 來源:linux迷 ? 2023-02-06 10:14 ? 次閱讀

Hi!這里是漁火。

今天我們來講分支結(jié)構(gòu)。計(jì)算機(jī)在執(zhí)行程序時(shí),通常都是按照語句的書寫順序執(zhí)行的,但在許多情況下需要根據(jù)條件選擇所要執(zhí)行的語句,這就選擇所要的語句。C語言中用于實(shí)現(xiàn)分支結(jié)構(gòu)的控制語句主要有:if語句、switch語句。

我們來看一個(gè)例子感受下分支結(jié)構(gòu)。

【1.1】輸入三角形的三條邊,判斷能否構(gòu)成三角形,若能則計(jì)算并輸出三角形的面積,否則給出出錯提示。


#include
#include
//2023.2.1漁火 Linux迷 www.linuxmi.com
int main()
{
  int a,b,c;
  float ar;
  double s;
  printf("請輸入三角形的三條邊長");
  scanf("%d,%d,%d",&a,&b,&c);
  s=(a+b+c)/2.0;
  if(a+b<=c||b+c<=a||a+c<=b)
    printf("不能構(gòu)成三角形
");
  else {
    ar=sqrt(s*(s-a)*(s-b)*(s-c));
    printf("三角形的面積是:%f
",ar);
  } 
          //2023.2.1漁火 Linux迷 www.linuxmi.com
  return 0;
}
運(yùn)行結(jié)果如下:

linuxmi@linuxmi /home/linuxmi/www.linuxmi.com                                     
 gcc -o linuxmi linuxmi.c -lm


linuxmi@linuxmi /home/linuxmi/www.linuxmi.com                                     
 ./linuxmi
請輸入三角形的三條邊長7,8,9
三角形的面積是:26.832815
773deb24-a565-11ed-bfe3-dac502259ad0.png

分析:程序運(yùn)行時(shí),首先輸入三角形的三條邊,分別保存在三個(gè)整型變量a,b,c中,然后根據(jù)三角形的構(gòu)成條件,判斷任意兩條邊之和是否大于第三邊。如果不滿足這個(gè)條件,則三條邊不能構(gòu)成三角形,如果滿足這個(gè)條件,就可以根據(jù)相應(yīng)的公式計(jì)算三角形的面積。

1、關(guān)系運(yùn)算符。關(guān)系運(yùn)算符用于判斷兩個(gè)操作數(shù)的大小關(guān)系。

注意:(1)關(guān)系運(yùn)算符都是雙目運(yùn)算符,其結(jié)合方向是左結(jié)合。(2)關(guān)系運(yùn)算符的優(yōu)先級低于算術(shù)運(yùn)算符,但高于賦值運(yùn)算符。(3)關(guān)系運(yùn)算符中,>、<、>=、<=的優(yōu)先級相同,==、!=的優(yōu)先級相同,前者的優(yōu)先級高于后者。

2、關(guān)系表達(dá)式。用關(guān)系運(yùn)算符將兩個(gè)表達(dá)式鏈接起來的式子稱為關(guān)系表達(dá)式。關(guān)系表達(dá)式的一般形式為:表達(dá)式1關(guān)系運(yùn)算符 表達(dá)式2.功能:比較兩個(gè)表達(dá)式的大小,返回一個(gè)邏輯值。關(guān)系表達(dá)式中允許出現(xiàn)嵌套的情況。

注意:(1)注意區(qū)分運(yùn)算符”=“和”==“。”=“是賦值運(yùn)算符,”==“是關(guān)系運(yùn)算符。(2)對實(shí)數(shù)進(jìn)行相等判斷可能得不到正確的結(jié)果。(3)關(guān)系表達(dá)式中可以出現(xiàn)賦值運(yùn)算符。

關(guān)系表達(dá)式主要用于分支結(jié)構(gòu)的條件判斷。關(guān)系表達(dá)式的結(jié)果是一個(gè)邏輯值”真“或”假“,由于C語言中沒有邏輯值類型的數(shù)據(jù),因此用”1“表示“真”,”0“表示”假“。

【2.1】關(guān)系運(yùn)算

#include
//2023.2.1漁火 Linux迷 www.linuxmi.com
int main()
{
  
  char c='m';
  int i=10,j=20,k=30;
  float x=13e+5,y=10.85;
  printf("%d,%d",'a'+5=k+1);
  printf("%d,%d",1
運(yùn)行結(jié)果如下:

776497c4-a565-11ed-bfe3-dac502259ad0.png


1、邏輯運(yùn)算符。關(guān)系表達(dá)式只能描述描述單一的條件。然而邏輯運(yùn)算符可以將若干個(gè)關(guān)系表達(dá)式連接起來才能更好的描述條件,

注意:與運(yùn)算符&&和或運(yùn)算符||都是雙目運(yùn)算符,非運(yùn)算符!為單目運(yùn)算符。

2、邏輯運(yùn)算符。用邏輯運(yùn)算符將兩個(gè)表達(dá)式鏈接起來的式子稱為邏輯表達(dá)式。邏輯表達(dá)式的一般形式為:表達(dá)式1 邏輯運(yùn)算符 表達(dá)式2或邏輯運(yùn)算符 表達(dá)式1。邏輯表達(dá)式的結(jié)果也是一個(gè)邏輯值”真“或”假“,即為”1“或”0“。

小白提示:

(1)參與邏輯運(yùn)算的數(shù)據(jù)可以是1和0,也可以是非零值和0,還可以是任何類型的數(shù)據(jù),但最終都是以非0和0來判斷他們是”真“或”假“。

(2)在邏輯表達(dá)式中也可以使用賦值運(yùn)算符。

(3)C語言規(guī)定,只對決定整個(gè)表達(dá)式值所需的最少數(shù)目的子表達(dá)式進(jìn)行計(jì)算。即由在若干個(gè)子表達(dá)式組成的邏輯表達(dá)式中,從左向右計(jì)算,當(dāng)計(jì)算出一個(gè)子表達(dá)式的值就確定了整個(gè)邏輯表達(dá)式的值,之后就不再計(jì)算右邊的剩下的子表達(dá)式的值,這種情況稱之為”短路“。

【3.1】邏輯運(yùn)算符


#include
#include
//2023.2.1漁火 Linux迷 www.linuxmi.com
int main()
{
  
  int a=8,b=8,c=6,d;
  printf("%d,",!a&&!b&&c);
  printf("%d,",!a||!b||c);
  printf("%d
",a>=b&&b>c);
  d=c--||(b-6)&&a++;
  printf("a=%d,b=%d,c=%d,d=%d
",a,b,c,d);
            //2023.2.1漁火 Linux迷 www.linuxmi.com 
  return 0;
}


運(yùn)行結(jié)果如下:

7777cea2-a565-11ed-bfe3-dac502259ad0.png

1、條件運(yùn)算符。條件運(yùn)算符由”?“和”:“兩個(gè)符號組成,用于條件求值,它是一個(gè)三目運(yùn)算符,需要三個(gè)操作數(shù)。條件運(yùn)算符的優(yōu)先級低于邏輯運(yùn)算符、高于賦值運(yùn)算符,它是右結(jié)合。

2、條件表達(dá)式。由條件運(yùn)算符將3個(gè)表達(dá)式連接起來的式子稱為條件表達(dá)式,其一般形式為:表達(dá)式1?表達(dá)式2:表達(dá)式3。條件表達(dá)式的執(zhí)行順序是先計(jì)算表達(dá)式1的值,如果值不為0,表示條件為真,否則表達(dá)式2 的值作為整個(gè)條件表達(dá)式的值,否則表達(dá)式3的值作為整個(gè)條件表達(dá)式的值。

小白提示:

(1)條件表達(dá)式中的表達(dá)式1的類型可以與表達(dá)式2和表達(dá)式3不同,表達(dá)式2和表達(dá)式3的類型也可以不同,此時(shí)系統(tǒng)會自動進(jìn)行轉(zhuǎn)換,結(jié)果為表達(dá)式2 和表達(dá)式3中級別類型較高的,并將其作為條件表達(dá)式的類型。

(2)條件表達(dá)式中表達(dá)式2和表達(dá)式3不僅可以是數(shù)值表達(dá)式,還可以是賦值表達(dá)式或函數(shù)表達(dá)式。

(3)條件表達(dá)式允許嵌套。

審核編輯:湯梓紅

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

    關(guān)注

    87

    文章

    11225

    瀏覽量

    208917
  • Switch
    +關(guān)注

    關(guān)注

    1

    文章

    532

    瀏覽量

    58161
  • C語言
    +關(guān)注

    關(guān)注

    180

    文章

    7598

    瀏覽量

    136174
  • 三角形
    +關(guān)注

    關(guān)注

    0

    文章

    21

    瀏覽量

    11355
  • 數(shù)值
    +關(guān)注

    關(guān)注

    0

    文章

    80

    瀏覽量

    14352

原文標(biāo)題:從零開始跟我學(xué) C 語言之分支結(jié)構(gòu)(上)

文章出處:【微信號:Linux迷,微信公眾號:Linux迷】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    跟我學(xué)C語言之順序結(jié)構(gòu)

    hi!這里是漁火。今天我們來講講 C 語言的順序結(jié)構(gòu)。所謂順序結(jié)構(gòu)就是按照程序代碼的書寫順序,自上而下依次執(zhí)行。我們來看一個(gè)例子,感受下順序結(jié)構(gòu)
    發(fā)表于 02-02 10:06 ?539次閱讀

    從零開始學(xué)單片機(jī)C語言

    本帖最后由 igbt 于 2011-4-21 10:12 編輯 《從零開始學(xué)單片機(jī)C語言》是單片機(jī)入門教材。
    發(fā)表于 04-21 10:04

    從零開始學(xué)電路基礎(chǔ)》(從零開始學(xué)電子技術(shù)叢書)

    電氣控制與PLC技術(shù)].劉建清.掃描版.pdf[從零開始學(xué)電子測量技術(shù)].李建清.掃描版.pdf[從零開始學(xué)CPLD和Verilog.HDL編程技術(shù)].李建清.掃描版.pdf[
    發(fā)表于 06-05 23:12

    從零開始學(xué)單片機(jī)C語言——PDF

    `下載地址:http://yunpan.cn/QGCsezJtF5mjp[從零開始學(xué)單片機(jī)C語言].李建清.掃描版`
    發(fā)表于 09-29 16:28

    從零開始學(xué)單片機(jī)C語言,很全的資料

    `從零開始學(xué)單片機(jī)C語言,很全的資料需要的網(wǎng)盤里取從零開始學(xué)單片機(jī)
    發(fā)表于 07-22 09:20

    從零開始學(xué)電子》叢書全套網(wǎng)盤分享

    從零開始學(xué)模擬電子技術(shù)鏈接:https://pan.baidu.com/s/13rp09WUy3z_CZMJEZMrzkA提取碼:othe【從零開始學(xué)電子叢書】
    發(fā)表于 06-28 18:45

    初學(xué)者都在看!!從零開始學(xué)單片機(jī)C語言從零開始學(xué)電子叢書】

    初學(xué)者都在看!!從零開始學(xué)單片機(jī)C語言從零開始學(xué)電子叢書】
    發(fā)表于 07-27 15:32

    跟我學(xué)數(shù)字電路

    跟我學(xué)數(shù)字電路
    發(fā)表于 04-09 23:09 ?0次下載

    從零開始學(xué)單片機(jī)C語言 李建清.掃描版

    電子發(fā)燒友網(wǎng)站提供《從零開始學(xué)單片機(jī)C語言 李建清.掃描版.txt》資料免費(fèi)下載
    發(fā)表于 08-29 16:59 ?0次下載

    [從零開始學(xué)單片機(jī)C語言].李建清.掃描版_部分2

    電子發(fā)燒友網(wǎng)站提供《[從零開始學(xué)單片機(jī)C語言].李建清.掃描版_部分2.txt》資料免費(fèi)下載
    發(fā)表于 08-31 08:07 ?0次下載

    從零開始學(xué)單片機(jī)C語言.haozip02

    從零開始學(xué)單片機(jī)C語言.haozip02,論壇只允許上傳小于20M的壓縮包, 總共分兩卷,需要下載兩個(gè)壓縮包才能解壓成功。
    發(fā)表于 08-16 18:54 ?0次下載

    從零開始學(xué)單片機(jī)C語言.haozip01

    從零開始學(xué)單片機(jī)C語言.haozip01,論壇只允許上傳小于20M的壓縮包, 總共分兩卷,需要下載兩個(gè)壓縮包才能解壓成功。
    發(fā)表于 08-16 19:37 ?0次下載

    從零開始跟我學(xué)C語言之分支結(jié)構(gòu)(下)

    Hi!這里是漁火。今天我們繼續(xù)來講C語言分支結(jié)構(gòu)。在C語言里,可以使用if-else實(shí)現(xiàn)
    的頭像 發(fā)表于 02-07 09:27 ?785次閱讀

    從零開始跟我學(xué)C語言之循環(huán)結(jié)構(gòu)

    Hi!這里是漁火。今天我們來學(xué)校C語言中的循環(huán)結(jié)構(gòu)。循環(huán)結(jié)構(gòu)結(jié)構(gòu)化程序設(shè)計(jì)中的基本結(jié)構(gòu)之一。循
    的頭像 發(fā)表于 02-10 15:30 ?827次閱讀

    從零開始跟我學(xué)C語言之循環(huán)結(jié)構(gòu)(下)

    C語言中,使用while語句完成不定次數(shù)的循環(huán),如果滿足循環(huán)條件,則反復(fù)執(zhí)行循環(huán)體語句,當(dāng)循環(huán)條件不滿足時(shí)退出循環(huán)。while語句在使用時(shí),總是先要判斷一個(gè)條件,使用可以用while語句實(shí)現(xiàn)“當(dāng)型”循環(huán)。while語句的一般形式如下:while(表達(dá)式)循環(huán)體;。接下來
    的頭像 發(fā)表于 02-12 17:27 ?686次閱讀