c语言中将一个数组内容通过指针放到到另一个数组中,不按顺序放比如我想放3,7,9到数组b中

int a[8]={1,2,3,4,5,6,7,8,9};
int b[3]={0};
int *p;
p=a;

int a[9]={1,2,3,4,5,6,7,8,9};/*原来的代码可能会报错,因为你定义的数组大小是8,但是赋值的数组元素有9个,需要将数组a[8]改成a[9]*/
int b[3]={0};
int *p;
p=a;
b[0] = p[2]; b[1] = p[6]; b[2] = p[8];
以上代码会把对应的数据元素的值放到数据b中。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2018-06-28

#include <stdio.h>

int main()

{

int a[9]={1,2,3,4,5,6,7,8,9};

int b[3]={0};

int *p;

p=&a;

b[0]=*(p+2);

b[1]=*(p+6);

b[2]=*(p+8);

int i;

for(i=0;i<3;i++)

{

printf("%d",b[i]);

printf("\n");

}

}


相似回答