标题:请教一个超级基础的问题。
只看楼主
chlgk
Rank: 1
等 级:新手上路
帖 子:14
专家分:0
注 册:2010-9-29
结帖率:66.67%
已结贴  问题点数:20 回复次数:3 
请教一个超级基础的问题。
我想产生一系列数,然后把这些数放到一个矩阵向量里,
#include<iostream.h>
void main()
{
for (int ai=0.01;ai<1;ai=ai+0.01)
{cout<<ai<<endl;}
for (int aj=1;aj<5; aj=aj+0.05)
{cout<<aj<<endl;}
for (int ak=5;ak<10; ak=ak+0.1)
{cout<<ak<<endl;}
for (int al=10;al<100;al=al+0.5)
{cout<<al<<endl;}
for (int an=100;an<5000;an=an+1)
{cout<<an<<endl;}
}
在我compile cpp文件时,出现如下错误
fatal error C1010: unexpected end of file while looking for precompiled header directive
Error executing cl.exe.
,请问是什么原因。 呵呵绝对的新手,
搜索更多相关主题的帖子: 基础 超级 
2010-10-10 17:19
yangang2
Rank: 6Rank: 6
等 级:侠之大者
威 望:1
帖 子:64
专家分:432
注 册:2010-9-1
得分:10 
改为以下代码就没问题了
#include<iostream.h>
void main()
{
for (double ai=0.01;ai<1;ai=ai+0.01)
{cout<<ai<<endl;}
for (double aj=1;aj<5; aj=aj+0.05)
{cout<<aj<<endl;}
for (double ak=5;ak<10; ak=ak+0.1)
{cout<<ak<<endl;}
for (double al=10;al<100;al=al+0.5)
{cout<<al<<endl;}
for (double an=100;an<5000;an=an+1)
{cout<<an<<endl;}
}
你将整型的循环控制变量加上小数,这是不对的,会受到警告,而且构成了死循环,在第一个循环语句中即for (double aj=1;aj<5; aj=aj+0.05),aj的值永远为1,那条件永远满足,所以这是不对的,改为doulbe类型就可以了。


[ 本帖最后由 yangang2 于 2010-10-10 18:37 编辑 ]
2010-10-10 18:35
小佛陀
Rank: 1
等 级:新手上路
帖 子:5
专家分:2
注 册:2010-10-4
得分:0 
还没看懂!!!
2010-10-11 08:19
yangang2
Rank: 6Rank: 6
等 级:侠之大者
威 望:1
帖 子:64
专家分:432
注 册:2010-9-1
得分:10 
写错了,那个for循环应该是楼主写的那个for(int aj=1;aj<5;aj=aj+0.05),因为aj为整型所以aj=aj+0.05不能得到类似1.05的小数,自动取为1,即aj永远为1,所以是死循环,那个for(int ai=0.01;ai<1;ai=ai+0.01)也是类似的道理
2010-10-11 12:54



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-322461-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.064201 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved