在线等待答复!
#include<iostream>
using namespace std;
void Input(int Array[],int & n) //为什么用 "&"?直接用n表示就行了嘛!
{
cout<<"Enter integers. Terminate with 0;\n";
n=0;
do {cout<<"Array["<<n<<"]:";
cin>>Array[n];}
while(Array[n++] !=0); //不等于0是什么意思?用"++"实现了什么效果?
--n;} //这里用"--"实现了什么效果?
void Output(int Array[], int n)
{
for(int i=0;i<n; i++)
cout<<Array[i]<<"";}
void main(){
const int MAXSIZE=5;
int Array[MAXSIZE]={0},size;
Input(Array,size);
cout<<"The array has"<<size<<"elements";
Output(Array,size);
}
[解决办法]
1.要对原函数中的size作处理,要对n做&。
2.主函数中int Array[MAXSIZE]={0}对Array中的元素做赋0处理,非零时证明数组已经到末尾了
3.--n是为了消去n++的最后一次运算