c語言if語句如何使用精選

字號:

    在日常的學習、工作、生活中,肯定對各類范文都很熟悉吧。相信許多人會覺得范文很難寫?下面我給大家整理了一些優(yōu)秀范文,希望能夠幫助到大家,我們一起來看一看吧。
    c語言if語句如何使用篇一
    c語言實習總結
    推薦度:
    c語言程序設計的實驗報告
    推薦度:
    c語言課程設計個人總結
    推薦度:
    c語言程序設計實驗報告
    推薦度:
    c語言程序設計心得體會
    推薦度:
    相關推薦
    if語句(if statement)是指編程語言(包括c語言,c#,vb,匯編語言等)中用來判定所給定的條件是否滿足,根據(jù)判定的結果(真或假)決定執(zhí)行給出的兩種操作之一。下面是小編為大家整理的c語言if語句的使用講解,歡迎參考~
    用if語句可以構成分支結構。它根據(jù)給定的條件進行判斷,以決定執(zhí)行某個分支程序段。c語言的if語句有三種基本形式。
    1) 第一種形式為基本形式:if
    if(表達式) 語句
    其語義是:如果表達式的值為真,則執(zhí)行其后的語句,否則不執(zhí)行該語句。
    #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;
    }
    本例程序中,輸入兩個數(shù)a、b。把a先賦予變量max,再用if語句判別max和b的大小,如max小于b,則把b賦予max。因此max中總是大數(shù),最后輸出max的值。
    2) 第二種形式為: if-else
    if(表達式)
    語句1;
    else
    語句2;
    其語義是:如果表達式的值為真,則執(zhí)行語句1,否則執(zhí)行語句2 。
    #include
    int main(void){
    int a, b;
    printf("input two numbers: ");
    scanf("%d%d",&a,&b);
    if(a>b)
    printf("max=%d ",a);
    else
    printf("max=%d ",b);
    return 0;
    }
    輸入兩個整數(shù),輸出其中的大數(shù)。改用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;
    其語義是:依次判斷表達式的值,當出現(xiàn)某個值為真時,則執(zhí)行其對應的語句。然后跳到整個if語句之外繼續(xù)執(zhí)行程序。 如果所有的表達式均為假,則執(zhí)行語句n。然后繼續(xù)執(zhí)行后續(xù)程序。 if-else-if語句的執(zhí)行過程如下圖所示。
    #include
    int main(void){
    char c;
    printf("input a character: ");
    c=get);
    if(c<32)
    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;
    }
    本例要求判別鍵盤輸入字符的類別??梢愿鶕?jù)輸入字符的ascii碼來判別類型。由ascii碼表可知ascii值小于32的為控制字符。在“0”和“9”之間的為數(shù)字,在“a”和“z”之間為大寫字母, 在“a”和“z”之間為小寫字母,其余則為其它字符。這是一個多分支選擇的問題,用if-else-if語句編程,判斷輸入字符ascii碼所在的范圍,分別給出不同的輸出。例如輸入為“g”,輸出顯示它為小寫字符。
    if語句的嵌套
    當if語句中的執(zhí)行語句又是if語句時,則構成了if 語句嵌套的情形。其一般形式可表示如下:
    if(表達式)
    if語句;
    或者為:
    if(表達式)
    if語句;
    else
    if語句;
    在嵌套內(nèi)的if語句可能又是if-else型的,這將會出現(xiàn)多個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語言規(guī)定,else 總是與它前面最近的if配對,因此對上述例子應按前一種情況理解。
    #include
    int main(void){
    int a,b;
    printf("please input a,b: ");
    scanf("%d%d",&a,&b);
    if(a!=b)
    if(a>b) printf("a>b ");
    else printf("a
    else printf("a=b ");
    return 0;
    }
    比較兩個數(shù)的大小關系。本例中用了if語句的嵌套結構。采用嵌套結構實質上是為了進行多分支選擇,實際上有三種選擇即a>b、a
    宏定義是預編譯功能的一種, 預編譯又稱為預處理, 是為編譯做的預備工作的階段。處理#開頭的指令, 比如拷貝 #include 包含的文件代碼,#define宏定義的'替換,條件編譯等。
    使用宏定義的好處:使用宏定義的好處:可提高程序的通用性和易讀性,減少不一致性,減少輸入錯誤和便于修改。例如 π 這個常量,我們有時候會在程序的多個地方使用,如果每次使用都重新定義,一來比較麻煩,二來容易出錯,所以我們可以把 π 做成宏定義來使用。
    語法說明:
    (1)宏名一般用大寫
    (2)使用宏可提高程序的通用性和易讀性,減少不一致性,減少輸入錯誤和便于修改。例如:數(shù)組大小常用宏定義
    (3)預處理是在編譯之前的處理,而編譯工作的任務之一就是語法檢查,預處理不做語法檢查。
    (4)宏定義末尾不加分號;
    (5)宏定義寫在函數(shù)的花括號外邊,作用域為其后的程序,通常在文件的最開頭。
    (6)可以用#undef命令終止宏定義的作用域
    (7)宏定義可以嵌套
    (8)字符串" "中永遠不包含宏
    (9)宏定義不分配內(nèi)存,變量定義分配內(nèi)存。
    定義:
    #define 宏名 內(nèi)容#define karrlen 10 // oc駝峰命名法:首字符為k,其他單詞首字符大寫#define arr_len 10 // c語言中的宏命名規(guī)范:所有字母大寫,單詞用下劃線分隔
    例如:
    #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;
    宏定義內(nèi)容很簡單,也很好理解,但是有幾個如下的注意事項:
    1、因為宏定義只是簡單的替換,如果宏定義的內(nèi)容有運算的時候,要把每個變量加上括號,以免影響運算的優(yōu)先級
    比如:#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、宏定義是在程序編譯前期進行替換,此時程序還沒有編譯
    s("content_relate");
    【c語言if語句的使用講解】相關文章:
    簡單講解c語言中宏的定義與使用
    11-19
    c語言for循環(huán)的使用
    10-06
    c語言typedef的使用
    10-04
    c語言入門例題講解
    10-05
    c語言if語句的用法
    09-27
    c語言switch語句
    09-24
    c語言的使用的詳解
    11-22
    c 語言中宏的使用
    10-02
    c語言eof如何使用
    03-25