美文网首页
Dev C++带来的一个小插曲

Dev C++带来的一个小插曲

作者: 莫一是 | 来源:发表于2017-11-16 23:26 被阅读0次

    练习2-1的要求如下:

    像下面那样读取两个整数,然后显示前者是后者的百分之几。

    题图

    我最终输入的代码如下

    正确代码

    按理说,这份代码完全没有问题,但是结果却总是固定为0%。

    后来查找原因,是Dev C++编译运行时,不知为何,仍然是运行先前不完善的代码。而0%正是先前问题代码的运行结果。

    对策:彻底删除先前的.cpp  .exe 文件,重新编译运行,一切正常。


    下面是先前的问题代码

    问题代码

    可以看到L11 是不正确的。a,b均为int型,而a/b的结果已经为0,所以 result被锁定为0.

    我的解题思路:既然a/b<1,要表示为百分数,只需再乘100即可。却忽略了数据类型的运算,发现后一度想办法进行类型转换,最终却发现,远不如答案简洁。

    可见,乘除虽然是同级运算,但顺序的调整,有时也会起到意想不到的作用。

    后经思考,使用强制类型转换的代码如下

    强制类型转换实现

    相关文章

      网友评论

          本文标题:Dev C++带来的一个小插曲

          本文链接:https://www.haomeiwen.com/subject/gyxdvxtx.html