python數(shù)組添加數(shù)據(jù) python怎么輸入含空格的字符串?
python怎么輸入含空格的字符串?在C語言中,可以使用gc語言如何輸入數(shù)組?在C語言中,有兩個函數(shù)允許用戶從鍵盤輸入數(shù)組數(shù)據(jù)。它們是gets()和scanf()。Scanf()是通過格式控制器% s
python怎么輸入含空格的字符串?
在C語言中,可以使用g
c語言如何輸入數(shù)組?
在C語言中,有兩個函數(shù)允許用戶從鍵盤輸入數(shù)組數(shù)據(jù)。它們是gets()和scanf()。Scanf()是通過格式控制器% s輸入的數(shù)組字符串。除了字符串,還可以輸入其他類型的數(shù)據(jù)。Gets()是直接輸入數(shù)組字符串,只能輸入字符串。
但是,scanf()和gets()是有區(qū)別的。
Scanf()讀取由空格分隔的字符串。當(dāng)它遇到空格時,就認(rèn)為當(dāng)前字符串結(jié)束了,所以無法讀取包含空格的字符串。
Gets()認(rèn)為空格也是字符串的一部分,只有當(dāng)遇到Enter鍵時,字符串輸入才結(jié)束。所以不管輸入多少個空格,只要不按回車鍵,就是gets()的完整字符串。換句話說,gets()用于讀取一整行字符串。
例如:
一個
2
三
四
五
六
七
八
九
10
11
12
13
14
15
16
17
18
#包含ltstdio.hgt
int main(){
char str1[30] {0}
char str2[30] {0}
char str3[30] {0}
//獲取()用法
printf(# 34輸入一個string: # 34)
獲取(str1)
//scanf()用法
printf(# 34輸入一個string: # 34)
掃描f(#34%s#34,str2)
掃描f(#34%s#34,str3)
//單獨輸出
printf(#34
str1: % s
#34,str1)
printf(#34str2: % s
#34,str2)
printf(#34str3: % s
第34位,str3)
返回0
}
運行結(jié)果:
一個
2
三
四
五
輸入一個string: C C Java Python
輸入一個string: PHP JavaScript
str1:爪哇計算機(jī)編程語言
str2: PHP
str3: JavaScript
第一個輸入字符串由gets()讀取并存儲在str1中。第二個輸入字符串的前半部分由第一個scanf()讀取并存儲在str2中,后半部分由第二個scanf()讀取并存儲在str3中。
注意,scanf()讀取數(shù)據(jù)時,需要數(shù)據(jù)的地址,地址是常數(shù),所以對于int、char、float等類型的變量,要在前面加amp來獲取它們的地址。但是在這段代碼中,我們只給出了字符串的名稱,但是我們沒有 不要在它前面加amp。為什么?因為字符串名或者數(shù)組名在使用過程中通常會轉(zhuǎn)換成地址,所以加amp是多余的,甚至?xí)?dǎo)致錯誤。
就目前所學(xué)的知識來看,int,char,float等變量。在scanf()中使用時應(yīng)該在前面加amp,而在scanf()中使用數(shù)組或字符串時不加amp,它們自己會轉(zhuǎn)換成地址。讀者必須記住這一點。
至于數(shù)組名(字符串名)和地址的轉(zhuǎn)換細(xì)節(jié),以及數(shù)組名什么時候會轉(zhuǎn)換成地址。
以上是C語言數(shù)組的輸入方法。詳細(xì)的