首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何让我的代码工作?循环在不应该这样做的时候却以某种方式终止了

如何让我的代码工作?循环在不应该这样做的时候却以某种方式终止了
EN

Stack Overflow用户
提问于 2019-06-10 16:59:20
回答 1查看 90关注 0票数 1

我最近启动了cs50,我正在做问题集1,我的代码有问题,我不知道wrong.The问题是什么,提示一个介于1和8(包括1和8)之间的数字。如果您没有输入介于1和8(包括1和8)之间的数字,应该会再次提示。

代码语言:javascript
复制
$ ./mario
Height: -1
Height: 0
Height: 42
Height: 50
Height: 4

我尝试过使用do while循环,但是如果我输入了错误的数字或正确的数字,循环就会终止。

代码语言:javascript
复制
int main(void) {

    int n;
    do {

        printf("Height: ");
        n = scanf("%d", &n);

    }while(n < 1 || n > 8);
}

它应该像下面这样工作。

代码语言:javascript
复制
$ ./mario
Height: -1
Height: 0
Height: 42
Height: 50
Height: 4
Stored: 4

但这是我在CLion中运行它时给出的消息。

C:\Users\acer\CLionProjects\untitled5\cmake-build-debug\hello.exe

高度:11进程已完成,退出代码为0

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-06-10 17:29:15

你不需要把扫描的返回值赋给一个变量。

如果您想从客户端扫描变量'n‘,只需:

代码语言:javascript
复制
scanf("%d", &n);

而不是

代码语言:javascript
复制
n = scanf("%d", &n);

点击此链接可以帮助您了解更多https://computer.howstuffworks.com/c7.htm

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56523323

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档