用for(int i=0;i<count;i++)
{
m_list_v.GetText(i,str_v);
v=atof(str_v);
point.x=v;
m_list_tv.GetText(i,str_tv);
tv=atof(str_tv);
point.y=tv;
m_barbarism.Add(point);
}
来获得数据并装入数组,
for(i=0;i<size;i++)//用冒泡排序找出最值,有待改进!
{
for(int j=0;j<size-i;j++)
{
if(m_barbarism[j].x<m_barbarism[j+1].x)
{
v_temp=m_barbarism[j].x;
m_barbarism[j].x=m_barbarism[j+1].x;
m_barbarism[j+1].x=v_temp;
}
if(m_barbarism[j].y<m_barbarism[j+1].y)
{
tv_temp=m_barbarism[j].y;
m_barbarism[j].y=m_barbarism[j+1].y;
m_barbarism[j+1].y=tv_temp;
}
}
}为什么在排序的时候if(m_barbarism[j].y<m_barbarism[j+1].y)
{
tv_temp=m_barbarism[j].y;
m_barbarism[j].y=m_barbarism[j+1].y;
m_barbarism[j+1].y=tv_temp;
}
m_barbarism[j].y全是0.000000呢???而不是装入的数据呢?????

解决方案 »

  1.   

    调试吧。看看你往数组里放的数据是不是正确的。这么多变量,你没有提供类型。point记录整数
      

  2.   

    我定义的是CArray(POINT,POINT),数据是装进去了的~~!!!!
    可就是排序的时候if(m_barbarism[j].y<m_barbarism[j+1].y)
    {
    tv_temp=m_barbarism[j].y;
    m_barbarism[j].y=m_barbarism[j+1].y;
    m_barbarism[j+1].y=tv_temp;
    }
    没有数据,全是0,而m_barbarism[j].x又是正常的~~!!!!!!
      

  3.   

    是不是y小于0啊,POINT,y可是整型的。
      

  4.   

    大于0的啊~~~!!!
    为什么point.y是整型的?????
    装进去的是double型的~~~!!!!!