例子:判断位数

有限范围 if-else级联

image.png
级联用大于>判断的时候,从高处往下走,隐含x<=999
级联用小于<判断的时候,从低处往上走,隐含x>9

判断位数,用if级联的方法,在一定的范围内是可以的。但在任意范围内,就不行了

无限范围—循环取整

image.png
image.png
image.png
image.png
n++;
x/=10;
在外面多做一次循环内的执行语句,可以避免x=0的极端情况

Dev C++调试过程怎么查看变量

image.png
打开工具—环境选项,勾选查看鼠标指向的变量

while循环

image.png
image.png
循环体内要有改变条件的机会,否则会陷入死循环
语法正确和逻辑正确,编译只能检查语法是否正确。

  • 如果我们把while翻译作“当”,那么一个while循环的意思就是:当条件满足时,不断地重复循环体内的语句。
  • 循环执行之前判断是否继续循环,所以有可能循环一次也没有被执行
  • 条件成立是循环继续的条件。

    程序验证

  • 测试程序常使用边界数据,如有效范围两端的数据、特殊的倍数等

  • 个位数;
  • 10;
  • 0;
  • 负数。

    do—while循环

    image.png

while后面记得加;

两种循环区别

  • do-while循环和while循环很像,区别是在循环体执行结束的时候才来判断条件。也就是说,无论如何,循环都会执行至少一遍,然后再来判断条件。与while循环相同的是,条件满足时执行循环,条件不满足时结束循环。