引言
在C言語編程中,輸入結束的標記是一個關鍵的不雅點,對懂得順序怎樣從用戶那裡獲取數據至關重要。本文將深刻探究C言語中輸入結束的奧秘,幫助讀者從小白改變為純熟控制輸入技能的順序員。
輸入結束標記
在C言語中,輸入結束的標記可能是多種多樣的,以下是一些罕見的輸入結束標記:
1. 回車鍵(Enter)
在大年夜少數情況下,輸入結束的標記是回車鍵。比方,當利用getchar()
函數讀取字元時,回車鍵會被讀取並作為輸入的結束。
char ch;
while ((ch = getchar()) != '\n'); // 讀取字元直到回車鍵
2. 文件結束符(EOF)
EOF是文件結束符的縮寫,它可能在文件輸入操縱頂用作結束標記。在標準輸入(平日是鍵盤)中,EOF平日是經由過程按Ctrl+D(在Unix/Linux體系)或Ctrl+Z(在Windows體系)生成的。
int n;
while (scanf("%d", &n) != EOF); // 讀取整數直到EOF
3. 特定字元
在某些特定情況下,可能利用特定的字元作為輸入結束的標記。比方,在讀取字元串時,可能利用'\n'
或EOF
。
char str[100];
while ((str[i] = getchar()) != '\n' && str[i] != EOF); // 讀取字元串直到回車鍵或EOF
實戰案例
以下是一些利用差別輸入結束標記的實戰案例:
案例一:統計輸入字元
#include <stdio.h>
int main() {
char c;
int letters = 0, space = 0, digit = 0, other = 0;
while ((c = getchar()) != '\n' && c != EOF) {
if (c > 'A' && c < 'Z') {
letters++;
} else if (c > 'a' && c < 'z') {
letters++;
} else if (c > '0' && c < '9') {
digit++;
} else if (c == ' ') {
space++;
} else {
other++;
}
}
printf("Letters: %d\n", letters);
printf("Spaces: %d\n", space);
printf("Digits: %d\n", digit);
printf("Others: %d\n", other);
return 0;
}
案例二:讀取多組整數
#include <stdio.h>
int main() {
int n, sum = 0;
while (scanf("%d", &n) != EOF) {
sum += n;
}
printf("Sum: %d\n", sum);
return 0;
}
總結
經由過程本文的介紹,讀者應當對C言語中輸入結束的奧秘有了更深刻的懂得。控制輸入結束的技能對編寫有效的C言語順序至關重要。盼望本文可能幫助讀者從小白改變為純熟控制輸入技能的順序員。