#一些C语言的难点
##一, i++与++i
工具:使用DEVc++调试
1下面展示一些 代码片。
#includeint main() { int x,i,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=%dn",x,y); }
2,原理重点
1
1
1<<<<>>>>
y=y+i++;
分解:y=y+i=i+1;
从左到右执行
y=y+i
i=i+1
例如:i=6;y=0;
y=y+i即y=0+6;
i=i+1即i=0+1;
2
2
2<<<<>>>>
y=y+i++;
分解:y=y+i=i+1;
从右到左执行
i=i+1
y=y+i
例如i=6;y=0;
i=i+1即i=0+1;
y=y+i即y=1+6;
##二,break与continue
1下面展示一些 代码片。
// dede.cpp : 定义控制台应用程序的入口点。
//
#include "stdio.h"
int main() {
int x = 0;
while (x < 3) {
for (; x < 4; x++) {
printf("%d", x++);
if (x < 3)
continue;
else
break;
printf("%d", x);
}
}
return 0;
}
2原理
continue只是结束本层循环
具体为结束x=2层的循环不再执行下面的程序,开始下一层,例如x=3,当然具体要看此时x=什么
break跳出整个for循环的大循环



