if switch do while for分析
来源:互联网 发布:java怎么写日志 编辑:程序博客网 时间:2024/06/04 00:58
一、分支语句if分析
if语句用于根据条件选择执行语句;
else不能独立存在且总是与它最近的if相匹配;
else语句后可以连接其他if语句。
if(condition){ //statement1}else{ //statement2}if语句中零值比较的注意点:
(1)bool型变量应该直接出现于条件中,不要进行比较;
(2)普通变量和0值比较时,0值应该出现在比较符号左边;
(3)float型 变量不能直接进行0比较,需要定义精度。
情况1:
bool b = true;if( b ){ //statement1}else{ //statement2}情况2:
int i = 0;if( 0 == i ){ //statement1}else{ //statement2}情况三:
#define EPSINON 0.00000001float f = 0.0;if( (-EPSINON <= f) && (f <= EPSINON) ){ //statement1}else{ //statement2}二、分支语句switch分析
switch语句对应单个条件多个分支的情形;
每个case语句分支必须要有break,否则会导致分支重叠;
default语句有必要加上,以处理特殊情况。
switch(表达式){ case 常量: 代码块; case 常量: 代码块; default: 代码块;}case语句中的值只能是整形或是字符型;
case语句排列顺序分析 按字母或数字顺序排列各条语句 正常放前面 异常放后面
default语句只用于处理真正的默认情况。
if 和switch对比分析 四点结论
#include <stdio.h>void func1(int i){ if(i < 6) { printf("failed\n"); } else if((6 <= i) && ( i <= 8)) { printf("GOOD\n"); } else { printf("perfect\n"); }}void func2(char n){ switch(n) { case 'A': printf("perfect\n"); break; case 'B': printf("good\n"); break; case 'C': printf("pass\n"); break; case 'D': printf("failed\n"); break; default: break; }}int main(){ func1(1); func2('A'); return 0;}三、循环语句分析
通过条件表达式判定是否执行循环体 条件表达式遵循if语句表达式的原则
do语句至少执行循环体一次 while >= 0 次 for先判断 再执行 更简洁
例子分析:
#include <stdio.h>int func1(int n){ int i = 0; int ret = 0; for(i = 0; i < n; i++) { ret += i; } return ret;}int func2(int n){ int ret = 0; while ((n > 0) && (ret += n--)); return ret;}int func3(int n){ int ret = 0; if(n > 0) { do { ret += n--; }while(n); } return ret;}int main(){ printf("%d\n", func1(101)); printf("%d\n", func2(100)); printf("%d\n", func3(100)); return 0;}do while存在的意义?下面例子:
int fun(int n){ int i = 0; int ret = 0; int *p = (int*)malloc(n*sizeof(int)); do { if( NULL == p) break; if(n < 0) break; for(i = 0; i < n; i++) { p[i] = i; printf("%d", p[i]); } ret = 1; }while(0); free(p); return ret;}避免可能造成内存泄漏的情况。
break:终止循环的执行 跳出一个“块””包括 switch 和 循环
continue:终止本次循环 进入下一次循环
阅读全文
0 0
- if,switch,do,while,for分析
- if switch do while for分析
- if, switch, do , while, for分析
- 分支语句 循环语句 if,switch,do,while,for分析
- 程序流程控制 if switch while do while for
- if switch 具体用法 循环 while do while for
- 控制流程语句if、switch、while、do-while、for
- 循环控制语句for while do-while if switch
- 专题一关键字的剖析----3.if,switch,do,while,for分析
- 笔记:循环(for, if, do...while, break, switch)
- C语言关键字--- if switch do while for
- JS:1.2控制语句(if,if else,for,switch,while,do while)
- 【Swift】学习笔记(五)——控制语句(if,switch,for-in,for,while,do-while)
- C语言中流程控制语句(if,switch,for,while,do-while,continue,break,return)
- if,switch,while,do..while,for语句在JSP中的用法示例
- 黑马程序员——选择结构if、switch,循环结构while、do-while、for
- if/switch/while/do while/for/等循环及判断的简要用法案例
- Java语言基础(程序流程控制-if、switch、for、while、do while、break、continue)
- STL---auto_ptr实现
- 沟通与性格
- thinkphp生成缩略图
- Struts2 搭建开发环境
- 日期
- if switch do while for分析
- JNI中javah命令的使用,生成.h的头文件
- Java线程如何实现同步?
- JVM---内存分配策略
- bzoj 3798: 特殊的质数(分块打表)
- Redux源码分析之基本概念
- CNN数值初始化——xavier
- Drools学习资料汇总
- Android动态权限