#一些C语言的难点
##一, i++与++i
工具:使用DEVc++调试
1下面展示一些 代码片。
#include<stdio.h>
int 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=%d\n",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循环的大循环