5. 分析下面的代码: int a=1,b=5; do { b*=a;++a; --b; while(b<0); } 执行上面的程序后,b的值为( ) A.5 B.4 C.8 D.其他
时间: 2023-08-06 11:09:38 浏览: 144
C语言速成手册_by_Matrix67.
该代码中的do-while循环缺少右括号,应该为:
```
int a=1, b=5;
do {
b *= a;
++a;
--b;
} while (b < 0);
```
由于b初始值为5,每次执行循环时b都会乘以a,a每次加1,b每次减去1,直到b小于0为止。因为a从1开始不断加1,所以b乘以a的结果会越来越大,直到超过5才会小于0。因此最终b的值为4,选项B。
阅读全文