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

供稿:hz-xin.com     日期:2025-01-15
c语言如何把一个指针指向的字符串,放到另一个数组中

#include
#include
using namespace std;
int main()
{
char s[]="asdfghjk",b[20];
strcpy(b,a); //直接使用字符串拷贝就可以了
cout<<b;
return 0;
}
如果是char *b = a的话只是把a和b所指向的内存一样,如果修改了a的值则b的值也会同时进行修改。如果是 for(int i=0;i<20;i++) *(b+i)=*(s+i);或strcpy(b,a)则修改a的值不影响b;

数组是不可以直接赋值的。因此,拷贝只能通过一个一个的元素之间的赋值完成。可以用循环。

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中。

#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("
");

}

}




c语言如何利用指针将数组倒置输出
定义两个指针,分别指向数组的首地址和尾地址,然后两个指针同时向中间移动直到相遇,同时每次移动将两指针指向地址的值进行交换,程序执行到最后数组里存储的值就会倒置

通过指针变量输出整型数组a的10个元素.
include <stdio.h> main(){ int a[10]={0,1,2,3,4,5,6,7,8,9};int* p=&a;\/\/ 这里要将指针指向数组第一个元素,也可以写成&a[0]for(i=0;i< 10;++i) \/\/n长度的数组有效域为0~n-1,这里改成++i这样汇编会将1直接加到存i变量的寄存器上运行更快 { printf("%d\\t",*(p+...

定义一个整型数组,int a[]=(1,2,3,4,5,6,7,8,9,10)利用指针输出...
include <stdio.h> int main(){ int a[]= {1,2,3,4,5,6,7,8,9,10}, *p, i;p = a;for(i=0; i<10; i++) { printf("%d ", *p);p ++;} return 0;}

利用指针实现,定义一个整型的一维数组,包含10个元素,通过键盘向数组输入...
include <stdio.h> main(){ int a[10],*p=a,i;while(p<a+10) scanf("%d",p),p++; \/\/指针实现 for(i=0;i<10;i++) printf("%d ",a[i]); \/\/下标实现 }

请教,请问在C语言中,怎么样把一个字符数组char a[3]="ab"转换成char *...
先定义一个char型的指针变量,然后把"ab"的地址赋值给指针变量

C语言编程:利用指针编写程序,求一维数组中的最大和最小的元素值_百度知...
include<stdio.h> int main(){ int a[111],max,min,*p,n,k=0;p=a;\/\/指针p指向数组a首地址 do{ scanf("%d",&n);p[k++]=n;}while(getchar()!='\\n');max=min=p[0];for(p=a;pmax)max=*p;if(*p<min)min=*p;} printf("max=%d,min=%d",max,min);return 0;} ...

c语言怎么让一个数组指向一个结构体指针
指向结构体指针的只能是另一个指针.数组除非是指针数组.否则是无法做到的.可以反过来,结构体指针指向数组.做一个强制转换即可.比如 struct A * p =(struct A*)a;其中a是数组名.

c语言 怎么把一个float类型数组的数写到txt中
如果有float x=33,3,fp是写打开的文件指针,用fprintf(fp,"%f",x);则就把float数x写入fp指向的文件了。

C语言:用指针编程:输入一个4×5的二维整型数组,输出其中最大值、最小...
你的程序没问题啊。行号列号都是从0开始的。如果要改的话,只要把组后两句改一下:printf("最大值为:%d,行标:%d,列标:%d\\n",max,xb1_h+1,xb1_l+1);printf("最小值为:%d,行标:%d,列标:%d\\n",min,xb0_h+1,xb0_l+1);结果就成了这样:...

②编写C语言函数,使用指针完成一个二十位整型数组的遍历,并将数组中的...
include <stdio.h>#include <conio.h>int main (void) { int arr[20] = {1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20}; int *p = arr; \/* p指向数组首元素 *\/ while (p-arr != 20) { \/* 遍历数组,每元素值+1 *\/(*p)++;printf ("%d\\t",...