main( ) { int y=2; do {y--;} while (y); printf("%d ",--y);
时间: 2024-04-05 16:35:57 浏览: 18
根据代码,输出结果应该是-1。这是因为do-while循环语句会先执行一遍循环体,然后再判断循环条件是否成立,如果成立则继续执行循环体,否则结束循环。在这个例子中,y的初始值是2,所以执行一次循环体后y的值变为1,由于1不等于0,所以继续执行循环体,y的值变为0,由于0等于0,所以结束循环。最后再执行一次--y操作,y的值变为-1,输出结果为-1。
相关问题
#include<stdio.h> main() { int y=10; while(y--); printf("y=%d\n",y); }
这段代码的输出结果是 y=-1。原因是在 while 循环中,y 的初始值为 10,每执行一次循环,y 的值减 1,直到 y 的值减为 0 时,循环停止。而在最后一次循环中,y 的值减为 -1,然后代码输出 y 的值,所以输出结果为 y=-1。需要注意的是,代码中缺少了头文件的声明,应该加上 #include<stdlib.h>。
19 下面程序的运行结果是( ) #include main() { int y=10; do{y--;}while(--y); printf("%d\n",y--); } -1 1 8 0
运行结果是 0。
程序的逻辑如下:
1. 定义变量 y 并赋值为 10。
2. 执行 do-while 循环,先将 y 自减 1,再判断 --y 是否为真,即 9 是否大于 0,由于是真,所以继续执行循环体。
3. 循环体中没有任何操作,直接结束一次循环,再次判断 --y 是否为真,即 8 是否大于 0,由于是真,所以继续执行循环体。
4. 重复上述操作,直到 --y 为假,即 0 不大于 0,跳出循环。
5. 执行 printf 语句,输出此时的 y 值,即 0。
因此,程序的运行结果是 0。
相关推荐
![ppt](https://img-home.csdnimg.cn/images/20210720083527.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)