C语言:用指针方法,交换数组A和数组B的对应元素。

 我来答
狈让炮bpd96
推荐于2016-10-01 · TA获得超过4971个赞
知道大有可为答主
回答量:2451
采纳率:0%
帮助的人:2704万
展开全部
#include "stdio.h"
#include "stdlib.h"
#include "conio.h"

void main(void)
{
int a[10],b[10];
int i=0;
int temp = 0;
int *pa,*pb;

for(i=0;i<10;i++)
{
a[i] = i;
b[i] = i+10;
}

pa = a;
pb = b;

for(i=0;i<10;i++)
{
temp = *pa;
*pa = *pb;
*pb = temp;
pa++;
pb++;
}
for(i=0;i<10;i++)
{
printf("%d ",a[i]);
}
printf("\n");
for(i=0;i<10;i++)
{
printf("%d ",b[i]);
}
}

你参考一下
蝶舞王城
2007-12-31 · TA获得超过106个赞
知道答主
回答量:96
采纳率:0%
帮助的人:0
展开全部
已上机调试了,放心用吧,希望你能学会啊!!
#include<stdio.h>
void main()
{int *p,*q;
int i,temp;
int a[10],b[10];
printf("Please input first arrays\n");
for(i=0;i<10;i++)
scanf("%d",&a[i]);
printf("Please input second arrays\n");
for(i=0;i<10;i++)
scanf("%d",&b[i]);
p=a;
q=b;
for(i=0;i<10;i++){
temp=*p;
*p=*q;
*q=temp;
p++;
q++;
}
printf("Output two arrays\n");
for(i=0;i<10;i++)
printf("%d ",a[i]);
printf("\n");
for(i=0;i<10;i++)
printf("%d ",b[i]);
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
原帅心甜02
2007-12-31 · TA获得超过418个赞
知道小有建树答主
回答量:419
采纳率:0%
帮助的人:290万
展开全部
#include <stdio.h>
void swaq(int *a,int *b)
{
int t;
t=*a;
*a=*b;
*b=t;
}
void change(int *pstr,int *pstr2,int num)
{
printf("the value in a is %d\t",*(pstr+num-1));
printf("the value in b is %d\n",*(pstr2+num-1));
swaq(pstr,pstr2);
printf("the value in a is %d\t",*(pstr-1));
printf("the value in b is %d\n",*(pstr2-1));
}

void main()
{
int a[3]={1,2,3};
int b[3]={4,5,6};
int number;
printf("the value with array is a[3]={1,2,3}\nb[3]={4,5,6}\nwitch value you want to change:\t");
scanf("%d",&number);
change(a,b,number);
}

参考以下!呵呵!
我写完已经有这么多了 !
所以顺便写成函数方式!呵呵!加油!
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
rot2000
2007-12-31 · TA获得超过450个赞
知道小有建树答主
回答量:728
采纳率:0%
帮助的人:416万
展开全部
int a[10],b[10];
int *p,*q,*temp;
p=&a[0],q=&b[10];
temp=p,p=q,q=temp;
//*p,*q 此时所指的数组已经变化
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式