int i = 0
i = i ++ ;
j= i ++ ;
问在java底下, c底下, i是几,j是几
关键在i = i++ 算完了之后, java是0, c是1
c就不说了,反正平常我也不用
java的话
i++的时候,原来的这个i不动,另外分配一个内存i1,i1的作用是用来保存原来的这个数值,i1和i都是0,然后把i加1,这个时候i是1,i1是0,然后把i1的值赋给i,这个时候i1是0,i也是0,然后i1销毁
如果是j等于i++的情况,类似, 一开始,i1和i都是0,然后i自己加1,这个时候i1是0,i是1,然后把i1的值赋给j,这个时候,j是0,i是1,i1是0,然后i1销毁,这个时候j是0,i是1,i1不存在
纯粹为了考试。。。。。
分享到:
相关推荐
为了避免无限循环的发生,正确的做法是直接使用`i++`或者`i += 1`来更新循环变量: ```java public class Test { public static void main(String[] args) { for (int i = 0; i <= 10; i++) { System.out.print...
如何理解i=i++和i=++i.docx
在Java编程语言中,`i=i++`是一个典型的自增表达式,它的行为可能会引起一些混淆,特别是当对比于其他编程语言如C或C++时。这个表达式在Java中的行为可以通过反编译成Java虚拟机(JVM)指令来理解。 首先,让我们...
这是和JVM的内存分配有关,JVM在处理这段带代码时,会先把i++的结果赋值给一个临时变量temp,然后再将这个临时变量的值赋值给i。即如下: int i = 0; int temp; // i = i++; int a = temp = i++;// 临时变量...
if (i>=j) return i; else return j; } int main(void){ //定义main()函数 cout输入i,j:"; //显示提示信息 int i, j; //说明变量 cin>>i>>j; //从键盘上输入变量的值 cout最大数是:...
### 对于含有n个内节点的二元树,证明E=I+2n。其中E、I分别为外部和外部路径长度。 #### 背景知识 在计算机科学中,二叉树是一种重要的数据结构,它由节点组成,每个节点最多有两个子节点。二叉树在算法设计和分析...
i = i++; 结果还是0 为什么? 程序的执行顺序是这样的:因为++在后面,所以先使用i,“使用”的含义是i++这个表达式的值是0,但是并没有做赋值操作,它在整个语句的后才做赋值,也是说在做了++操作后再...
Java 语言中的 `i=i++` 这个表达式是一个典型的自增运算符使用的例子,它揭示了 Java 编译器处理这种复合赋值语句的机制与 C/C++ 的不同之处。在 Java 中,`i++` 和 `++i` 两者的主要区别在于操作顺序:`i++` 是先...
i=i+1 ENDDO ?s RETURN ``` 这个实例演示了使用DO WHILE循环来累加1-100的累加值。 2. 阶乘求5的阶乘 VFP代码: ``` CLEAR j=1 i=1 DO WHILE i<=5 j=j*i i=i+1 ENDDO ?j RETURN ``` 这个实例演示了使用DO WHILE...
2. 后减操作符(i--):这个操作符先返回`i`当前的值,然后将`i`的值减少1。 3. 表达式求值顺序:在Java中,没有明确的顺序来规定带有多个操作符的表达式应该从左到右还是从右到左执行。但根据Java的运算符优先级,...
因此,如果我们将i++放入表达式中,例如`int c = i++;`,那么变量c将会获得i的原始值,而i在赋值后才会增加。而++i是前缀自增运算符,它先将变量i的值加1,然后返回自增后的值。如果我们使用++i,如`int c = ++i;`,...
一个小程序kb=200;... if i+4==6||i+4==7||i+4==10||i+4==11 a(i+4,i)=-kd; else a(i+4,i)=-kb; end end for i=1:12 if i==6||i==7||i==10||i==11 a(i,i+4)=-kd; else a(i,i+4)=-kb; end end
在Python编程语言中,`i += x` 和 `i = i + x` 两种表达式在大部分情况下是等价的,但在处理可变对象(如列表)时,它们的行为有所不同。这个问题的关键在于理解Python中的可变对象和不可变对象的概念,以及它们如何...
i+=a;`涉及到了几个核心的编程概念。首先,`i=3;`是一个基本的变量赋值操作,其中变量`i`被初始化为整数值3。在Java语言中,变量的声明和初始化是程序运行的基础,它们为程序提供运行所需的存储空间和初始状态。 ...
i += 0.2) { t = i / Math.PI; x = 16 * Math.pow(Math.sin(t), 3); y = 13 * Math.cos(t) - 5 * Math.cos(2 * t) - 2 * Math.cos(3 * t) - Math.cos(4 * t); points.push(new Point(x, y)); } this.points =...
i++) for (j=0;j; j++) A[i][j]=0; 8. 分析下面算法(程序段),给出最大语句频度 ,该算法的时间复杂度是__ __。 for (i=0;i;i++) for (j=0; j<i; j++) A[i][j]=0; 9. 分析下面算法(程序段),给出最大语句频度...
字符串拼接 public class 字符串拼接 { public static void main(String[] args) { int[] arr = {1, 2,3};...i++) { if (i == arr.length-1) { s += arr[i]; }else { s += arr[i]; s += ","; } } s += "]";
i++ :先在i所在的表达式中使用i的当前值,后让i加1 ++i :让i先加1,然后在i所在的表达式中使用i的新值 看一些视频教程里面写for循环的时候都是写 ++i 而不是 i++,上网搜索了一下,原来有效率问题 ++i相当于下列...
1. **后置自增(i++)**: - 在表达式中,变量首先被使用,然后增加。 - 例如:`i = i++;` 先将`i`的当前值(1)赋给`i`,然后`i`增加到2。 2. **前置自增(++i)**: - 在表达式中,变量先增加,然后被使用。 - ...
i++){ LED_PORT0=0xf0;time(300); LED_PORT0=0xff;time(300); } EA=1; } void exint1()interrupt 2{ uchar i; EA=0; for(i=0;i;i++){ LED_PORT2=0xf0;time(300); LED_PORT2=0xff;time(300); } ...