结构有 :
顺序结构
选择结构
循环结构
if 语句
1.if语句的书写规范
bool值与零比较:0表示假,非0表示真;
if(flag==TURE),这样的 语法结构会出现错误,比如(flag=5)
所以 应该用if(flag)或if(!flag)。
整形变量与零的比较。
可以写成if(number == 0)
if(0 == number ) ; 防止书写错误。
指针和零比较
首先必须初始化 如 int *p = NULL;(不初始化的话是个随机值)。
比较if(p != NULL)
浮点型和零值得比较
double i =2.0;
if(i * 2.0 == 4)
//这种写法是错误的
因为浮点型在内存中的存储方式使得,有些浮点数在内存无法精确的存储,这样就必然有精度的丢失。
必须要设置一个精度范围,保证误差在精度范围内。
例 ;#denfine EXP 0.0001;
float i =20.0;
if(f-20.0>EXP && f-20.0<EXP)
{
}
关于getchar()和putchar
char ch = getchar();
putchar(ch)
这样是得不到你想要的结果;getchar从缓冲区得到字符,但是缓冲区还有“\n"所以putchar 得到“\n”。
应用while(ch=getchar()!= '\n');
{
getchar();
}
putchar;
或者刷新缓冲区(fflush(stdin);)
2.switch语句
在switch 语句中,必须搭配break才能实现真正的分支,最好每个switch语句中都加一个dafault(默认)。
3.goto 语句(适合个别场景,不要乱用)
for()
for()
{
for()
{if (disaster)
goto error;
}
error:
if(disater)
//处理错误
4.while语句
遇到break就停止后期所有的循环,直接终止循环。
所以while中的break是用于永久终止循环的。
遇到continue终止本次循环,直接while语句的判断部分。进行下一次循环的入口。
5.for循环
不要在for循环体内修改循环变量,防止for循环失去控制。
建议for语句的循环控制变量的取值采用“半开半闭区间”写法。