`

关于y--==6的程序分析

    博客分类:
  • java
 
阅读更多

int x= 1, y = 6;

    while (y--==6) {x--;}

    System.out.println("x=" + x +" ,y =" + y);

 

 

最后输出结果为:x = 0, y = 4;

 

 

解析:这个小程序的关键支持在于"y--==6",这个咋一看,会很没有头绪,不过先从左往右分析发现,y-不和规则,只有先y--,那么就是先进行y的自减操作!然后是用"=="判断和6是否相等。

 

第一次循环,y--后先赋值后自减操作,此时y为6,所以y==6为true! 然后x做自减操作,x变为0;

 

第二次循环,此时y为5了,然后先赋值后自减操作,此时y为5,所以y==6为false! 然后x不操作;

 

结束循环!

 

此时y为4,因为进行了两次自减操作!x为0,进行了一次自减操作!

分享到:
评论

相关推荐

    牛顿迭代求根算法的分析与实现 论文 完整版

    摘要:牛顿迭代法是《数值分析》这门课程中一个重要的计算方法和思想。这次的课程设计是通过在学习中所学习到的牛顿迭代的方法的思想计算方程:求方程 x3+x2-3x-3=0 在1.5附近根。并通过VISUALC++编译程序计算出方程...

    cocos2d-x手机游戏开发 源代码

    通过分析和运行这个项目,读者可以更直观地学习Cocos2d-x的使用方法,理解游戏开发的全过程。 总之,Cocos2d-x为手机游戏开发提供了强大而灵活的工具集,通过学习其源代码和实践项目,开发者能够掌握2D游戏的开发...

    实验1-白盒测试实验报告.pdf

    最后,我们需要分析测试结果,检查程序是否符合预期的输出结果,并记录测试结果。 四、实验结果 triangle 程序: 输入数据 | 预期输出 ---------|---------- A=6,b=7,c=8 | 普通三角形 A=3,b=4,c=5 | 直角三角形 ...

    线路曲线坐标计算程序

    #### 四、主程序分析 主程序首先定义了一系列变量并通过`L1A`至`L9`等指令进行初始化。程序的主要逻辑结构包括条件判断和调用子程序来完成具体的计算任务。其中: - `L1Pol(C-A,D-B):M=W`:通过后视点坐标计算初始...

    数据结构(C语言版)严蔚敏课后习题答案

    6.试分析下面各程序段的时间复杂度。 (1)x=90; y=100; while(y>0) if(x>100) {x=x-10;y--;} else x++; 答案:O(1) 解释:程序的执行次数为常数阶。

    Matlab简单差分 (2).pdf

    例如,对于方程组3x + 4y = 44和2x + y = 6,可以编写如下程序: ```matlab syms x y [x y] = solve('3*x+4*y=44','2*x+y=6','x,y'); ``` 运行这段代码后,MATLAB会返回解x = -4和y = 14。 【MATLAB解微分方程】 ...

    IBM-PC汇编语言程序设计(第二版)答案

    通过以上解答,我们可以看到《IBM-PC汇编语言程序设计(第二版)》涵盖了汇编语言中关于数字系统转换、算术运算、补码表示、ASCII码表示、输入输出端口访问、内存读写、内存寻址以及指令指针等核心概念的深度解析。...

    Matlab简单差分.docx

    [x y] = solve('3*x+4*y=44','2*x+y=6','x,y'); ``` 运行后得到解:x = -4, y = 14。 【Matlab解常微分方程】 对于常微分方程(如二阶非齐次线性微分方程),如: y'' - 2y' - 3y = 3x + 1 Matlab中的`dsolve`...

    白盒测试实验报告-范例 (2).docx

    6. **路径覆盖**:此技术关注的是程序的控制流程,确保程序中的每一条可能的执行路径都被执行至少一次。通过分析流程图,可以确定测试用例以覆盖所有可能的路径。 在实验报告中,测试用例的设计和执行是关键步骤。...

    STC单片机不同晶振时1MS精确延时程序

    ### 延时程序分析 #### 1. 3.579545MHz晶振 ```c void delay_1ms(uint z) { uint x, y; for (x = z; x > 0; x--) for (y = 274; y > 0; y--); } ``` 在这个频率下,当`z`设置为1时,内部循环中的`y`变量需要从...

    数控车床华中系统用户宏程序编程.ppt

    ### 数控车床华中系统用户宏程序编程 #### 一、基础知识介绍 ##### 1. 宏变量及常量 宏变量与常量是宏程序的基础组成部分。 - **宏变量**: - **局部变量** (`#0`~`#49`): 在宏程序内部使用,用于存储临时数据,...

    白盒测试-逻辑覆盖测试方法 - (张三).doc

    #### 二、程序片段分析与控制流图绘制 **程序片段:** ```java public void dowork(int x,int y,int z){ int k=0, j=0; if(x>3 && z){ k=x*y-1; j=(int)Math.sqrt(k); } if(x= =4 || y>5){ j=x*y+10; } j...

    2012-05-18Java作业北大《JAVA作业》.doc

    Java程序错误分析 - **示例程序**: ```java public class Ex07 { public static void main(String[] args) { int a = 2, b = 3; d = a * b / (b % 2 - 1); System.out.println("d=" + d); } } ``` - **...

    LIGBT treprem4程序及注释

    根据提供的文件信息,我们可以推断出这...通过以上的分析,我们可以看到这段程序主要是为了设置IGBT的物理结构模型,包括网格的初始化、输出格式的设定以及材料区域的定义等,这对于后续的器件性能模拟和分析至关重要。

    LMS与RLS算法程序

    通过对给定代码的分析可以看出,LMS算法与RLS算法都是用于处理带噪声信号的有效工具。LMS算法简单直观,易于实现;而RLS算法虽然计算复杂度较高,但在收敛速度和稳定性方面表现更优。在实际应用中,可以根据具体需求...

    软件测试与方法技术第三章习题

    3. 结合边界值分析法和等价类分析法,针对不同月薪需要缴纳的个人所得税计算程序,来设计充分的测试用例。 设个人所得税的起征点为 3500 元,税率见表 3-21。 答:(1)问题分析: 对于该问题,设个人月薪为 X 则...

    cpp代码-{11x-13=1x-10+28 {10y-10=9z-22+101

    标题 "cpp代码-{11x-13=1x-10+28 {10y-10=9z-22+101" 暗示这是一个关于C++编程的问题,其中可能涉及了数学方程的解决或者算法实现。描述与标题相同,进一步确认了这可能是两个线性方程的表示。标签 "代码" 明确指出...

    数值分析欧拉公式 C语言

    其中,\(y'\)表示函数\(y\)关于自变量\(x\)的导数,而\(f(x, y)\)是定义了微分方程的函数形式。\((x_0, y_0)\)为初始条件。 ### 欧拉公式的基本原理 欧拉方法的基本思想是利用微分方程给出的斜率信息,在每个节点...

    C语言经典100例

    - **程序分析**: - 通过三层嵌套循环分别表示百位、十位、个位数字。 - 使用`if`语句确保每一位上的数字都不相同。 - **核心代码**: ```c main() { int i, j, k; printf("\n"); for (i = 1; i ; i++) { // ...

Global site tag (gtag.js) - Google Analytics