C語言中關於scanf函式的用法

2021-06-17 21:28:04 字數 1106 閱讀 5379

華清遠見嵌入式學院講師。

scanf()函式的控制串

函式名: scanf

功 能: 執行格式化輸入

用 法: int scanf(char *format[,argument,...]);

scanf()函式是通用終端格式化輸入函式,它從標準輸入裝置(鍵盤) 讀取輸入的資訊。可以讀入任何固有型別的資料並自動把數值變換成適當的機內格式。

其呼叫格式為: scanf("《格式化字串》",《位址表》);

scanf()函式返回成功賦值的資料項數,出錯時則返回eof。

其控制串由三類字元構成:

1.  格式化說明符;

2.  空白符;

3.  非空白符;

(a) 格式化說明符

格式字元 說明

%a 讀入乙個浮點值(僅c99有效)

%a 同上

%c 讀入乙個字元

%d 讀入十進位制整數

%i 讀入十進位制,八進位制,十六進製制整數

%o 讀入八進位制整數

%x 讀入十六進製制整數

%x 同上

%c 讀入乙個字元

%s 讀入乙個字串

%f 讀入乙個浮點數

%f 同上

%e 同上

%e 同上

%g 同上

%g 同上

%p 讀入乙個指標

%u 讀入乙個無符號十進位制整數

%n 至此已讀入值的等價字元數

% 掃瞄字元集合

%% 讀%符號

附加格式說明字元表

修飾符 說明

l/l 長度修飾符 輸入"長"資料

h 長度修飾符 輸入"短"資料

w 整型常數 指定輸入資料所佔寬度

* 星號 空讀乙個資料

hh,ll同上h,l但僅對c99有效。

(b) 空白字元

空白字元會使scanf()函式在讀操作中略去輸入中的乙個或多個空白字元,空白符可以是space,tab,newline等等,直到第乙個非空白符出現為止。

(c) 非空白字元

乙個非空白字元會使scanf()函式在讀入時剔除掉與這個非空白字元相同的字元。

C語言中關於scanf函式的用法

scanf 函式的控制串 函式名 scanf 功 能 執行格式化輸入 用 法 int scanf char format argument,scanf 函式是通用終端格式化輸入函式,它從標準輸入裝置 鍵盤 讀取輸入的資訊。可以讀入任何固有型別的資料並自動把數值變換成適當的機內格式。其呼叫格式為 sc...

C語言中scanf函式

scanf 函式每次讀取乙個字元,跳過所有的空白字元,直至遇到第1個非空白字元才開始讀取。因為要讀取整數,所以 scanf 希望發現乙個數字字元或者乙個符號 或 如果找到乙個數字或符號,它便儲存該字元,並讀取下乙個字元。如果下乙個字元是數字,它便儲存該數字並讀取下乙個字元。scanf 不斷地讀取和儲...

C語言中的scanf函式

思考 如果,我們想拿到使用者輸入的東西,怎麼辦?解決 我們需要使用 scanf 這個函式 1.scanf 的作用 在程式執行到 scanf 的時候,接收使用者輸入的一些資料,並儲存在變數之中 2.scanf 的語法 scanf 格式控制字串 變數位址列表 語義 格式控制字串裡寫佔位符,佔位符用來接收...