main() {int i,k,a[10],p[3]; k=5; for(i=0;i<10;i++) a[i]=i; for(i=0;i<3;i++) p[i]=a[i*(i+1)]; for(i

2024-11-01 01:42:01
推荐回答(1个)
回答(1):

这是c语言的循环结构: 每条for 语句之后都没有{,所以不存在嵌套。执行顺序如下:
第1个for循环, 直接对数组a中的每一个元素赋值,即a[0]=0,a[1]=1,...,依次类推,a[9]=9;

第2个for循环, 直接对数组p中的每一个元素赋值,即p[0]=a[0*1]=a[0]=0,p[1]=a[1*2]=a[2]=2,p[2]=a[2*3]=a[6]=6;

第3个for循环, 是对k的值进行加运算, k+=p[i]*2等价于 k=k+p[i]*2;
当i=0时,k=k+p[0]*2=5+0*2=5;//注意k已经被赋值(k=5),初值为5。

当i=1时,k=k+p[1]*2=5+2*2=9;

当i=2时,k=k+p[2]*2=9+6*2=21;//注意k的值已经发生变化。