C语言中二维字符数组应该怎样赋值?

#include<stdio.h>intmain(){charseq1[100],seq2[100],result[2][100];inti;printf("please... #include<stdio.h>
int main()
{
char seq1[100],seq2[100],result[2][100];
int i;
printf("please put a sequence:\n");
scanf("%s",seq1);
printf("please put another sequence:\n");
scanf("%s",seq2);
result[2][0]={"seq1[0]","seq2[0]"};//我想把result数组中的第一列分别换成seq1,seq2中的第一个字符 ,该怎么写?求帮忙~
printf("%s",result);
return 0;
}
PS:result是一个二维字符数组,二位字符数组应该怎样表示呢?能赋值吗?
展开
 我来答
硅谷创业快讯
高粉答主

2018-11-28 · 每个回答都超有意思的
知道答主
回答量:55
采纳率:100%
帮助的人:2.2万
展开全部

二维数组赋值的一般形式是:dataType arrayName[length1][length2]。result二维字符数组可以这样赋值,result[0][0]=seq1[0] ;result[1][0]=seq2[0]。

dataType arrayName[length1][length2],其中,dataType 为数据类型,arrayName 为数组名,length1 为第一维下标的长度,length2 为第二维下标的长度。

例如:int a[3][4],定义了一个3行4列的数组,共有3×4=12个元素,数组名为a,即:

a[0][0], a[0][1], a[0][2], a[0][3]

a[1][0], a[1][1], a[1][2], a[1][3]

a[2][0], a[2][1], a[2][2], a[2][3]

在二维数组中,要定位一个元素,必须给出一维下标和二维下标,就像在一个平面中确定一个点,要知道x坐标和y坐标。例如,a[3][4] 表示a数组第3行第4列的元素。

扩展资料:

二维数组的地址计算

有二维数组A[m][n],设a[p][q]为A的第一个元素,即二维数组的行下标从p到m+p,列下标从q到n+q,按“行优先顺序”存储时则元素a[i][j]的地址计算为:

LOC(a[i][j]) = LOC(a[p][q]) + ((i − p) * n + (j − q)) * t

按“列优先顺序”存储时,地址计算为:

LOC(a[i][j]) = LOC(a[p][q]) + ((j − q) * m + (i − p)) * t

存放该数组至少需要的单元数为(m-p+1) * (n-q+1) * t 个字节

参考资料来源:百度百科——二维数组

tattackor
推荐于2017-09-20 · TA获得超过3.5万个赞
知道大有可为答主
回答量:5083
采纳率:94%
帮助的人:863万
展开全部
二维字符串赋值一般有两种方法:
1、初始化时直接赋值,例如char s[3][]={"1234","xyz","abd"};
2、拷贝赋值,例如char s[3][10]; strcpy(s[0],"123")。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
kaixingui2012
推荐于2017-09-11 · TA获得超过4.2万个赞
知道大有可为答主
回答量:1.4万
采纳率:81%
帮助的人:6223万
展开全部
#include<stdio.h>
int main()
{
char seq1[100],seq2[100],result[2][100];
int i;
printf("please put a sequence:\n");
scanf("%s",seq1);
printf("please put another sequence:\n");
scanf("%s",seq2);
result[0][0]=seq1[0] ;
result[1][0]=seq2[0]; //单字符赋值

printf("%c\n",result[0][0]);
printf("%c\n",result[1][0]); //按字符输出
return 0;
}
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
濮方雅BX
2012-12-09 · TA获得超过4042个赞
知道大有可为答主
回答量:2482
采纳率:60%
帮助的人:2437万
展开全部
char stack_array[][]这个必须要至少指定一维,否则程序不知道如何定位你的数组元素,会报错:
改成如下:char stack_array[][30] //根据你的程序来
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友f84757f
2012-12-09 · TA获得超过115个赞
知道答主
回答量:121
采纳率:0%
帮助的人:74.6万
展开全部
for(i=0;i<n;i++)
for(j=0;j<m;j++)
scanf("%d",&a[i][j]);
如果不知道怎么用再问
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式