2017年計(jì)算機(jī)二級C語言考點(diǎn)歸納:數(shù)據(jù)的輸入與輸出,輸入輸出函數(shù)的調(diào)用

字號(hào):


    3.2 數(shù)據(jù)的輸入與輸出,輸入輸出函數(shù)的調(diào)用
    1.C語言本身沒有提供輸入、輸出操作語句。C程序的輸入和輸出完全依靠調(diào)用C語言的標(biāo)準(zhǔn)輸入、輸出函數(shù)來完成。四個(gè)常用的輸入、輸出函數(shù)是:
    printf函數(shù)、scanf函數(shù)、putchar函數(shù)、getchar函數(shù)
    2.printf函數(shù)是C語言提供的標(biāo)準(zhǔn)輸出函數(shù),它的作用是在終端設(shè)備(或系統(tǒng)隱含指定的輸出設(shè)備)上按指定格式進(jìn)行輸出。Printf函數(shù)的一般調(diào)用形式如下:
    printf(格式控制,輸出項(xiàng)表)
    如果在printf函數(shù)調(diào)用之后加上″;″,就構(gòu)成了輸出語句。
    格式控制參數(shù)以字符串的形式描述,由兩部分組成:
    ①普通字符:將被簡單地顯示;
    ②格式字符:將引起一個(gè)輸出參數(shù)項(xiàng)的轉(zhuǎn)換和顯示,由“%”引出并以一個(gè)類型描述符結(jié)束的字符串,中間可加一些可選的附加說明項(xiàng),如下表所示。
    附加說明項(xiàng)
    附加說明項(xiàng)
    說 明
    -或+ 用于指定是否對齊輸出,具有“-”符號(hào)表示左對齊,無“-”或有“+”表示右對齊
    0 用于指定是否填寫0,有此項(xiàng)表示空位用0補(bǔ)充,無此項(xiàng)表示以空格補(bǔ)充
    m.n 用于指定輸出域?qū)捈熬?,m是指域?qū)挘琻為精度,當(dāng)指定n時(shí),隱含的精度為6位
    L或h 用于輸出長度修正。其中,l對于整型是指long,對實(shí)型是double;h只用于整型的格式字符,并修正為short型
    格式字符用于指定輸出項(xiàng)的數(shù)據(jù)類型及輸入格式,如下表所示。
    注意:編譯程序只是在檢查了printf函數(shù)中的格式參數(shù)后,才能確定有幾個(gè)輸出項(xiàng),是什么類型、以什么格式輸出。在編程序時(shí),應(yīng)使輸出格式與輸出項(xiàng)對應(yīng)。
    格式字符
    格式字符
    說 明
    CcD 輸出一個(gè)字符
    d或I 輸出帶符號(hào)的十進(jìn)制整型數(shù)
    OoO 以八進(jìn)制無符號(hào)形式輸出整型數(shù)(不帶前導(dǎo)0)
    x或X 以十六進(jìn)制無符號(hào)形式輸出整型數(shù)(不帶前導(dǎo)0x或0X),對于x,用abcdef輸出十六進(jìn)制數(shù)碼;對于X,用ABCDEF輸出十六進(jìn)制數(shù)碼
    UuU 按無符號(hào)的八進(jìn)制形式輸出整型數(shù)
    FfF 以小數(shù)的形式輸出單精度或雙精度數(shù),小數(shù)位由精度指定,隱含的精度為6;如指定精度為0,則小數(shù)部分(包含小數(shù)點(diǎn))都不輸出
    e或E 以指數(shù)形式輸出單精度及雙精度數(shù),小數(shù)位數(shù)由精度指定,隱含的精度為6;如指定精度為0,則小數(shù)部分(包含小數(shù)點(diǎn))都不輸出
    g或G 由系統(tǒng)決定是采用%f不是采用%e格式,以便使輸出寬度最小
    SsS 輸出字符串中的字符,直到遇到″\0″時(shí)為止,或輸出指定的字符數(shù)
    PpP 輸出變量的內(nèi)存地址
    % 打印一個(gè)%
    3.scanf函數(shù)是C語言提供的標(biāo)準(zhǔn)輸入函數(shù),它的作用是在終端設(shè)備(或系統(tǒng)隱含指定的輸入設(shè)備)上輸入數(shù)據(jù)。Scanf函數(shù)的一般調(diào)用形式是:
    scanf(格式控制,輸入項(xiàng)表)
    如果在scanf函數(shù)調(diào)用之后加上″;″,就構(gòu)成了輸入語句。
    格式控制是用雙引號(hào)括起來的字符串,稱為格式控制串。格式控制串的作用是指定輸入時(shí)的數(shù)據(jù)轉(zhuǎn)換格式,即格式轉(zhuǎn)換說明。格式轉(zhuǎn)換說明是由″%″符號(hào)開始,其后是格式描述符。
    輸入項(xiàng)表中的各輸入項(xiàng)用逗號(hào)隔開,各輸入項(xiàng)只能是合法的地址表達(dá)式,即在變量之前加一個(gè)地址符號(hào)″&″。
    在scanf函數(shù)中每個(gè)格式說明都必須用%開頭,以一個(gè)″格式字符″結(jié)束。
    Scanf函數(shù)中的格式控制字符與printf函數(shù)中的相似,由格式說明項(xiàng)與輸入格式符組成。格式說明項(xiàng)如下表所示。
    格式說明項(xiàng)
    格式說明項(xiàng) 說 明
    % 起始符
    * 賦值抑制符,用于按格式說明讀入數(shù)據(jù),但不送給任何變量
    MmM 域?qū)捳f明
    l或h 長度修正說明符
    scanf中的格式字符如下表所示。
    格式說明項(xiàng) 說 明
    CcC 輸入一個(gè)字符
    DdD 輸入十進(jìn)制整型數(shù)
    IiI 輸入整型數(shù),整數(shù)可以是帶前導(dǎo)0的八進(jìn)制數(shù),帶前導(dǎo)0x(或0X)的十六進(jìn)制數(shù)
    OoO 以八進(jìn)制形式輸入整型數(shù)(可為帶前導(dǎo)0,也可不帶前導(dǎo)0)
    XxX 以十六進(jìn)制形式輸入整型數(shù)(可帶前導(dǎo)0x或0X,也可不帶)
    UuU 無符號(hào)十進(jìn)制整數(shù)
    FfF 以帶小數(shù)點(diǎn)形式或指數(shù)形式輸入實(shí)型數(shù)
    EeE 與f的作用相同
    SsS 輸入字符串
    4.putchar函數(shù)的作用是把一個(gè)字符輸出到標(biāo)準(zhǔn)輸出設(shè)備(常指顯示器或打印機(jī))上。一般調(diào)用形式為
    putchar(ch) ;
    其中ch代表一個(gè)字符變量或一個(gè)整型變量,ch也可以代表一個(gè)字符常量(包括轉(zhuǎn)義字符常量)。
    5.getchar函數(shù)的作用是標(biāo)準(zhǔn)輸入設(shè)備(通常指鍵盤)上讀入一個(gè)字符。一般調(diào)用形式為
    getchar();
    getchar函數(shù)本身沒有參數(shù),其函數(shù)值就是從輸入設(shè)備得到的字符。