c语言题目。求大神详细的解释。。

如题。已经知道答案0。就是不知道怎么出来的。求大神渡我。#include<stdio.h>main(){intn[3],i,j,k;for(i=0;i<3;i++)n[i... 如题。已经知道答案0。就是不知道怎么出来的。求大神渡我。

#include <stdio.h>

main()
{
int n[3],i,j,k;
for(i=0;i<3;i++) n[i]=0;
k=2;
for(i=0;i<k;i++)
for(j=0;j<k;j++)
n[j]=n[i]+1;
printf("%d\n",n[k]);
}
展开
 我来答
走马看飞腾0954
2014-03-29 · TA获得超过445个赞
知道小有建树答主
回答量:319
采纳率:100%
帮助的人:253万
展开全部
这个很简单的,就是数组的问题,你的k定义为2,但是数组下标只到2,而且for循环里面的数组加法只会执行到数组下标为1的元素,也就是讲,数组元素下标为2的元素没有执行加法,所以还是初始化时候的值,也就是0,不懂的问我,你把数组拿章仔细的看看就明白 了
追问
那大神。n[i]=0为什么是赋予i,j,k=0呢。。
追答
没动你的意思?经清楚点
烨玄罗觉新爱
2014-03-29 · TA获得超过422个赞
知道小有建树答主
回答量:467
采纳率:78%
帮助的人:122万
展开全部
第一个for循环把n[3]数组全部值赋值为0,即n[0]==0,n[1]==0,n[2]==0
下面的嵌套循环因为K=2,且i和j都小于K,所以只改变了n[0]和n[1]的值。n[2]的值一直没变,还是0.
最后输出n[2]就是0
最后时数组n[3]={3,3,0}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式