C printf和scanf的用法

2022-08-19 11:03:09 字數 2128 閱讀 7921

首先,需要用到stdio.h庫(當然你用萬能庫我也不能說什麼)

一、printf用法

【函式原型】

int printf(const char *format[,argument]);

1

【函式引數】

format:由格式說明和普通字元構成。格式說明定義argument的顯示格式,以「%」開頭,後接格式字元。格式字元前還可以有其他修飾符,表述輸出的寬度、精度等。

format樣式如下: 

%[flags][width][.precision][length]格式字元

1.格式字元格式字元	              說明

d或i 帶符號十進位制整數

o 無符號八進位制數

x 無符號十六進製制數

u 無符號十進位制整數

f 小數形式單、雙精度浮點數

e或e 指數形式的單、雙精度浮點數

g或g 以%f或%e形式輸出浮點數

c 單個字元

s 字串

p 輸出乙個指標

2.flags:對齊方式flags	                說明

- 在給定的域內靠左輸出

+ 強制在正數前輸出+,負數前輸出-

# 使用o、x、x時,分別在資料前加前導符0、0x、0x輸出

3.width:寬度width	                      說明

m 輸出字段寬度,若資料寬度小於m,則左端補上空格;否則按實際位數輸出

4.precision:精度precision	              說明

a 對於浮點數,表示輸出a位小數;對於字串,表示輸出字串個數

5.length(不常用所以不做介紹了qwq)sample code:

#include using namespace std;

int main()

二、scanf用法

【函式原型】

int scanf(const char *format[,argument]);

1

【函式引數】

format:由格式說明、空白字元與非空白字元構成。格式說明指示了argument的輸入格式,以「%」開頭,後接格式字元。格式字元前還可以有其他修飾符。

format樣式如下:

%[*][width][modifiers]格式字元

argument表示引數的位址!要加「&」!

1.格式字元格式字元	           說明

d或i 帶符號十進位制整數

o 無符號八進位制數

x或x 無符號十六進製制數

u 無符號十進位制整數

f、e、e、g、g 浮點數

c 單個字元

s 字串

2.修飾符說明修飾符	                      說明

* 跳過讀入資料,不存入對應的argument中

width 指定輸入資料所占用的寬度

modifiers 指定由d、i、x、x、o、u、e、f、g說明的字元的大小

C printf 和 scanf 函式的使用

對於printf函式,我們主要要掌握printf函式的輸出格式。而對於scanf函式,我們則要知道幾個輸入過程中的錯誤輸入情況和scanf函式的實現原理。和上面的程式一樣,一次性輸入多個值,那麼會在快取區里儲存未賦值的資料。那為什麼第二次輸入的時候d e f的值還是0呢?不應該是4,5,6嗎?這是因...

C printf()和scanf()的 修飾符

printf 函式中的 修飾符 假定你不想事先指定列印欄位的寬度,而是希望由程式來指定該值,那麼你可以再欄位寬度部分使用 代替數字來達到目的。例如 int a 2 printf d 4,a 列印a這個整型數時,以四位數的形式列印出來。那麼結果就容易理解了。列印結果 0002 如果列印的數值為浮點型,...

gets和scanf的區別。

寫乙個函式,輸入乙個十六進製制數,輸出相應的是進製數。程式設計如下 include include include void main char t 20 c long htoi char doprintf ninput a hex number gets t printf decimal numb...