1.格式化輸入輸出函數
printf()函數
scanf()函數
2.非格式化的輸入輸出函數
puts()函數
gets()函數
putchar()函數
getchar()函數數組
fgets()函數函數
你們很熟悉了,這裏很少加介紹.net
調用格式爲:scanf("<格式化字符串>",<地址表>);
scanf的返回值
scanf()函數返回成功賦值的數據項數
讀到文件末尾出錯時則返回EOF。
如:
scanf("%d%d", &a, &b);
若是a和b都被成功讀入,那麼scanf的返回值就是2
若是隻有a被成功讀入,返回值爲1
若是a和b都未被成功讀入,返回值爲0
若是遇到錯誤或遇到end of file,返回值爲EOF
且返回值爲int型
空白符:空白字符會使scanf()函數在讀操做中略去輸入中的一個或多個空白字符。
非空白符:一個非空白字符會使scanf()函數在讀入時剔除掉與這個非空白字符相同的字符指針
puts()函數用來向標準輸出設備(屏幕)寫字符串並換行
調用格式爲puts(s),其中s爲字符串變量(字符串數組名或字符串指針)。puts()函數的做用於printf("%s\n",s)相同
blog
puts()函數只能輸出字符串,不能輸出數值或者進行格式變換ci
能夠將字符串直接寫入puts()函數中。如puts("Hello,Tuuu")字符串
char * gets(char * str);
gets()函數用來向標準輸入設備(鍵盤)讀取字符串直到回車結束,不一樣於fgets,它沒有指定num,因此須要注意字符數組str的大小
調用格式爲gets(s),其中s爲字符串變量(字符串數組名或者字符串指針)。gets()函數的做用於scanf("%s",&s)函數做用相似,使用``scanf(「%s」,&s) 函數輸入字符串時存在一個問題, 就是若是輸入了空格會認爲輸入字符串結束,空格後的字符將做爲下一個輸入項處理, 但gets() 函數將接收輸入的整個字符串直到回車爲止。get
getchar()函數 頭文件 stdio.hio
int getchar(void) 從標準輸入stdin讀入一個字符,程序等待你輸入的時候你能夠輸入多個字符,回車後程序繼續執行。可是getchar實際上制度如第一個字符。經常使用在exe中暫停程序。class
cin >> a >> b;//遇到空格結束
cout << a << b << endl;
getline( cin , s);。讀取結束1)到文件結束,2)遇到函數的定界符,3)輸入達到最大限度。