Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2349557
  • 博文数量: 816
  • 博客积分: 10000
  • 博客等级: 上将
  • 技术积分: 5010
  • 用 户 组: 普通用户
  • 注册时间: 2008-12-17 17:57
文章分类

全部博文(816)

文章存档

2011年(1)

2008年(815)

分类:

2008-12-17 18:05:49

我想统计float数据的出现次数。一些列float数据保存在一个result2.txt文件中,将文件打开后统计每个数据出现的次数。
数据如下:

25.01
24.895
25.4
24.965
下面是我的程序
void main()
{
fstream fMyfile;
fMyfile.open("C:\\result2.txt",ios::in);
if(!fMyfile){cout<<"error";
exit(-1);}


float avertemp[100];
int d2,d3;
float d1,d4;
int result[60];


for(int a=0;a<50;a++)
{result[a]=0;}


for(int i=0;i<40;i++)
{
fMyfile>>avertemp[i];
d2=0;
for(float d=24.75; d<=25.25;)
{
if ((avertemp[i]-d)==0)
{
result[d2]=result[d2] +1;

}
d=(float)(d+0.01);
d2++;
}

}

fMyfile.close ();

d1=24.75;
for(int j=0;j<50;j++)
{
cout<d1=d1+0.01;
}
}

现在我的结果都是0,不知道给怎么改?也就是说if ((avertemp[i]-d)==0) 根本就没起作用,但是该怎么改呢?
请指教,谢了!


--------------------next---------------------
5.01
24.895
25.4
24.965
下面是我的程序
void main()
{
fstream fMyfile;
fMyfile.open("C:\\result2.txt",ios::in);
if(!fMyfile){cout<<"error";
exit(-1);}


float avertemp[100];
int d2,d3;
float d1,d4;
int result[60];


for(int a=0;a<50;a++)
{result[a]=0;}//这个地方是不是有什么不正常啊??


for(int i=0;i<40;i++)
{
fMyfile>>avertemp[i];
d2=0;
for(float d=24.75;d+=0.01; d<=25.25;)//你这个地方是不是没有自加啊???
{
if ((avertemp[i]-d)==0)
{
result[d2]=result[d2] +1;

}
d=(float)(d+0.01);
d2++;
}

}

fMyfile.close ();

d1=24.75;
for(int j=0;j<50;j++)
{
cout<d1=d1+0.01;
}
}
呵呵,兄弟,你的循环真是多啊,看的我头都大了。
以后,最好把每一个循环的作用都标出来,这样,即方便你日后看,也方便别人帮你看。

--------------------next---------------------

阅读(1067) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~