#include stdiohint main int a=10; while a--; printfda; return 0;和#include stdiohint main int a=10; while a-- printfda; return 0;只是一个封号的差别为什么第一个程序最小值是-1而第二程序最小值是0?详细解析
第一个程序的最小值是-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。
原文地址: http://www.cveoy.top/t/topic/iKd4 著作权归作者所有。请勿转载和采集!