第一个程序的最小值是-1,是因为在while循环中先执行了a--操作,然后再进行判断。当a的值为1时,循环内部执行a--后,a的值变为0,然后再进行判断,判断结果为真,继续循环。当a的值为0时,循环内部执行a--后,a的值变为-1,然后再进行判断,判断结果为假,跳出循环。所以最后输出的a的值是-1。

第二个程序的最小值是0,是因为在while循环中先进行判断,然后再执行a--操作。当a的值为1时,进行判断,判断结果为真,进入循环。然后循环内部执行a--操作,a的值变为0。然后再进行判断,判断结果为假,跳出循环。所以最后输出的a的值是0。

#include stdiohint main int a=10;	while a--; printfda;	 return 0;和#include stdiohint main int a=10;	while a-- printfda;	 return 0;只是一个封号的差别为什么第一个程序最小值是-1而第二程序最小值是0?详细解析

原文地址: http://www.cveoy.top/t/topic/iKd4 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录