多组输入的两种写法(C语言)

简介: 多组输入的两种写法(C语言)

多组输入

多组输入的意思就是读取数量不定的输入数据(不能确定输入数据的数量),在这种情况下,需要不断读取数据直至没有新的输入为止。

多组输入的场景在编写程序中非常常见,其中C语言中最常用的有两种

while(scanf("%d", &a) != EOF)
while(scanf("%d", &a) == 1)

首先需要了解scanf()函数,scanf()函数的定义如下:

int scanf ( const char * format, ... );

可以看出,scanf()函数返回值为int类型,如果scanf读取成功,则返回的值是scanf真正读取到的值的个数,如果读取失败则返回eof,eof在c语言中表示文件结束符(endoffile),其值为-1,例如:

ret = scanf("%d",&a);

此时如果读取成功,则ret的值为1,同理ret = scanf("%d %d",&a,&b);读取成功时ret的值为2。


了解完scanf()函数之后,再来看这两种写法:

1. while(scanf("%d", &a) != EOF)

2. while(scanf("%d", &a) == 1)

  • 第一种,当scanf正常读取时,其返回值为1不等于eof,判断为真因此会继续执行while循环。
  • 在理解了第一种的写法之后,第二种写法便非常好理解,当scanf正常读取时,其返回值为1,判断为真,因此继续执行while循环。
目录
相关文章
|
2月前
|
存储 C语言
C语言数据的输入举例
C语言数据的输入举例
17 1
|
2月前
|
存储 C语言
C语言数据的输出举例
C语言数据的输出举例
17 1
C4.
|
2月前
|
C语言
C语言数据的输入与输出
C语言数据的输入与输出
C4.
13 0
|
13天前
|
存储 安全 C语言
C语言中的输入与输出
C语言中的输入与输出
20 0
|
19天前
|
Unix 编译器 Linux
C语言多组输入
C语言多组输入
8 0
|
26天前
|
C语言
多组数据的输入方法(c语言实现)
多组数据的输入方法(c语言实现)
|
2月前
|
编译器 C语言
C语言2🔥:常量,输入与输出
C语言2🔥:常量,输入与输出
20 0
|
2月前
|
存储 C语言
C语言——数据输入和输出
C语言——数据输入和输出
14 0
|
2月前
|
存储 C语言
C语言的数据的输入举例
C语言的数据的输入举例
9 2
|
6月前
|
编译器 C语言
23 C语言 - 输入 & 输出
23 C语言 - 输入 & 输出
34 0