C 语言中的输入和输出44


C 语言提供了一系列强大的函数和宏,用于在运行时从标准输入和输出设备进行输入和输出。理解这些函数的正确用法对于高效地与用户交互至关重要。

输入

C 语言使用 scanf 函数从标准输入获取用户输入。scanf 函数的语法如下:int scanf(const char *format, ...);

其中:

format:指向格式化字符串的指针,指定要读取的变量的格式。
...:要读取变量的地址的变参列表。

例如,要读取一个整数、一个浮点数和一个字符串,可以使用以下 scanf 语句:int num;
float fnum;
char str[20];
scanf("%d %f %s", &num, &fnum, str);

输出

C 语言使用 printf 函数向标准输出设备打印数据。printf 函数的语法如下:int printf(const char *format, ...);

其中:

format:指向格式化字符串的指针,指定要打印数据的格式。
...:要打印变量的地址的变参列表。

例如,要打印整数、浮点数和字符串,可以使用以下 printf 语句:int num = 10;
float fnum = 20.5;
char str[] = "Hello, world!";
printf("Number: %dFloat: %fString: %s", num, fnum, str);

文件输入和输出

除了标准输入和输出之外,C 语言还允许从文件进行输入和输出。为此,可以使用 fopen、fread、fwrite 和 fclose 函数。

fopen 函数用于打开一个文件,并返回一个指向文件流的指针。fread 函数用于从文件流中读取数据,而 fwrite 函数用于向文件流中写入数据。fclose 函数用于关闭文件流并释放与之关联的资源。

例如,要从名为 的文件中读取数据,并将其存储在字符串数组中,可以使用以下代码:FILE *fp = fopen("", "r");
char str[100];
fread(str, 1, 100, fp);
fclose(fp);

要向名为 的文件中写入数据,可以使用以下代码:FILE *fp = fopen("", "w");
char str[] = "Hello, world!";
fwrite(str, 1, strlen(str), fp);
fclose(fp);

常见问题解答
如何读取空格字符?

scanf 函数不能直接读取空格字符。可以使用 getchar 函数或 gets 函数来读取空格字符。


如何格式化输出?

格式化字符串中可以使用格式说明符来指定输出格式。有关格式说明符的更多信息,请参阅 C 语言手册。


如何处理输入错误?

scanf 函数会在遇到输入错误时返回一个值。可以检查此返回值以检测错误并采取适当的操作。




掌握 C 语言中的输入和输出操作对于编写交互式程序和处理数据至关重要。本文介绍了 scanf、printf、fopen、fread、fwrite 和 fclose 函数的基本用法。通过理解这些函数,可以有效地进行输入和输出操作,并创建健壮可靠的 C 程序。

2024-12-03


上一篇:C 语言的 inv 函数:用于取反二进制位

下一篇:C 语言中字符变量的输入和输出