1. 程式人生 > >c 語言連續輸入字符型數據

c 語言連續輸入字符型數據

lib () tchar clu 換行 div 引用 存儲 spa

 1 #include<stdio.h>
 2 #include<stdlib.h>
 3 
 4 void Input1(char* &str){  //
 5     /*
 6             這種情況下想要逐個輸入字符串數組,那麽在每次輸入一個元素後不要加空格或者按回車,
 7         否則不可見的空格符和換行符也會被記錄
 8     */
 9     for(int i=0;i<5;i++){
10         scanf("%c",&str[i]);
11     }
12 }
13 
14 void Input2(char
* &str){ 15 /*這種情況下就可以在輸入一個元素按下空格鍵或者回車鍵,輸出結果依然是正常的*/ 16 for(int i=0;i<5;i++){ 17 scanf(" %c",&str[i]); 18 } 19 } 20 21 void Input3(char* &str){ 22 /*這種情況下就可以在輸入一個元素按下空格鍵或者回車鍵,輸出結果依然是正常的*/ 23 for(int i=0;i<5;i++){ 24 scanf(" %c",&str[i]); 25 getchar(); //
用以接收不可見字符 26 } 27 } 28 29 30 int main() 31 { 32 char *str; 33 /* 34 對字符串數組進行初始化(物理存儲空間的申請), 35 否則在後面用到的 char *&str 指針引用會報錯 36 */ 37 str = (char*)malloc(5*sizeof(char)); 38 //Input1(str); 39 //Input2(str); 40 Input3(str); 41 for(int j=0;j<5;j++){
42 43 printf("%c ",str[j]); 44 } 45 return 0; 46 }

Input1輸入輸出結果:

連續輸入輸出正常

技術分享圖片

帶有空格的輸入輸出不正常

技術分享圖片

Input2輸入輸出結果:

技術分享圖片

Input3輸入輸出結果:

技術分享圖片

相關百度問答:

https://zhidao.baidu.com/question/510517719.html

c 語言連續輸入字符型數據