永发信息网

C++中如何将一个数组中的元素值赋给另一个数组

答案:5  悬赏:10  手机版
解决时间 2021-01-03 16:15
  • 提问者网友:活着好累
  • 2021-01-03 03:01
将字符数组str1中下标为单号的元素值赋给另一个字符数组str2,并打印输出str1和str2。
其中str1中保存的字符串可以由用户输入,假设不超过30个字符

楼主是刚刚学C++的,请尽量简单些!
我是这样写的
#include<iostream.h>
void main()
{
char str1[31], str2[16];
int x=0;
int i=0,j=1;
do{
cin>>str1[x];
x++;
}while(x<=29);
str1[30]='\0';
for(i,j;j<30;i++)
{
str2[i]=str1[j];
j+=2;
}
str2[i]='\0';
cout<<str1<<endl;
cout<<str2<<endl;
}

我想问一下,如果我想输入不足30个字符的字符串如何跳出第一个循环?
最佳答案
  • 五星知识达人网友:白昼之月
  • 2021-01-03 03:12
有两种方法可以实现。

为方便说明,定义两个整型数组a,b,并实现将a中的值赋值到b中。
int a[4] = {1,2,3,4}, b[4];

1、 通过数组遍历,逐个赋值。
定义循环变量int i;
for(i = 0; i < 4; i ++)
b[i] = a[i];
该程序功能为遍历数组a,逐个赋值到数组b对应元素中。

2、 借助内存复制函数memcpy,整体赋值。
void *memcpy(void *dst, void *src, size_t size);
这个函数的功能为将src上,大小为size字节的数据赋值到dst上。
调用该函数时需要引用头文件cstring,即
#include <cstring>
赋值数组的代码为
memcpy(b,a,sizeof(a));
全部回答
  • 1楼网友:执傲
  • 2021-01-03 05:49
char str1[20],str2[20];int i; for(i=0;i<20;i++)//数组长度多少,i就小于多少 if (i%2==0) str2[i]=str1[i];
  • 2楼网友:神也偏爱
  • 2021-01-03 05:07
用循环一对一的赋值
  • 3楼网友:污到你湿
  • 2021-01-03 04:17
cahr str1[30],str2[30]; for(i=0;i<strlen(str1);i++) if(i%2==0) str2[i]=str1[i]; 注意定义char型,最基本的。 也可以定义指针。
  • 4楼网友:野慌
  • 2021-01-03 04:00
用while(cin>>n);把输入的n用数组保存就好,想输多少都行,只要不超过数组的范围
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯