首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >程序在Dev-C++中关闭

程序在Dev-C++中关闭
EN

Stack Overflow用户
提问于 2015-01-26 07:12:44
回答 2查看 52关注 0票数 0

这是我输入的代码。我是个编程新手,不明白为什么计算机会忽略返回A或B的命令

代码语言:javascript
复制
  #include <stdio.h>
    int main (void){
        float grade;

        printf ("Enter grade");
        scanf  ("%d",&grade);

        if (grade >= 90) {
            printf ("A\n");
        }
        else {
            printf ("B\n");
        }
        return 0;
    }
EN

回答 2

Stack Overflow用户

发布于 2015-01-26 07:14:42

您必须更改scanf语句中的格式说明符。从这个开始:

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

要这样做:

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

因为%d是用于integer's的,%f是用于float的。

有关scanf()的更多信息,请访问:http://www.cplusplus.com/reference/cstdio/scanf/

票数 4
EN

Stack Overflow用户

发布于 2015-01-26 07:17:00

scanf格式字符串应为"%f" (float),而不是"%d" (int)。C++将在为int分配的内存中盲目地存储float。然后,其他代码将尝试将这些位解释为浮点数,这将得到奇怪的结果。

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

https://stackoverflow.com/questions/28142698

复制
相关文章

相似问题

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