bshy.net
当前位置:首页>>关于j=(i++)*(++i)+(i––)*(––i)的资料>>

j=(i++)*(++i)+(i––)*(––i)

一般编译器是这样处理的,设置两个临时变量a、b,然后: a=(i)*(++i); b=(i)*(--i); j=a+b; i++; i--; 就是说如果i原来是3话,最后j==25。但并非所有编译器都这么处理,所以不同编译器常常会有不同结果。

此时的 j=6; 第一次循环 j=3; 第二次循环 j=5; 第三次循环 j=6;

先采纳,我立马回答

i--*--i却=4是先执行i--,再执行--i,最后执行*,但由于i--的特殊性,开始i=3,i--时i暂不变,--i时i=2,此时注意,因为i值变了,在执行*时系统找i--时,找到i=2,所以相当于(2--)*2=4,之后再i=1。所以整个过程相当于,先执行--i,在执行*,...

你想知道什么?

9,7,8,8 ++在前就先加再输出,简单来说就是i+1,输出i; ++在后就是先输出再加,就是输出i,i+1,这样你应该懂了

j循环的开始是i+1的值,结尾是数组尾,也就是每次j的循环,都不扫描前i个数。

我以前回答过一道这样的题目 是这样的,argc接受输入命令中的单词数(空格隔开的那些),argv这个二维数组接收这些“单词”,因此此例中argc是4,argv[0]到argv[3]存放的依次是tt、12、345和678 再看n=n*10+*argv[i]-‘0’中,*argv[i]相当于argv[i]...

应该是18与21吧。 ++在后是先用再加,++在前是先加在用 所以 n = 5+6+7, m=6+7+8

#include void main() { int i,j; for(i=2;i

网站首页 | 网站地图
All rights reserved Powered by www.bshy.net
copyright ©right 2010-2021。
内容来自网络,如有侵犯请联系客服。zhit325@qq.com