scanf 函式中 格式控制符用法

2021-08-26 12:25:20 字數 959 閱讀 2354

此格式控制符的基本格式為:%[scanfset]

scanfset 有兩種形式:一種是以非 「^」 字元開頭的 scanset , 表示在讀入字串時將匹配所有在 scanfset 中出現的字元,遇到非scanfset 中的字元時輸入就結束;另外一種形式是以 「^」 字元開頭的scanfset ,表示在讀入字串時將匹配所有不在scanfset 中出現的字元,遇到scanfset 中的字元輸入就結束。

測試**:

輸入 i love you !!!

輸出 i love you !!!

這樣就能讀入含有空格的字串了

「-」字元的使用。當「-」出現在scanfset中且兩邊都有字元時,大多數編譯器都做了如下所述實現:「-」表示匹配從其左邊的字元到右邊字元之間所有的字元(按ascii碼排序)。如a-z表示a到z的所有字元,又如0-9表示0到9這十個數字。所以,當scanfset為0-9時表示只匹配數字串,當scanfset為a-za-z時表示只匹配字元(包括大小寫),當scanfset為^0-9時不匹配所有數字。注意,「-」的字元只有在其左右兩邊都有有效字元時才有這個作用,否則被認為是普通字元,如「 0-4-6-9」匹配的字元為{0,1,2 ,3,,4, -, 6,7,8,9},這樣也為輸入「-」字元提供了方法。

測試**:

輸入:b35u-

輸出:b35u-

注意:當要匹配右側 「]」 或者 「^」 時,得這樣去做。如果是右側方括號時,得把它放在緊跟在左側方括號的後邊,也不可以有空格,如:%ajdfidfj ] ;如果是 「^」 時,得不可以把它置於緊跟在左側方括號的後邊,如:%[ gfadhfu^fhgiu ] 。

C語言 格式控制符

d 以帶符號的十進位制形式輸出整數 o 以八進位制無符號形式輸出整數 x 以十六進製制無符號形式輸出整數 u 以無符號十進位制形式輸出整數 c 以字元形式輸出,只輸出乙個字元 s 輸出字串 f 以小數形式輸出單,雙精度數,隱含輸出六位小數 e 以指數形式輸出實數 g 選用 f或 e格式中輸出寬度較短...

C語言格式控制符

d 整型格式控制符 f 浮點型 單精度 格式控制符 i 整型格式控制符,和 d完全一樣 u 無符號整型格式控制符 c 字元格式控制符 s 字串格式控制符 lf 雙精度格式控制符 e 指數形式輸出格式控制符 o 無符號八進位制數格式控制符 x 無符號十六進製制格式控制符,如 1f x 無符號十六進製制...

C 輸出格式控制符

net有兩種格式控制符,一種是標準格式控制符,另一種是使用者自定義的。標準格式的一般形式 n表示佔位符的序號,0對應第乙個變數,1對應第2個變數,依此類推。m 是可選項,m表示輸出的變數在控制台中所佔據的字元個數。yn 是可選項。y是格式化說明符,n為正整數,代表定義資料的精度範圍。1 貨幣金額格式...