C语言中数组能不能从第二个开始赋值

例如a[3][4]从a[1][1]开始赋值... 例如a[3][4]从a[1][1]开始赋值 展开
 我来答
linnjing
2014-12-24 · TA获得超过2632个赞
知道大有可为答主
回答量:1230
采纳率:91%
帮助的人:522万
展开全部
可以从1开始赋值,但注意,a[3][4]是不能赋值的。
你问的比较含糊,不知道你的疑问具体是哪方面。
两方面来说,RAM是随机访问的,你可以任意访问,不存在从哪开始的问题。
另一方面,C语言规定数组的下标从0开始,不能越界访问。
比如定义数组 int a[3]; 其中3的意思是有3个元素,下标从0开始,3个下标就是0、1、2,不存在下标为3的元素。还有,你可以注意下,用for循环初始化、访问数组
for ( i = 0; i < N; ++i )
{
a[i] = 0;
}
这里的条件是i<N; 一定不能是i <=N;
如果逆序访问,则是
for( i = N-1; i >=0; --i )

结论,C语言的数组,从哪开始访问没关系,但一定不能越界,尤其要注意i==N的情况,绝对不允许。,这一点一定一定要搞清楚,切记!!!。
ylcqucc
2014-12-23 · TA获得超过1436个赞
知道小有建树答主
回答量:862
采纳率:0%
帮助的人:339万
展开全部
可以的,没问题

只是没用赋值的元素,不要引用它就行了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
潮汐之涌动
推荐于2017-09-18 · TA获得超过439个赞
知道小有建树答主
回答量:287
采纳率:100%
帮助的人:160万
展开全部
int i,j;

for(i=1;i<3;i++){
for(j=1;j<4;j++){
scanf("%d",&a[i][j]);
}

}
//前面未赋值的除非是全局变量自动为0,否则一用则爆
//这是从a[1][1]->a[1][2]->a[1][3]->a[2][1]->a[2][2]->……
//如果你想能够输入a[2][0]就可以
int i,j;
for(i=1;i<3;i++){
j=(i==1)?1:0;
for(;j<4;j++){
……
}

}
追问
谢谢
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式