练习5
5.1 计算循环体的执行次数并上机验证。
1. int i = 0;
2. short i = 1;
while(1) while(i > 0)
{ {
++i; ++i;
printf("%d\n", i); printf("%d\n", i);
} }
3. short i = 1;
4. char c = 'a';
while(i * i >= 0) while(c >= 0)
{ {
++i; --c;
printf("d\n", i); printf("%c\n", c)
} }
答:
1.表达式1恒真,因此循环体会执行无数次。
2.在数学上,变量i的初值为1,每次自增1后会一直大于0,也就是说表达式i > 0恒真,但是,计算机中整型构成一个环,short型变量的取值范围为-32768~32767,当变量i的值自增到32767后再加1就变成了-32768,表达式i 〉0为假,循环退出,因此循环体执行了32767次。
3.表达式i * i >= 0恒真,因此循环体会执行无数次。
4.字符型变量c的值为97号字符’a’,因此从97至0,循环体共执行了98次。
5.2 画出例5-4的程序流程图。