若定义int a=6;则执行while(a大于等于1)a--;后a的值是 答案是0,请高手指点一下,谢谢啦

作者&投稿:叶风 (若有异议请与网页底部的电邮联系)
int a=1,while(a++<5);后a的值为? 答案是6~

没有看懂你什么意思?你给出的题目已经是题目+答案你了。是要解释这个代码么?int a=1先是定一个整数型变量a并赋初值为1while(a++<5);然后是while循环,while (表达式),如果表达式为真则继续执行循环,如果为假则退出循环。a++是等价于a=a+1,也就是a先+上1然后再赋值给a,那么这里的意思就是先将a自身+1然后判断是否小于5,如果小于再执行a自身+1,再判断是否小于5,直到a值大于5,则退出循环,可见只有a自加到6时,循环退出,如果后面没有改变a值,a值则为退出循环时的值。

a--和--a有区别
a-->0的意思是先判断a>0然后再执行a=a-1
所以a=1时 a-->0为真
然后a=0 a-->0不满足,而a=a-1还要走一次,所以a=-1

该while语句的意思是,只要a>=1,a的值就会减少1。换言之,当a减为0后,就不再减少了,while循环退出。故最后a为0。

逐次循环 a等于1后 进行最后一次循环 执行a-- a变成0
退出循环

a--意思就是比如,a=6,先赋值a等于6,然后再减1,等于5,理解了这个就不难理解这段程序了,按照这个思路,不断执行循环一直到a小于1,就得0 了

开始a=6 因为a>=1执行a-- 此时a=5,a=5时 因为a>=1执行a-- 此时a=4......直到a=1 a>=1,a--后 a=0即为答案

当a=1时继续执行--操作,此时a=0,while语句结束


永兴县19335813339: 若定义int a=6;则执行while(a大于等于1)a -- ;后a的值是 答案是0,请高手指点一下,谢谢啦 -
畅雅帕利: while语句的意思是,就不再减少了,while循环退出.故最后a为0,a的值就会减少1.换言之,当a减为0后,只要a>=1

永兴县19335813339: 设有定义int a=6;则执行表达式a+=a - =a*a++后,a的值是多少?为什么? -
畅雅帕利: 这是编程里面的,要从右向左看,意思是将等号右边的计算结果赋值给等号左边的变量(本题中等号左边的变量即为a),可以拆分成三个式子: 1. a-=a*a; 2.a++ 3. a+=之前的结果; +=、-=这两个符号好像是为了节约内存什么的而设计的,上面两个式子的真实意思为: 1. a=a-(a*a)=6-6*6=-30; 2. a++ a=-29 3. a+=-30 a=-29-30=-59

永兴县19335813339: 35. 若有定义:int a=6; 则语句 a*=a - =a/=3; 运行后,a的值是 -
畅雅帕利: 从右往左左运算,a*a=36,执行语句a=a-36,得到值-30,然后执行语句a=a-30,得到值-60,有问题的话可以在hi我!

永兴县19335813339: 设有定义int a=6;则执行表达式 a+=a - =a*a++后,a的值是? -
畅雅帕利: a+=a-=a*a++ a+=a=a-a*a++ a+=a=6-6*6 // ++最后运算 a+=a=-30 a+=-30 a=a+a a=-60 a++ a=-59

永兴县19335813339: 若有定义:int a=6; 则语句 a*=a - =a/=3; 运行后,a的值是 -
畅雅帕利: 每一步算完之后a都是一个新的值而不是原来的6和3

永兴县19335813339: c语言一道题目,求解,若a是int型变量,且a的初值为6,则执行表达式a+=a - =a*a后a的值为 -
畅雅帕利: 从右往左依次计算 a-=a*a得到a=a-a*a=6-6*6=-30 a+=a得到a=a+a=-60 所以最后a的值为-60

永兴县19335813339: 11、若有定义“inti=6;",则执行语句“i++;"后的值是 -
畅雅帕利: 这个怎么说呢,你设置了i =6 ,i++是计算之后加1 的意思,还是原来的值参与计算,++i是参与计算之前就加1,比如 int i =6; i++; i +1=? ,i++的话就等于7,++i的话就等于8

永兴县19335813339: 35.若有定义:int a=6; 则语句 a*=a - =a/=3; 运行后,a的值是 -
畅雅帕利:[答案] a=a/3=6/2=3 a=a-a=3 - 3=0 a=a*a=0 * 0=0 所以a最后为0.

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 星空见康网