v43-47.problems

1.for循环

一般地,三步走:

for(初始化;表达式判断;递增/递减)

{   .......

  }

v43-47.problems_第1张图片但是,如果说声明了全局变量,那么第一步初始化阶段可以省略但是要写分号‘ ; ’。因为要让编译器知道对应的第几步。

第二步是表达式的条件判断。若返回值是true,那么执行代码块;若返回值是false,结束,后边递增不会执行。在这里i=1024>0,返回true。

第三步,执行i的值的变化。i++实际上是i=i+1;i>> = 1实际上是i = i>>1。

条件与循环

2.1

v43-47.problems_第2张图片

 注意,case label语句后面没有break!这表示之后的语句都将会执行!

正确输出是16 21

2.2

v43-47.problems_第3张图片

 注意while{}大括号中的是循环语句,属于循环部分。当遇到continue或者break时,直接跳出循环,下面的语句不再执行。

2.3

v43-47.problems_第4张图片

v43-47.problems_第5张图片 

注意printf函数会返回打印字符串的长度。

 2.4

v43-47.problems_第6张图片

 注意while循环后面有分号,表明while循环部分结束,没有循环语句,且条件满足,一直循环。

v43-47.problems_第7张图片

 循环到界限4294967295再加一到0,此时不满足条件,注意后递增变为1,执行printf语句打印1。

 

你可能感兴趣的:(笔记)