c语言大神,请详解这道题怎么做
2个回答
展开全部
这题,明白是这个结果,关键的地方有三点,
1、读懂for循环
2、了解这里的自加运算符
3、熟悉continue、break语法
首先从第一点开始分析:老实说,这里完全是为了考你对for的掌握程度,是否真的理解了。通常实际开发,不会这么缺心眼的写法。标准写法,for的三个条件都会给你。即for(初值,条件,增减)
看这里,无非就是没有给你提供条件判断,那么带来的结果,就是死循环了。通常for循环能否结束,就是因为循环条件判断有假,则结束循环(排除使用其他关键字的情况)
所以可知,这里题目中的for是个死循环。
在看第二点分析:这里用到了自加运算符,那就要明确自加运算符的使用,在变量前跟变量后的区别。而这里,仅仅是唯一的表达式,故它的值就不存在前后的差异了。
最后看第三点分析:满足这里的if条件,那个代码段都会执行。第一个if是对2求余,能够等于0,那它肯定是2的倍数,那么将循环进行下去,将每次的i值代入,只要符合余数为0的,那么if下得代码段就会执行,即continue也会执行。从字面就知道,continue是继续的意思,他的意思是,继续下一轮循环,不是说继续执行下面的代码。接着下面的对5求余道理是一样的,只不过,它这里使用的是另一个关键字break,break关键字在switch语句中,会配套使用,作用是跳出的意思。顾名思义,在此起到的作用就是跳出。那么跳出什么呢?跳出当前循环!相应的基础知识,自己底下补补。由此可知,这个for循环,最多执行5次,就执行完毕,结果就是2,1.
多思考!
1、读懂for循环
2、了解这里的自加运算符
3、熟悉continue、break语法
首先从第一点开始分析:老实说,这里完全是为了考你对for的掌握程度,是否真的理解了。通常实际开发,不会这么缺心眼的写法。标准写法,for的三个条件都会给你。即for(初值,条件,增减)
看这里,无非就是没有给你提供条件判断,那么带来的结果,就是死循环了。通常for循环能否结束,就是因为循环条件判断有假,则结束循环(排除使用其他关键字的情况)
所以可知,这里题目中的for是个死循环。
在看第二点分析:这里用到了自加运算符,那就要明确自加运算符的使用,在变量前跟变量后的区别。而这里,仅仅是唯一的表达式,故它的值就不存在前后的差异了。
最后看第三点分析:满足这里的if条件,那个代码段都会执行。第一个if是对2求余,能够等于0,那它肯定是2的倍数,那么将循环进行下去,将每次的i值代入,只要符合余数为0的,那么if下得代码段就会执行,即continue也会执行。从字面就知道,continue是继续的意思,他的意思是,继续下一轮循环,不是说继续执行下面的代码。接着下面的对5求余道理是一样的,只不过,它这里使用的是另一个关键字break,break关键字在switch语句中,会配套使用,作用是跳出的意思。顾名思义,在此起到的作用就是跳出。那么跳出什么呢?跳出当前循环!相应的基础知识,自己底下补补。由此可知,这个for循环,最多执行5次,就执行完毕,结果就是2,1.
多思考!
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询