c語言的if形式,c語言中 if

本文目錄一覽:

C語言中if語句的三種形式到底是怎樣的?分別舉例

1)簡化形式

if(表達式) 語句塊

如: if(xy) printf(“%d”,x);

2)一般形式

if (表達式)

語句塊1

else

語句塊2

例如:

if (xy)

printf(“max=%d”,x);

else

printf(“max=%d”,y);

3)嵌套形式

含義:一條if語句重又包含另一個if語句稱為if語句的嵌套.

格式:

if( )

if( ) 語句塊1

else 語句塊2

else

if( ) 語句塊3

else 語句塊4

例如:

if (score90)

printf(“very good”);

else

if(score80)

printf(“good”);

else

if(score60)

printf(“ok”);

else

printf(“bad”);

如果語句塊包含多個語句,用{}就行了

例如:

if(n0)

{

printf(“%d”,n);

printf(“是正數\n”);

}

c語言if語句的用法

c語言提供了三種形式的if語句用法:

1、if(表達式)語句。

例如:if(xy)printf(“%d”,x)。

此時,如果表達式為真,則執行printf語句。

2、if(表達式)語句1 else 語句2。

例如:

if(xy)printf(“%d”,x)。

else printf(“%d”,y)。

此時,如果xy成立為真,則執行語句printf(“%d”,x),然後直接跳過else,同時也跳過語句printf(“%d”,y),去執行之後的語句。

如果xy不成立為假,則不執行語句printf(“%d”,x),執行語句printf(“%d”,x)。

3、if(表達式1)語句1。

else if(表達式2)語句2。

else if(表達式3)語句3。

else if(表達式m)語句m。

else 語句 n。

此時,哪個表達式為真,則運行哪個if後面的語句。如表達式3成立為真,執行語句3。

在每個語句中,可以有多個語句,但需要加上大括號。

例:if(xy){printf(“%d”,x);break;}。

if語句的語法:

if(booleanExpression)。

statement-1。

else。

statement-2。

如果booleanExpression(布爾表達式)求值為true,就運行statement-1;否則運行statement-2。else關鍵字和後續的statement-2是可選的。

如果沒有else子句,而且booleanExpression求值為false,那麼什麼也不會發生,程序繼續執行if語句之後的代碼。注意,布爾表達式必須放在圓括號中,否則無法編譯。

C語言if語句

if-else分別搭配一條語句,如果有多條語句就要用花括號擴起來。

int main (void) {

int a=0;

if (1)

a=3; //這是一條語句,if為真,執行賦值3 

if (0)

a=4; //這是一條語句,if為假 

else //搭配上方的if 

a=5; //這是一條語句,上方if為假,執行賦值5

//所以最終a值為5 

}

int main (void) {

int a=0;

if (1) { //if為真,整個花括號里的語句都要執行 

a=3; //賦值3 

if (0) //執行if,為假 

a=4; //這條語句不執行 

}

else //上方if為真,不執行else 

a=5;

//所以最終a值為3

}

在C語言的if語句常見的形式有哪些?分別說,它們的作用

三種形式:

形式一、if(表達式)~~

作用:只判斷滿足條件時的功能,不滿足時什麼也不做,如:

if(睡醒了)

上班工作;

形式二、if(表達式)~~else~~

作用:兩個相反的條件,當表達式成立時執行某段代碼,否則執行另一段代碼,如:

if(今天不下雨)

外出爬山;

else

在家上網;

形式三、if(表達式)~~else

if(表達式)~~else~~

作用:當實際問題有多種情況(分支)時,用此形式,如:

if(1-2節)

上英語課;

else

if(3-4節)

上數學課;

else

if(5-6節)

上體育課;

else

上自習;

C語言中的的if語句共有多少種格式?

if語句基本的有三種格式,在此基礎上可以擴展一些其它格式,注意活學活用即可。

1、

if……形式

一般格式:if(表達式) 語句;

語義是:如果表達式的值為真,則執行其後的語句,否則不執行該語句。語句可以是單條語句,也可以是用花括號{}包括起來的複合語句。示例如下:

#include stdio.h

int main(){

int a,b,max;

printf(“\n input two numbers: “);

scanf(“%d%d”,a,b);

max=a;

if (maxb) max=b;

printf(“max=%d\n”,max);

return 0;

}

2、if……else形式

一般格式:

if(表達式)

語句1;

else

語句2;

語義是:如果表達式的值為真,則執行語句1,否則執行語句2

。語句1和語句2可以是複合語句。

示例如下:

#include stdio.h

int main(){

int a, b;

printf(“input two numbers: “);

scanf(“%d%d”,a,b);

if(ab)

printf(“max=%d\n”,a);

else

printf(“max=%d\n”,b);

return 0;

}

3、if……else……if形式

一般形式為:

if(表達式1)

語句1;

else if(表達式2)

語句2;

else if(表達式3)

語句3;

else if(表達式m)

語句m;

else

語句n;

語義是:依次判斷表達式的值,當出現某個值為真時,則執行其對應的語句。然後跳到整個if語句之外繼續執行程序。

如果所有的表達式均為假,則執行語句n。然後繼續執行後續程序。示例如下:

#include stdio.h

int main(){

char c;

printf(“input a character: “);

c=getchar();

if(c32)

printf(“This is a control character\n”);

else if(c=’0’c=’9′)

printf(“This is a digit\n”);

else if(c=’A’c=’Z’)

printf(“This is a capital letter\n”);

else if(c=’a’c=’z’)

printf(“This is a small letter\n”);

else

printf(“This is an other character\n”);

return 0;

}

4、擴展形式

if條件控制語句的形式是多種多樣的。比如if嵌套、if……if類似的形式,但是都離不開上面介紹的三種基本形式。注意活學活用。

C語言if語句的使用講解

if語句的使用

用if語句可以構成分支結構。它根據給定的條件進行判斷,以決定執行某個分支程序段。C語言的if語句有三種基本形式。

語句的三種形式

1) 第一種形式為基本形式:if

if(表達式) 語句

其語義是:如果表達式的值為真,則執行其後的語句,否則不執行該語句。

【例1】

#include

int main(void){

int a,b,max;

printf(” input two numbers: “);

scanf(“%d%d”,a,b);

max=a;

if (max

printf(“max=%d”,max);

return 0;

}

本例程序中,輸入兩個數a、b。把a先賦予變量max,再用if語句判別max和b的大小,如max小於b,則把b賦予max。因此max中總是大數,最後輸出max的值。

2) 第二種形式為: if-else

if(表達式)

語句1;

else

語句2;

其語義是:如果表達式的值為真,則執行語句1,否則執行語句2 。

【例2】

#include

int main(void){

int a, b;

printf(“input two numbers: “);

scanf(“%d%d”,a,b);

if(ab)

printf(“max=%d “,a);

else

printf(“max=%d “,b);

return 0;

}

輸入兩個整數,輸出其中的大數。改用if-else語句判別a,b的大小,若a大,則輸出a,否則輸出b。

3) 第三種形式為if-else-if形式

前二種形式的if語句一般都用於兩個分支的情況。當有多個分支選擇時,可採用if-else-if語句,其一般形式為:

if(表達式1)

語句1;

else if(表達式2)

語句2;

else if(表達式3)

語句3;

else if(表達式m)

語句m;

else

語句n;

其語義是:依次判斷表達式的值,當出現某個值為真時,則執行其對應的語句。然後跳到整個if語句之外繼續執行程序。 如果所有的表達式均為假,則執行語句n。然後繼續執行後續程序。 if-else-if語句的執行過程如下圖所示。

【例3】

#include

int main(void){

char c;

printf(“input a character: “);

c=get);

if(c32)

printf(“This is a control character “);

else if(c=’0’c=’9′)

printf(“This is a digit “);

else if(c=’A’c=’Z’)

printf(“This is a capital letter “);

else if(c=’a’c=’z’)

printf(“This is a small letter “);

else

printf(“This is an other character “);

return 0;

}

本例要求判別鍵盤輸入字符的類別。可以根據輸入字符的ASCII碼來判別類型。由ASCII碼錶可知ASCII值小於32的為控制字符。在“0”和“9”之間的為數字,在“A”和“Z”之間為大寫字母, 在“a”和“z”之間為小寫字母,其餘則為其它字符。這是一個多分支選擇的問題,用if-else-if語句編程,判斷輸入字符ASCII碼所在的範圍,分別給出不同的輸出。例如輸入為“g”,輸出顯示它為小寫字符。

if語句的嵌套

當if語句中的執行語句又是if語句時,則構成了if 語句嵌套的情形。其一般形式可表示如下:

if(表達式)

if語句;

或者為:

if(表達式)

if語句;

else

if語句;

在嵌套內的if語句可能又是if-else型的,這將會出現多個if和多個else重疊的情況,這時要特別注意if和else的配對問題。例如:

if(表達式1)

if(表達式2)

語句1;

else

語句2;

其中的else究竟是與哪一個if配對呢?應該理解為:

if(表達式1)

if(表達式2)

語句1;

else

語句2;

還是應理解為:

if(表達式1)

if(表達式2)

語句1;

else

語句2;

為了避免這種二義性,C語言規定,else 總是與它前面最近的if配對,因此對上述例子應按前一種情況理解。

【例4】

#include

int main(void){

int a,b;

printf(“please input A,B: “);

scanf(“%d%d”,a,b);

if(a!=b)

if(ab) printf(“AB “);

else printf(“A

else printf(“A=B “);

return 0;

}

比較兩個數的大小關係。本例中用了if語句的嵌套結構。採用嵌套結構實質上是為了進行多分支選擇,實際上有三種選擇即AB、A

簡單講解C語言中宏的定義與使用

宏定義是預編譯功能的一種, 預編譯又稱為預處理, 是為編譯做的預備工作的階段。處理#開頭的指令, 比如拷貝 #include 包含的文件代碼,#define宏定義的替換,條件編譯等。

使用宏定義的好處:使用宏定義的好處:可提高程序的通用性和易讀性,減少不一致性,減少輸入錯誤和便於修改。例如 π 這個常量,我們有時候會在程序的多個地方使用,如果每次使用都重新定義,一來比較麻煩,二來容易出錯,所以我們可以把 π 做成宏定義來使用。

語法說明:

(1)宏名一般用大寫

(2)使用宏可提高程序的`通用性和易讀性,減少不一致性,減少輸入錯誤和便於修改。例如:數組大小常用宏定義

(3)預處理是在編譯之前的處理,而編譯工作的任務之一就是語法檢查,預處理不做語法檢查。

(4)宏定義末尾不加分號;

(5)宏定義寫在函數的花括號外邊,作用域為其後的程序,通常在文件的最開頭。

(6)可以用#undef命令終止宏定義的作用域

(7)宏定義可以嵌套

(8)字符串” “中永遠不包含宏

(9)宏定義不分配內存,變量定義分配內存。

定義:

#define 宏名 內容#define kArrLen 10 // OC駝峰命名法:首字符為k,其他單詞首字符大寫#define ARR_LEN 10 // C語言中的宏命名規範:所有字母大寫,單詞用下劃線分隔

例如:

#define PI 3.1415926

我們就可以使用 PI 來代替 3.1415926 即可:

float r = 0.5;float area = PI * r * r;printf(“area = %fn”, area);

在程序預編譯階段會把 PI 替換成 3.1415926:

float area = 3.1415926 * r * r;

宏定義內容很簡單,也很好理解,但是有幾個如下的注意事項:

1、因為宏定義只是簡單的替換,如果宏定義的內容有運算的時候,要把每個變量加上括號,以免影響運算的優先級

比如:#define MUL(A, B) (A * B)

使用方法:

MUL(3 + 5, 5 + 6) //會替換成 3 + 5 * 5 + 6 = 34

我們希望(3 + 5) * (5 + 6),所以定義宏定義的時候應該:

#define MUL(A, B) ((A) * (B))

2、注意宏定義後面沒有分號(;),它不是一條語句

3、宏定義是在程序編譯前期進行替換,此時程序還沒有編譯

原創文章,作者:VTISV,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/329217.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
VTISV的頭像VTISV
上一篇 2025-01-14 18:55
下一篇 2025-01-14 18:55

相關推薦

  • AES加密解密算法的C語言實現

    AES(Advanced Encryption Standard)是一種對稱加密算法,可用於對數據進行加密和解密。在本篇文章中,我們將介紹C語言中如何實現AES算法,並對實現過程進…

    編程 2025-04-29
  • 學習Python對學習C語言有幫助嗎?

    Python和C語言是兩種非常受歡迎的編程語言,在程序開發中都扮演着非常重要的角色。那麼,學習Python對學習C語言有幫助嗎?答案是肯定的。在本文中,我們將從多個角度探討Pyth…

    編程 2025-04-29
  • Python被稱為膠水語言

    Python作為一種跨平台的解釋性高級語言,最大的特點是被稱為”膠水語言”。 一、簡單易學 Python的語法簡單易學,更加人性化,這使得它成為了初學者的入…

    編程 2025-04-29
  • OpenJudge答案1.6的C語言實現

    本文將從多個方面詳細闡述OpenJudge答案1.6在C語言中的實現方法,幫助初學者更好地學習和理解。 一、需求概述 OpenJudge答案1.6的要求是,輸入兩個整數a和b,輸出…

    編程 2025-04-29
  • Python按位運算符和C語言

    本文將從多個方面詳細闡述Python按位運算符和C語言的相關內容,並給出相應的代碼示例。 一、概述 Python是一種動態的、面向對象的編程語言,其按位運算符是用於按位操作的運算符…

    編程 2025-04-29
  • Python語言由荷蘭人為中心的全能編程開發工程師

    Python語言是一種高級語言,很多編程開發工程師都喜歡使用Python語言進行開發。Python語言的創始人是荷蘭人Guido van Rossum,他在1989年聖誕節期間開始…

    編程 2025-04-28
  • Python語言設計基礎第2版PDF

    Python語言設計基礎第2版PDF是一本介紹Python編程語言的經典教材。本篇文章將從多個方面對該教材進行詳細的闡述和介紹。 一、基礎知識 本教材中介紹了Python編程語言的…

    編程 2025-04-28
  • Python語言實現人名最多數統計

    本文將從幾個方面詳細介紹Python語言實現人名最多數統計的方法和應用。 一、Python實現人名最多數統計的基礎 1、首先,我們需要了解Python語言的一些基礎知識,如列表、字…

    編程 2025-04-28
  • Python作為中心語言,在編程中取代C語言的優勢和挑戰

    Python一直以其簡單易懂的語法和高效的編碼環境而著名。然而,它最近的發展趨勢表明Python的使用範圍已經從腳本語言擴展到了從Web應用到機器學習等廣泛的開發領域。與此同時,C…

    編程 2025-04-28
  • Python基礎語言

    Python作為一種高級編程語言擁有簡潔優雅的語法。在本文中,我們將從多個方面探究Python基礎語言的特點以及使用技巧。 一、數據類型 Python基礎數據類型包括整數、浮點數、…

    編程 2025-04-28

發表回復

登錄後才能評論