在C语言中使用getchar函数读取多行输入的方法

avatar
作者
筋斗云
阅读量:0

在C语言中,使用getchar()函数通常用于从标准输入(通常是键盘)读取单个字符。如果要读取多行输入,需要使用循环结构,并且可能需要结合使用fgets()函数来读取整行文本。

下面是一个使用getchar()和循环结构来读取多行输入的示例代码:

#include <stdio.h>  int main() {     char ch;     printf("请输入多行文本,输入任意字符结束:\n");      while ((ch = getchar()) != '\n' && ch != EOF) {         // 在这里处理读取到的字符,例如打印到屏幕上         putchar(ch);     }      printf("\n输入结束。\n");     return 0; } 

在这个示例中,getchar()函数用于逐个读取字符。循环会一直执行,直到读取到换行符('\n')或文件结束符(EOF)。在循环体内,可以使用putchar()函数将读取到的字符打印到屏幕上。

然而,上面的代码只能逐字符地读取输入,并且需要在每次迭代中调用getchar()。如果要读取整行文本,可以使用fgets()函数,它可以一次性读取一行文本并存储到一个字符串变量中。下面是一个使用fgets()的示例代码:

#include <stdio.h>  int main() {     char line[100];     printf("请输入多行文本,输入空行结束:\n");      while (fgets(line, sizeof(line), stdin)) {         // 在这里处理读取到的整行文本,例如打印到屏幕上         printf("%s", line);     }      printf("\n输入结束。\n");     return 0; } 

在这个示例中,fgets()函数用于读取整行文本,并将其存储到line数组中。循环会一直执行,直到读取到空行(即输入结束)。在循环体内,可以使用printf()函数将读取到的整行文本打印到屏幕上。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!