【C语言】while循环持续输入(scanf持续输入值),代码实例

2025-07-10 07:06:232088

目录

while持续输入循环代码

全部情况的方法总结如下:

1.都是输入一种变量时

2.两种变量输入时:

while持续输入循环代码

while(scanf("%d",&n)!=EOF) {

//....其他判断条件,比如输入的为0,跳出循环

if(n==0)

break;

}

如果n被成功读入,则返回值为1,

如果n未被成功读入,则返回值为0,

如果遇到错误或遇到end of file,返回值为EOF。

那么什么时候返回EOF呢,简单来说在Windows下按住Ctrl+Z,在Mac下按住Ctrl+D,作为结束流的信号。

全部情况的方法总结如下:

1.都是输入一种变量时

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

while(~scanf("%d",&n))

-------------------------------------以上可以按Ctrl+Z或Ctrl+D来结束,按0时会继续输入

while(scanf("%d",&n)&&n!=0)

while(scanf("%d",&n)&&n) //上一步简化后,相当于while(n)<--这个n是你输入的值

while(scanf("%d",&n),n)

-------------------------------------以上是在输入0时结束,按Ctrl+Z或Ctrl+D无效

while(scanf("%d",&n)==1&&n)

-------------------------------------既可以按0时结束,也可以以按住Ctrl+Z或Ctrl+D结束

2.两种变量输入时:

while (scanf("%d %d",&m,&n)!=EOF)

while (~scanf("%d%d",&m,&n))

-----------------------------------------------------以上可以按Ctrl+Z或Ctrl+D来结束,按0 0时会继续输入

while(scanf("%d%d",&m,&n)&&m&&n)

while(scanf("%d%d",&m,&n),m,n)

while(scanf("%d%d",&m,&n)==2,m,n)

--------------------------------------------以上是在输入0 0时结束,按Ctrl+Z或Ctrl+D无效

while(scanf("%d %d",&m,&n)==2&&m&&n)

---------------------------------------------既可以按0 0时结束,也可以以按住Ctrl+Z或Ctrl+D结束