/*我目前正在学习c ++作为我核心科目的一部分*/
奇怪的是,在编写另一个长程序时,我遇到了这个实例
#include <iostream>
#include <cmath>
using namespace std;
int main()
{
int a,b,res; float c;
cin>>a;
cin>>b;
cin>>c;
res=(a-b)/c;
cout<<res;
}
Run Code Online (Sandbox Code Playgroud)
输入:
a = 2 b = 1 c = 0.2
输出:
4
期望的输出:
五
我需要在起始a和结束b之间找到res,(增量c的步数)截断到整数值之前的下一个.
我尝试将(ab)定义为另一个int,仍然是相同的结果4而不是5.
但只是测试
int main()
{
cout<<(2-1)/0.2;
}
Run Code Online (Sandbox Code Playgroud)
正确给了5.
还有一个疑问,如果我没有像上面那样定义任何变量,那么系统会为结果假设什么数据类型.
c++ ×1