2个回答
展开全部
程序本身就有问题,按照你写的程序的意思,应该是要交换两个程序的值,而按照C语言的实现方式必须要用到指针不可,程序可以按照以下的方式实现,两个数组的长度必须相同,否则会出现数组下标越界的错误
void Swap(int a[],int b[],int n)//此处的数组已经被弱化成了指针
{
int iTemp = 0;
for (int i=0; i<n; i++)
{
iTemp = a[i];
a[i] = b[i];
b[i] = iTemp;
}
return;
}
int main()
{
int a[5] = {10};
int b[5] = {20};
Swap(a,b,5);
printf("%d,%d
",a[0],b[0]);//打印出数组a和数组b没有意义
return 0;
}
void Swap(int a[],int b[],int n)//此处的数组已经被弱化成了指针
{
int iTemp = 0;
for (int i=0; i<n; i++)
{
iTemp = a[i];
a[i] = b[i];
b[i] = iTemp;
}
return;
}
int main()
{
int a[5] = {10};
int b[5] = {20};
Swap(a,b,5);
printf("%d,%d
",a[0],b[0]);//打印出数组a和数组b没有意义
return 0;
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询