自動以空格作為間隔在c語言中是什麼意思

2022-02-16 05:06:33 字數 4138 閱讀 2915

1樓:風若遠去何人留

自動以空格作為間隔在c語言中, 指的是scanf語句輸入時,如果沒有明確指定分隔符,那麼以空格作為間隔。

1、scanf在c語言中為格式化輸入語句;

2、一句scanf語句可以輸入多個變數,每個變數擁有自身的格式字串;

3、在scanf中可以指定分隔符,比如:

scanf("%d,%d*%d",&a,&b,&c);

輸入三個整型變數到a,b,c中,其中a和b以逗號分隔,b和c以*分隔。 所以當輸入:

123,456*789

執行scanf後,a=123,b=456,c=789.

4、使用scanf時也可以不指定分隔符,比如:

scanf("%d%d%d",&a,&b,&c);

三個%d之間是連續的,沒有任何分隔符號,這時預設以不可見字元作為分隔符,包括空格,製表符(\t)以及換行符(\n)。 其中空格最為常用。

於是當輸入:

111 222 333

執行結果為 a=111,b=222,c=333。

2樓:匿名使用者

你說的是scanf()函式吧?

例子:scanf("%d%d",&a,&b);

在這裡你需要輸入兩個整數,需要用空格隔開,系統會自動判斷出這是輸入了兩個值。

如果不用空格隔開,系統怎麼區分輸入的資料到底給a還是給b?

c語言中如何用空格符作為資料間隔符

3樓:風若遠去何人留

scanf輸入的時候,預設就是用空白字元做分隔的,也包括空格。

所以 不需要過多處理。

只需要將格式字元之間不留空位就可以了。 也可以顯式的寫上空格。

比如scanf("%d%d",&a,&b);

或者scanf("%d %d",&a,&b);

都是以空格作為分隔的。

4樓:匿名使用者

輸入一個0x20不就行了

c語言中表示空格的是什麼**?

5樓:蟲心菜

分析如下:

不是所有字元都需要轉義的,空格直接就敲空格,或者使用ascii碼值賦值為32。

空格沒有轉義字元。合法轉義字元如下:

\a 響鈴(bel) 、\b 退格(bs)、\f 換頁(ff)、\n 換行(lf)、\r 回車(cr)、\t 水平製表(ht)、\v 垂直製表(vt) 0、\\ 反斜槓、\? 問號字元、\' 單引號字元、\" 雙引號字元、\0 空字元(null)、\ddd 任意字元 三位八進位制、\xhh 任意字元二位十六進位制。

拓展資料

1、c語言是一門通用計算機程式語言,廣泛應用於底層開發。c語言的設計目標是提供一種能以簡易的方式編譯、處理低階儲存器、產生少量的機器碼以及不需要任何執行環境支援便能執行的程式語言。

2、儘管c語言提供了許多低階處理的功能,但仍然保持著良好跨平臺的特性,以一個標準規格寫出的c語言程式可在許多電腦平臺上進行編譯,甚至包含一些嵌入式處理器(微控制器或稱mcu)以及超級電腦等作業平臺。

6樓:匿名使用者

不是所有字元都需要轉義的,空格直接就敲空格,或者使用ascii碼值賦值為32

空格沒有轉義字元

合法轉義字元如下:

\a 響鈴(bel)

\b 退格(bs)

\f 換頁(ff)

\n 換行(lf)

\r 回車(cr)

\t 水平製表(ht)

\v 垂直製表(vt) 0

\\ 反斜槓

\? 問號字元

\' 單引號字元

\" 雙引號字元

\0 空字元(null)

\ddd 任意字元 三位八進位制

\xhh 任意字元 二位十六進位制

7樓:匿名使用者

char space=32;

則space就是一個表示空格的字元。

8樓:匿名使用者

你定義一個字元c 然後賦值為32,這c就表示一個空格

9樓:匿名使用者

char c ;

c = ' ';

if(c==' ')

printf("space!\n");

else

printf("no space!\n");

10樓:匿名使用者

ascii碼 十進位制32 十六進位制0x20表示 (space)空格

11樓:匿名使用者

char ch=' ';

cout<<(int)ch;

12樓:肉白骨

樓上全正解。printf("' '=%d",' ');

c語言輸入兩個數之間是用空格隔開還是用逗號

13樓:偽文藝

c語言輸入兩個數之間使用空格隔開還是使用逗號隔開主要取決於你在編寫程式時你的scanf語句。具體的區別如下:

1、使用scanf("%d,%d",&a,&b);語句進行輸入:

在輸入資料時,兩個資料中間需要加「,」,如「500,600」。

2、使用scanf("%d%d",&a,&b);語句進行輸入:

在輸入資料時,資料之間不可以用逗號分隔,只能用空白字元(空格或tab鍵或者回車鍵)分隔,如「500(空格)600」或「500(tab) 600」或「500(回車)600」等。

擴充套件資料

在輸入字元字元資料(%c)時,如果格式控制串中沒有非格式字元,就可以認為輸入的所有字元都是有效字元。

例如:1、使用scanf("%c%c%c",&a,&b,&c);語句進行輸入:

當輸入為d e f時,程式就會把「d」賦值給a,「(空格)」賦值給b,「e」賦值給c。此時,為保證程式的正確執行,我們在進行資料輸入時,需要連續輸入def(字元間無空格)。

2、使用scanf("%c%c%c",&a,&b,&c);語句進行輸入:

此時,輸入各資料之間可加空格,如d e f。

14樓:一起育兒說

c語言輸入兩個數之間是用空格隔開還是用逗號的解決方法如下:

這個是根據實際情況來決定的,就是是根據你的scanf來決定的。

你現在中間寫成了scanf("%d,%d",&a,&b);可以看到除了輸入兩個數字外還要加入逗號才行,所以現在你得加逗號才行。

如果想輸入500 600就可以的話,要寫成scanf("%d%d",&a,&b);注意把中間的逗號給去掉;一定要注意這個格式的問題,兩種輸入方法都行的。

15樓:梨子同志

我剛剛也是這樣,如果scanf裡面沒有空格或者加一個空格就可以正確輸出最大值,但是如果中間用的是逗號,就會出現把第一個輸入的值輸出來,沒有進行比較。我試了幾次之後,再試試加逗號的情況它就又行了…加逗號也能輸出正確的最大值,我在想是不是編譯器的問題

16樓:學科會社義主

這個取決於你的scanf;

你現在中間寫成了scanf("%d,%d",&a,&b);可以看到除了輸入兩個數字外還要加入逗號才行,所以現在你得加逗號才行;

如果想輸入500 600就可以的話,要寫成scanf("%d%d",&a,&b);注意把中間的逗號給去掉;

一定要注意這個格式的問題,兩種輸入方法都行的.

17樓:特莉艾拉

介個是根據你的 scanf("%d,%d",&a,&b);來判斷的。

這句話的意思是,按照「整數,整數"來獲得輸入,所以應該輸入500,600就對了。。。如果像樓上這樣 scanf("%d%d",&a,&b);,那麼只要你兩個數字之間有分隔符,逗號阿空格阿就都ok,500 600或者500,600都是對的撒

c語言中,用scanf語句輸入多個資料的時候,資料之間是用什麼符號間隔開的啊?逗號,還是空格啊?

18樓:66666順心

example:

scanf("%d%d%d",&a,&b,&c);

你在螢幕中輸入時可以這樣

1 2 3

也可以這樣:123

c語言中wb,rb是什麼意思,C語言中c是什麼意思

在c語言的檔案操作中,wb和rb分別對應著對二進位制檔案的兩種操作方式 寫操作和讀操作 c語言中 c是什麼意思 用於格式化輸入輸出函式中,針對char型別的匹配。比如 輸入 用於輸入一個字元型。輸出時類似。所有的格式化輸入輸出函式,都可以用這個。c語言中的 c 是什麼意思?例如printf c c ...

C語言中printffni中f是什

格式來字元 說明 a 讀入一個源浮點值 僅c99有效 a 同上 c 讀入一個字元 d 讀入十進位制整數 i 讀入十進位制,八進位制,十六進位制整數 o 讀入八進位制整數 x 讀入十六進位制整數 x 同上 c 讀入一個字元 s 讀入一個字串 f 讀入一個浮點數 f 同上 e 同上 e 同上 g 同上 ...

c語言裡ab的含義是什麼C語言中ab是什麼含義

c在這裡遵循詞法解析的貪婪匹配原則 優先匹配儘可能多字元的符號,無論是否有語法錯誤 因為詞法分析時還沒有語法檢查 於是a b會被當作a b而不是a b 可能是合法的 考慮。這是非法的表示式,因此產生編譯錯誤。這個問題在iso c99標準中直接以示例描述,原文如下 6.46 example 2 the...