小螞蟻學習C語言(7)——C語言流程控制之if

其實我感受只要學過一門編程語言的人都會使用。java

流程控制(很是重要c++

1,什麼流程控制編程

    控制程序的執行順序編程語言

    流程控制的重要性spa

        一通百通 C++ java C+ 都是同樣的。.net

        等等……總之就是很是的重要code

2,流程控制的分類orm

    順序blog

        按照順序自上而下執行。排序

    選擇

        定義:有選擇的執行某些代碼

        分類:

            if       和    switch

            1,if 最簡單的用法

# include <stdio.h>
int main(void)
{
    if ( 3 > 24)
        printf("aaaaaaaaaa\n");
    else
        printf("bbbbbbbbb\n");
    if ( 0 )
        printf("cccccc\n");
    if ( 0 == 0 )
        printf("dddddddddd\n");
    return 0; 
}

 2,if的範圍問題 (很重要的問題)

# include <stdio.h>
int main(void)
{
    if ( 3 > 24)
        printf("aaaaaaaaaa\n");
        printf("bbbbbbbbbbb\n");
    if( 5 > 2 )
        printf("cccccccccc\n");
        printf("ddddddddddd\n");
    return 0; 
}
/*
    在vc++6.0中的輸出結果是:
    ------------------------------------------
    bbbbbbbbbbb
    cccccccccc
    ddddddddddd
  --------------------------------------------
  總結:
    if默認只能控制一個語句的執行或不執行。
*/

 取值範圍:

        1, if ( 表達式 )

                    語句a

                    語句b

            解釋: if默認只能控制語句 A的執行或者不執行

                    if 沒法控制語句b的執行或不執行

                    或者說:語句b必定會執行

        2,if ( 表達式 )

                {

                        語句A

                        語句B

                }

                此時if能夠控制語句A和語句B。

            小總結: if 默認只能控制一個語句的執行和不執行,若是想控制多個語句的執行或不執行,就須要使用花括號把這些語句括起來。

           3,if ... else ...

# include <stdio.h>
int main(void)
{
    int i, j;
    scanf("%d %d", &i, &j);
    if( i > j )
    {
        printf("i 大於 j \n");
    }
    else
    {
        printf("i 小於 j \n");
    }
    return 0; 
}

            4,if ... else if ... else if ... else ...

# include <stdio.h>
int main(void)
{
    int i, j;
    scanf("%d %d", &i, &j);
    if( i > j )
        printf("i 大於 j \n");
        printf("haha\n");    //該語句就會報錯,由於if默認只能控制一條語句。
    else if ( i < j )
        printf("i 小於 j \n");
    else
        printf("它們相等 \n");
    return 0; 
}
/*
    編譯出錯的緣由:if語句默認只能控制一條語句,當執行過printf("i 大於 j \n")的時候
    if語句就已經結束了,到了else if的時候,系統認爲缺乏了一個if,因此報了錯
*/

            5,if對於真假的判斷

                非零 是 真

                零     是 假

                真用 1 表示,假用 0 表示

                if分支控制小案例:

# include <stdio.h>
int main(void)
{
    int score;
    printf("請輸入你要查詢的分數: ");
    scanf("%d", &score);
    if( score > 90 && score <= 100 )
        printf("優秀 \n");
    else if ( score >= 80 && score<= 90 )
        printf("良好 \n");
    else if ( score >= 60 && score<= 80 )
        printf("及格 \n");
    else if ( score >= 0 && score < 60 )
        printf("不及格 \n");
    else 
        printf("沒有這個數值 \n");
    return 0; 
}

小案例2:從大到小排序,其實就是冒泡排序的基本思路了

# include <stdio.h>
int main(void)
{
    int  a, b, c, t;
    printf("請輸入三個數字,中間以三個空格分割:");
    scanf("%d %d %d", &a, &b, &c);
    if( a < b )
    {
        t = a;
        a = b;
        b = t;
    }
    if( a < c )
    {
        t = a;
        a = c;
        c = t;
    }
    if( b < c )
    {
        t = b;
        b = c;
        c = t;
    }
    printf("%d %d %d \n", a, b, c);
    return 0;
}


學PHP的小螞蟻 博客 http://my.oschina.net/woshixiaomayi/blog

相關文章
相關標籤/搜索