请问以scanf的返回值作为循环条件的话,要输入什么才能使循环停止?

img


#include<iostream>
#include <string>
using namespace std;

int main()
{
    char s[100];
    while (scanf("%s", s) != EOF)
    {
        cout << s;
    }
}

scanf()函数的返回值是扫描到的有效输入项的数目,所以,
1、
while(scanf("%s",s)==1)的循环终止条件是:
输入非数字字符及回车(如,s回车)
2、
scanf("%s", s) != EOF
EOF是定义在头文件<stdio.h>的常量,一般等于-1,windows下一般是ctrl + z表示EOF。
输入ctrl+z,循环终止

回车有反应吗

你得scanf里面少了个&
scanf("%c",&c)!=EOF