C 语言中键盘输入的函数指南372


在 C 语言中,键盘输入是通过标准输入流 stdin 进行的,该流由几个函数操作,以允许从用户接收文本和数字输入。

1. getchar() 函数

getchar() 函数从标准输入中读取单个字符。它从键盘读取一个字节并将其作为整数值返回。
#include
int main() {
int ch = getchar();
printf("输入的字符:%c", ch);
return 0;
}

2. gets() 函数

gets() 函数从标准输入中读取一行文本,包括空格和换行符。它将读取的文本存储在指定的字符数组中,并以 null 字符 '\0' 作为结束。
#include
int main() {
char str[100];
gets(str);
printf("输入的字符串:%s", str);
return 0;
}

3. scanf() 函数

scanf() 函数根据指定的格式字符从标准输入中读取数据。它比 getchar() 和 gets() 更强大,因为它允许一次读取多种输入。
#include
int main() {
int num;
float fnum;
char ch;
scanf("%d %f %c", &num, &fnum, &ch);
printf("输入的数字:%d输入的浮点数:%f输入的字符:%c", num, fnum, ch);
return 0;
}

4. fscanf() 函数

fscanf() 函数与 scanf() 类似,但它从文件流读取数据,而不是标准输入。它允许从文件读取格式化的数据。
#include
int main() {
FILE *fp = fopen("", "r");
int num;
float fnum;
char ch;
fscanf(fp, "%d %f %c", &num, &fnum, &ch);
printf("从文件读取的数字:%d从文件读取的浮点数:%f从文件读取的字符:%c", num, fnum, ch);
fclose(fp);
return 0;
}

5. fgetc() 函数

fgetc() 函数从文件流中读取单个字符。它与 getchar() 类似,但它用于文件输入。
#include
int main() {
FILE *fp = fopen("", "r");
char ch;
while ((ch = fgetc(fp)) != EOF) {
printf("%c", ch);
}
fclose(fp);
return 0;
}

6. fgets() 函数

fgets() 函数从文件流中读取一行文本,包括空格和换行符。它与 gets() 类似,但它用于文件输入。
#include
int main() {
FILE *fp = fopen("", "r");
char str[100];
while (fgets(str, 100, fp) != NULL) {
printf("%s", str);
}
fclose(fp);
return 0;
}

选择最佳函数

在选择要使用的键盘输入函数时,需要考虑以下因素:
输入类型(字符、字符串、数字)
输入源(标准输入或文件)
所需的格式化(例如,浮点数、百分数)

通过考虑这些因素,您可以选择最适合特定应用程序的函数。

2025-02-16


上一篇:C语言中的四种关键函数

下一篇:C 语言自定义函数类型