这是我第一次处理C ++中的小数点,我想知道我是否希望for循环增加0.01 x 0.01而不是1.0 x 1.0我能做什么。 我试过了,但显然它没有用。
#include <iostream>
using namespace std;
int main(){
double i;
for (i=1.5;i<1.68;i++);
cout<<i;
system("pause");
return 0;
}
我怎样才能完成这项工作?
提前谢谢。
答案 0 :(得分:2)
for (i = 1.5;i < 1.68;i = i + 0.1)
cout << i << endl;
;
之后将不会for loop
,否则它将成为statement
并且无法正常工作..
floating points
性质是出乎意料的,因此有时会因为精确丢失而变得头痛。所以尽量避免使用循环..总是尝试在integer
中使用loop
..
所以这是另一个答案,它比上面更好,并且不太容易出现任何意外结果
int i;
for (i = 150;i < 168;i += 10) {
cout << i / 100.0 << endl;
}
答案 1 :(得分:0)
试试这个:
#include <iostream>
using namespace std;
int main(){
int i;
for (i=150;i<168;i+=10)
{
double d=i/100.0;
cout<<d;
}
system("pause");
return 0;
}
您的代码for (i=1.5;i<1.68;i++);
中的一个错误是&#34;;&#34;之后&#34;)&#34;。这意味着,这个循环什么都不做。即下一行cout<<i;
不在循环体内。