【发布时间】:2015-01-16 09:01:24
【问题描述】:
假设用户将数字 10、11、22、33、44、55、66、77、88 和 99 输入到数组中。然后程序必须将低于 50 和高于 50 的数字分成两个不同的数组,即 array2 和 array3。但是当我运行我的程序时,它会在 array2 和 array3 中显示一些垃圾内存。
我的程序将与显示器一起运行:
array1 中的数字
10, 11, 22, 33, 44, 55, 66, 77, 88, 99
array2 中的数字
1972394090, 22, 33, 44, 0, 4202032, 2686624, 2686680, 2686924, 10, 11
array3 中的数字
2686700, 4202032, 0, 2686604, 55, 66, 77, 88, 99, 1972394134, 1972394090
这是我的功能码(N定义为10)
void segArr(int array[N], int array2[N], int array3[N])
{
int i;
for(i=1; i<N; i++)
{
if(array[i]<50)
array2[i]=array[i];
if(array[i]>50)
array3[i]=array[i];
}
return;
}
【问题讨论】:
-
您希望元素(例如
array2[1])包含什么?您没有为其分配任何内容,因此它将包含随机位。 我建议在提问之前先学习 C++