字串的輸入輸出

2022-06-10 18:27:11 字數 1219 閱讀 6665

1.字串陣列+初始化

char s1="array"; //字元陣列

char s2[6]="array"; //陣列長度=字串長度+1,因為字串末尾會自動添『\0『

printf("%s,%c\n",s1,s2[2]); 

2.字串指標+初始化

char *sp="pointer"; //字元指標

printf("%s,%c,%c\n",sp,*sp,*(sp+2)); 

3.陣列+scanf

char s1[6];

scanf("%s\n",s1);

printf("%s,%c\n",s1,s1[2]); 

4.指標+scanf

#include

#include//該標頭檔案別忘加,否則使用malloc會報錯

int main()

5.指標+陣列+scanf

char str[60], *sp=str;//將陣列的首位址str賦給指標變數sp

scanf("%s\n",sp);

printf("%s,%c,%c\n",sp,*sp,*(sp+3));//pointer,p,n

printf("%s,%c,%c\n",str,str[0],str[3]);//pointer,p,n

6.注意:如下方法控制台執行會終止

char *sp;//sp未初始化指向不明

scanf("%s\n",sp);

printf("%s\n",sp);

7.用scanf和gets(字元陣列名或指標)進行輸入的區別:

char str1[60],str2[60];

gets(str1); //gets()函式將接收輸入的整個字串直到遇到換行為止

printf("%s\n",str1);

scanf("%s\n",str2);//scanf如果輸入了空格會認為字串結束,空格後的字元將作為下乙個輸入項處理

printf("%s\n",str2);

8.使用while(scanf("%d",&n)!=eof)實現多組測試資料輸入,而不在輸入完一組資料後退出控制台

char s1[60],s2[60];

int cnt; //用來測試scanf返回被輸入函式成功賦值的變數個數

while((cnt=scanf("%s%s",s1,s2))!=eof)

printf("%d",cnt);//當按下ctr+z後會執行該條輸出

字元 字串的輸入輸出

字元與字串的輸入輸出 如果要使用現成的字串函式和方法,就一定要加上對應的標頭檔案,如果在c 當中呢,就是 include 如果是在c當中呢,就是 include 4.1字元,字串的輸入輸出 char c 字元的輸入輸出 scanf c c printf c c 接收單個字元 字串的輸入輸出 char...

字元 字串的輸入 輸出

提前宣告 c字串為char或char 型別,include 而c 字串為string型別。include 定義c字串時,有如下問題 char str hello world 必須初始化 char str 3 想要不初始化,必須指定長度 char str 沒有分配記憶體,且無法用字串常量初始化,否則報...

字串輸入輸出函式

while gets name null 可檢查檔案是否結尾 while ch getchar eof gets 讀取換行符並將其丟棄,fgets 把換行符存字串裡,但每次顯示字串會顯示換行符 不足之處 fgets 是為檔案i o而設計得,在處理鍵盤輸入時就不如gets 那麼方便。它需要第二個引數來...