C语言看编程写结果 求x y的值

include


‏main() {


‏int i,x,y;


‏i=x=y=0;


‏do {


‏++i;


‏if(i%2!=0)


‏{x=x+i;i++;}


‏ y=y+i++; }while (i<=7);


‏printf("x=%d,y=%d\n",x,y); }
为什么x=1呢?

只有第一次++i后i=1时执行了‏if(i%2!=0),之后i都是偶数,没有执行if里的代码。