C程序在停止前不能输入多个变量[已关闭]

uwopmtnx  于 2023-02-07  发布在  其他
关注(0)|答案(2)|浏览(84)

**已关闭。**此问题需要debugging details。当前不接受答案。

编辑问题以包含desired behavior, a specific problem or error, and the shortest code necessary to reproduce the problem。这将有助于其他人回答问题。
2天前关闭。
Improve this question
在编写C程序时,我无法同时获得一个以上的用户输入。在程序获得一个输入后,它就停止,不会再接受任何输入,也不会继续程序的其余部分。Image 1
当我不使用scanf和不接受输入时,程序工作正常。Image 2
我已经安装了mingw和c/c++扩展,但是它就是不工作。
我试着调试程序,也试着多次重新安装mingw和vscode,但它不起作用。

deyfvvtc

deyfvvtc1#

您应该像scanf("%d", &l)一样将要扫描输入的目标变量的 address 传递给scanf。另外,请记住检查对scanf的调用的返回值cppreference.com。
成功赋值的接收参数数(如果在赋值第一个接收参数之前发生匹配失败,则可能为零),或者如果在赋值第一个接收参数之前发生输入失败,则为EOF。

1bqhqjot

1bqhqjot2#

您无法获得多个输入的原因是,在第一次调用scanf时发生了错误,程序无法进行第二次scanf调用。
调用scanf时,需要在变量名前添加一个&符号,如下所示:

scanf ("%d", &l);

&被称为地址运算符,您将在学习C/C++的过程中了解有关它的更多信息。

相关问题