#include<stdio.h>
void main(){
int x=8,i;
for(;x>0;x--)
{if(x%3){
printf("%d\n",x--);
continue;
}
printf("%d\n",--x);
}
}
这个程序结果是8,5,4,2
问下为什么第一次就--x是8还么变
#include<stdio.h>
void main(){
int x=8,i;
for(;x>0;x--)
{if(x%3){
printf("%d\n",x--);
continue;
}
printf("%d\n",--x);
}
}
这个程序结果是8,5,4,2
问下为什么第一次就--x是8还么变
我有点搞不懂你的问题是什么意思
问题说清楚,还要说明你的 continue 会导致些问题
让我分析下你的程序
去掉没用的printf
实际所用的运算如下
x-- //循环 第一个printf x-- continue x-- //循环 第一个printf x-- continue x-- //循环 第二个printf x++ x-- //循环 第一个printf x-- continue x-- //循环 第一个printf x-- continue x-- //循环 第二个printf x++ x-- //循环 第一个printf x-- continue x-- //循环 第一个printf x-- continue