我有一个函数可以在函数中对数组(aArray)和数组(bArray)中的元素(int)中的多个元素(double)进行排序。但是,当我打印出来时,它变成了垃圾。
aSize指的是aArray的大小; aArray [A大小];
bSize是指bArray的大小; bArray [BSIZE];
e.g 对于数组:
aArray[5] = { 2.5, 4.5, 3.5, 7.5, 5.5 }
算法后:
aArray[5] = { 2.5, 3.5, 4.5, 5.5, 7.5}
表示b数组:
bArray[3] = { 3, 1, 5 }
算法后:
bArray[3] = { 1, 3, 5}
在下面的代码之后,它应该打印出aArray []
的位置例如:
cArray[3] = { 2.5, 3.5, 5.5 }
此处打印输出代码:
int main(){
int bSize,tem;
double tem1;
cout<<endl<<endl<<"recalculation: [ ";
for(int t=0;t<bSize;t++){
tem=bArray[t];
tem1=aArray[tem];
tem1=cArray[t];
cout<<cArray[t]<<" ";
}
}
输出:
重新计算:[6.95324e-310 6.95322e-310 1.62597e-260]
帮忙。感谢
答案 0 :(得分:0)
C ++中的数组基于零,访问项目#5(因为数组中元素的索引为0到4)将导致垃圾。 您还应该初始化变量(大小)
答案 1 :(得分:0)
我明白了,实际上当我打印出数组tem1 = cArray [t]时,cArray [t]未被声明,所以这个问题的关键实际上是
cArray [t] = tem;
洛尔!!