scanf可以輸入含有空格的字符串嗎 c語言怎么定義字符串的量?
c語言怎么定義字符串的量?c沒有字符串定義,字符串被解包到char數(shù)組中。使用字符數(shù)組,但要為它保留一個位置。這個為什么不能用gets函數(shù)輸入?Gets()是string的輸入函數(shù),gets(c)表示
c語言怎么定義字符串的量?
c沒有字符串定義,字符串被解包到char數(shù)組中。
使用字符數(shù)組,但要為它保留一個位置。
這個為什么不能用gets函數(shù)輸入?
Gets()是string的輸入函數(shù),gets(c)表示將一個字符串輸入到C數(shù)組中,這里也可以使用scanf函數(shù)。
scanf(";%s ";,c);但是,scanf()函數(shù)在輸入空格或回車時結(jié)束,在輸入回車時結(jié)束。
C語言中put()與puts()的區(qū)別是什么?
Putchar () and put option ()?
Putchar()的意思是輸出一個字符,常用于輸出一些特殊字符。
例如,如果要輸出一個空格:putchar(
);
例如,如果要輸出一行:for(i0;我
它的功能和printf一樣。相對getchar()獲取一個字符。
puts();和gets();
前者是輸出,后者是獲得(從鍵盤)。
但是這都是關(guān)于字符數(shù)組或者指向字符數(shù)組的指針。
比如你在char str[20];里面輸入了一個字符串(可以用gets(str)函數(shù)實現(xiàn))。然后通過puts(str);語句就可以進行輸出了。這里要注意,這兩個函數(shù)的括號里面的參數(shù)是字符串數(shù)組的首地址也就是說,字符數(shù)組的名稱或已分配給字符數(shù)組的指針的名稱。
這兩個和scanf(s,str)有關(guān);與for和c的組合相比,優(yōu)點是編寫簡單,可以接受空格(比如輸入how are you時,可以用gets()輸入空格)。Scanf識別空格和回車。為了結(jié)束,gets可以接受空格,只是以回車作為結(jié)束。這兩個函數(shù)在輸入輸出字符串時出現(xiàn)的頻率相當高。
然后是以下文件的輸入輸出,fgetc()/fputc()/fgets()/fputs()。有興趣可以看看。
c語言如何使輸出有空格?
C語言中輸出字符串的函數(shù)有printf(#34%s#34) puts() fputs()等。字符串可以是任何字符,包括空格,無需特殊處理,例如:
char str[]#34hello world#34
printf(#34%s
#34,str)
Put option
Fputs(str,stdin)但是在輸入帶空格的字符串時,只能使用gets()或fgets(),而不能使用scan (# 34% s # 34),因為scanning (# 34% s # 34)輸入字符串時,遇到空格就結(jié)束。輸入。gets()函數(shù)是一個輸入函數(shù),以回車作為終止符,可以輸入帶空格的字符串。