int j cancer影响因子a[3][4],j,k,s=0; for (j=0;j<3;j++) for (k=0;k

执行后y的值是( ) main() {int a[]={1,2,3,4},y,*p=a; y=*p++;_百度知道
执行后y的值是( ) main() {int a[]={1,2,3,4},y,*p=a; y=*p++;
提问者采纳
y的值为1*p=a将a数组的首个元素的值赋给p,即将a[0]的地址赋给指着py=*p++将p所指的地址中的值赋给y,指针p向后移动一位指向p[1]所以y的值为1
提问者评价
谢啦!!!
来自团队:
其他类似问题
为您推荐:
其他2条回答
程序最好排一下版。
首先解释一下for循环
for(i = 0; i&n;++i}
doSomeThing(i);
i = 0为初始化语句,只有第一次循环时会执行。
i & n为循环条件,每一次循环前都会进行检查。
++i为附属操作,每一次循环后都会执行
int y=10,x,*p;
for(x=1,x&3;x++)
printf(&%d\n&,y);
第一次经过for(x=1,x&3;x++) 后y+=p[x]
应该是 y=y+a[2]而不是y=y+p[2]
第一次执行循环, x 为1,因此下面一句为 y = y + p[1]
p的初值为&a[1],即p[0] = a[1], p[1] = a[2]
int a[3][3]=,,};
int i,j,s=0;
for(i=1;i&3;i++)
for( j=0;j&=i;j++)
s+=a[i][j];
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁[切换科目]
以下试题来自:
单项选择题下面程序的输出结果是______。
{ int a[3][4]={1,3,5,7,9,11,13,15,17,19,21,23};
int(*p)[4]=a,i,j,k=0;
for(i=0;i<3;i++)
for(j=0;j<2;j++)
k=p[i][j];
printf("%d\n",k);
}A.17B.18C.19D.23
为您推荐的考试题库
你可能感兴趣的试题
1A.代码检查B.白盒法C.静态结构分析D.代码质量度量2A.aa
cc ddD.aa
dd3A.100B.160C.128D.644A.面向数据流的结构化分析方法B.面向数据结构的Jackson方法C.面向数据结构的结构化数据系统开发方法D.面向对象的分析方法5A.t=97B.t='a'C.t="a"D.t='a'+'b'
热门相关试卷
最新相关试卷{ int a[2][3],j; for(j=0;j&3;j++) {a[j][1]=3;} printf(&%4d&,a[3][1]); }_百度知道
{ int a[2][3],j; for(j=0;j&3;j++) {a[j][1]=3;} printf(&%4d&,a[3][1]); }
这段c语言程序为什么一运行就输出不正常的值呢,
提问者采纳
数组越界了
提问者评价
原来是这样,感谢!
其他类似问题
为您推荐:
printf的相关知识
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁int a[3][3]={{1,2},{3,4},{5,6}},i,j,s=0;for(i=1;i,3;i++)for(j=0;j
借用上楼的信息:for(i=1;i,3;i++)这个i 和 3 缺乏判断
这个应该是这样的吧 #include #include int main (void){
int a[3][3]={{1,2},{3,4},{5,6}},i,j,s=0;for(i=1;i
可以具体点吗??看不懂
二维数组的默认值懂否?
为什么是3+4+5+6啊??????
i=1,做a[1][0]加到a[1][1],内循环结束;3+4
i自加,变为2;
I=2,做a[2][0]加到a[2][2];内循环结束;5+6+0
s=3+4+5+6+0=18
为您推荐:
其他类似问题
扫描下载二维码int i=0,j; for(j=3;i=j=0;i++,j++)循环多少次,这个循环条件到底是怎么判断的?
java会报错
题主的问题:&br&&blockquote&C语言中&br&&div class=&highlight&&&pre&&code class=&language-c&&&span class=&kt&&int&/span& &span class=&n&&i&/span& &span class=&o&&=&/span& &span class=&mi&&0&/span&&span class=&p&&,&/span& &span class=&n&&j&/span&&span class=&p&&;&/span&
&span class=&k&&for&/span&&span class=&p&&(&/span&&span class=&n&&j&/span& &span class=&o&&=&/span& &span class=&mi&&3&/span&&span class=&p&&;&/span& &span class=&n&&i&/span& &span class=&o&&=&/span& &span class=&n&&j&/span& &span class=&o&&=&/span& &span class=&mi&&0&/span&&span class=&p&&;&/span& &span class=&n&&i&/span&&span class=&o&&++&/span&&span class=&p&&,&/span& &span class=&n&&j&/span&&span class=&o&&++&/span&&span class=&p&&)&/span& &span class=&p&&{&/span&
&span class=&cm&&/* loop body */&/span&
&span class=&p&&}&/span&
&/code&&/pre&&/div&循环多少次,这个循环条件到底是怎么判断的?&/blockquote&其实是赋值表达式的问题吧。假定题主实际关心的代码的for循环的循环体没有做什么奇怪的事情来改变循环次数。&br&&br&答案自然是0次。可以先把for循环解糖为while循环的形式:&br&&div class=&highlight&&&pre&&code class=&language-c&&&span class=&kt&&int&/span& &span class=&n&&i&/span& &span class=&o&&=&/span& &span class=&mi&&0&/span&&span class=&p&&,&/span& &span class=&n&&j&/span&&span class=&p&&;&/span&
&span class=&n&&j&/span& &span class=&o&&=&/span& &span class=&mi&&3&/span&&span class=&p&&;&/span&
&span class=&k&&while&/span& &span class=&p&&(&/span&&span class=&n&&i&/span& &span class=&o&&=&/span& &span class=&n&&j&/span& &span class=&o&&=&/span& &span class=&mi&&0&/span&&span class=&p&&)&/span& &span class=&p&&{&/span&
&span class=&cm&&/* loop body */&/span&
&span class=&n&&i&/span&&span class=&o&&++&/span&&span class=&p&&;&/span&
&span class=&n&&j&/span&&span class=&o&&++&/span&&span class=&p&&;&/span&
&span class=&p&&}&/span&
&/code&&/pre&&/div&所以循环条件就看&i = j = 0&这个表达式的值。&br&&br&C语言里,赋值运算符(&=&)是右结合(right-associative)的双目运算符;赋值是一个表达式,可以用于其它表达式之中。所以&br&&div class=&highlight&&&pre&&code class=&language-c&&&span class=&n&&i&/span& &span class=&o&&=&/span& &span class=&n&&j&/span& &span class=&o&&=&/span& &span class=&mi&&0&/span&
&/code&&/pre&&/div&等价于&br&&div class=&highlight&&&pre&&code class=&language-c&&&span class=&n&&i&/span& &span class=&o&&=&/span& &span class=&p&&(&/span&&span class=&n&&j&/span& &span class=&o&&=&/span& &span class=&mi&&0&/span&&span class=&p&&)&/span&
&/code&&/pre&&/div&赋值表达式其实要完成两件事情:&br&&ul&&li&赋值:将赋值运算符右边的表达式的值赋予左边的操作数&/li&&li&将赋值后左边的操作数的值当作整个表达式的值。如评论里 &a data-hash=&192b2ce176c37bff631db40f04807dfb& href=&///people/192b2ce176c37bff631db40f04807dfb& class=&member_mention& data-tip=&p$b$192b2ce176c37bff631db40f04807dfb&&@Sunchy321&/a&指正的,左边与右边的类型未必一样,整个表达式的值是看左边操作数的。&/li&&/ul&所以&j = 0&作为表达式的值是0,然后&i = (j = 0)&的值也是0。&br&&br&所以题主的代码可以变为:&br&&div class=&highlight&&&pre&&code class=&language-c&&&span class=&kt&&int&/span& &span class=&n&&i&/span& &span class=&o&&=&/span& &span class=&mi&&0&/span&&span class=&p&&,&/span& &span class=&n&&j&/span&&span class=&p&&;&/span&
&span class=&n&&j&/span& &span class=&o&&=&/span& &span class=&mi&&3&/span&&span class=&p&&;&/span&
&span class=&k&&while&/span& &span class=&p&&(&/span&&span class=&mi&&0&/span&&span class=&p&&)&/span& &span class=&p&&{&/span&
&span class=&cm&&/* loop body */&/span&
&span class=&n&&i&/span&&span class=&o&&++&/span&&span class=&p&&;&/span&
&span class=&n&&j&/span&&span class=&o&&++&/span&&span class=&p&&;&/span&
&span class=&p&&}&/span&
&/code&&/pre&&/div&所以循环0次。&br&&br&===========================================================&br&&br&手闲,顺手dump个Clang给的AST好了。&br&对这段源码:&br&&div class=&highlight&&&pre&&code class=&language-c&&&span class=&kt&&int&/span& &span class=&nf&&main&/span&&span class=&p&&()&/span& &span class=&p&&{&/span&
&span class=&kt&&int&/span& &span class=&n&&i&/span& &span class=&o&&=&/span& &span class=&mi&&0&/span&&span class=&p&&,&/span& &span class=&n&&j&/span&&span class=&p&&;&/span&
&span class=&k&&for&/span&&span class=&p&&(&/span&&span class=&n&&j&/span& &span class=&o&&=&/span& &span class=&mi&&3&/span&&span class=&p&&;&/span& &span class=&n&&i&/span& &span class=&o&&=&/span& &span class=&n&&j&/span& &span class=&o&&=&/span& &span class=&mi&&0&/span&&span class=&p&&;&/span& &span class=&n&&i&/span&&span class=&o&&++&/span&&span class=&p&&,&/span& &span class=&n&&j&/span&&span class=&o&&++&/span&&span class=&p&&)&/span& &span class=&p&&{&/span&
&span class=&cm&&/* loop body */&/span&
&span class=&p&&}&/span&
&span class=&k&&return&/span& &span class=&mi&&0&/span&&span class=&p&&;&/span&
&span class=&p&&}&/span&
&/code&&/pre&&/div&Clang生成的AST形如:&br&&div class=&highlight&&&pre&&code class=&language-text&&TranslationUnitDecl 0x &&invalid sloc&&
`-FunctionDecl 0x &zzz.c:1:1, line:7:1& main 'int ()'
`-CompoundStmt 0x10286ec90 &line:1:12, line:7:1&
|-DeclStmt 0x &line:2:3, col:15&
| |-VarDecl 0x &col:3, col:11& i 'int'
| | `-IntegerLiteral 0x &col:11& 'int' 0
| `-VarDecl 0x &col:3, col:14& j 'int'
|-ForStmt 0x10286ec10 &line:3:3, line:5:3&
| |-BinaryOperator 0x &line:3:7, col:11& 'int' '='
| | |-DeclRefExpr 0x &col:7& 'int' lvalue Var 0x 'j' 'int'
| | `-IntegerLiteral 0x &col:11& 'int' 3
| |-&&&NULL&&&
| |-BinaryOperator 0x &col:14, col:22& 'int' '='
| | |-DeclRefExpr 0x &col:14& 'int' lvalue Var 0x 'i' 'int'
| | `-BinaryOperator 0x &col:18, col:22& 'int' '='
|-DeclRefExpr 0x &col:18& 'int' lvalue Var 0x 'j' 'int'
`-IntegerLiteral 0x &col:22& 'int' 0
| |-BinaryOperator 0x &col:25, col:31& 'int' ','
| | |-UnaryOperator 0x &col:25, col:26& 'int' postfix '++'
| | | `-DeclRefExpr 0x &col:25& 'int' lvalue Var 0x 'i' 'int'
| | `-UnaryOperator 0x &col:30, col:31& 'int' postfix '++'
`-DeclRefExpr 0x &col:30& 'int' lvalue Var 0x 'j' 'int'
| `-CompoundStmt 0x &col:35, line:5:3&
`-ReturnStmt 0x10286ec70 &line:6:3, col:10&
`-IntegerLiteral 0x10286ec50 &col:10& 'int' 0
&/code&&/pre&&/div&其中题主关心的循环条件部分是:&br&&div class=&highlight&&&pre&&code class=&language-text&&
| |-BinaryOperator 0x &col:14, col:22& 'int' '='
| | |-DeclRefExpr 0x &col:14& 'int' lvalue Var 0x 'i' 'int'
| | `-BinaryOperator 0x &col:18, col:22& 'int' '='
|-DeclRefExpr 0x &col:18& 'int' lvalue Var 0x 'j' 'int'
`-IntegerLiteral 0x &col:22& 'int' 0
&/code&&/pre&&/div&也就是跟i = (j = 0)等价的形式:&br&&div class=&highlight&&&pre&&code class=&language-text&&
&/code&&/pre&&/div&
题主的问题:C语言中int i = 0,
for(j = 3; i = j = 0; i++, j++) {
/* loop body */
}循环多少次,这个循环条件到底是怎么判断的?其实是赋值表达式的问题吧。假定题主实际关心的代码的for循环的循环体没有做什么奇怪的事情来改变循环次数。答案自然是0…
不执行。中间的判断语句是赋值,赋值结果是0,然后就不执行了
不执行。中间的判断语句是赋值,赋值结果是0,然后就不执行了
已有帐号?
无法登录?
社交帐号登录
求扣光友善度}

我要回帖

更多关于 int j clin exp med 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信