黑马程序员—IOS基础(C语言流程控制)
来源:互联网 发布:剑三高冷御姐捏脸数据 编辑:程序博客网 时间:2024/04/29 09:12
C语言的流程控制有三种:顺序结构、选择结构、循环结构。在本文中将主要总结选择结构和循环结构。
* 顺序结构:默认的流程结构。按照书写顺序执行每一条语句。
* 选择结构:对给定的条件进行判断,再根据判断结果来执行哪一段代码。
* 循环结构:在给定条件成立的情况下,反复执行某一段代码。
一.选择结构-if
1.if语句的类型:
1> if(条件) { 语句 } 语句之间用分号隔开
if(count>60){ printf("study\n");}
2> if(条件) { 语句 } else { }
if(a>0){ printf("A\n");}else{ printf("B\n");}
3> if(条件1) { 语句 } else if(条件) else{ }
if(a>0){ printf("a大于0\n");}else if(a<0){ printf("a小于0\n");}
4> if( ) 语句1;语句2 (这样的情况下,if条件成立时,两个语句都会运行,若if条件不成立时,只运行语句2;因为此时的语句2与if语句无关,是独立的,只有被大括号括起来才收if控制)
2.if语句的注意事项
1> if条件后面不能写分号
2> 如果要在if语句后面定义新的变量,必须用大括号
3> 比较大小时,常量值放在左边,变量值放在右边
二.选择结构-switch
1.switch语句的类型:
switch(表达式) { case 数值1: break; …default: break;}
int a = 5;switch(a){ case0: { printf("输出0\n"); break; } case5: { printf("输出5\n"); break; } defaut: { printf("没有输出\n); break; }
2.switch语句的注意事项
1> case后面定义的变量,必须用大括号括起来,否则定义域不明确(雷同于if语句)
2> break在语句中的作用:退出整个switch语句;如果case后面没有break,就会执行后面所有的case中的语句,直到遇到break为止。
三.if和switch对比
1> if语句能完成的功能,switch语句不一定能完成
2> switch语句能完成的功能,if语句也能完成
3> 在一些情况下,if语句和switch语句可以互换
四.循环结构-while
1.while 语句的类型
while (表达式) { }
注:while语句一般与if语句一起使用
int count = 0;while (count<50){ count++; if (count%10 == 0) { printf("做第%d次俯卧撑\n",count); }}
2.特点
只有条件成立才会执行循环体
3.while语句运行原理
* 如果一开始条件就不成立,永远不会执行循环体;
* 如果条件成立就执行一次循环体,执行完毕,再次判断条件是否成立…
五.循环结构-do while
1. do while语句类型
do { } while( 表达式 )
2. 特点
不管一开始的条件是否成立,至少会执行一次循环体
int i = 0;do{ i++;}while(i<0);
六.循环体-for
1.for循环的语句类型
for(语句1;条件;语句2)
注:
* 还可以嵌套使用,多个循环一个
* 语句1是初始化语句;语句2是增量语句(执行完循环体后在执行的语句)
2. for循环的运行原理
* 一开始就执行一次语句 1(整个for循环只会执行一次)
* 判断条件是否成立,如果条件成立,就执行一次循环体,然后就执行语句2,再次判断条件是否成立
for(int count = 0;count < 50;count ++){ printf("做俯卧撑\n");}
3.for循环使用注意
* 不能在for( )后面加分号
* 如果在循环体中定义新的变量,必须用大括号括起来,否则作用域不明;循环体结束后变量也随之消失
* 小括号里定义的变量适用于大括号里的循环体(循环体里没有定义的变量就会往外一层寻找)
* 小括号和循环体内可以定义相同的变量
* 使用过程的选择:一般先考虑for循环,然后while,do while
七.break 和 continue
1.break
1> 使用场合
* switch语句:退出整个switch语句
* 循环结构体:退出整个语句
while do while for
2> 注意点
只对最近的循环结构有效
2.continue
1> 使用场合
循环结构体:结束当前的循环体,进入下一次的循环体
while do while for
2> 注意点
只对最近的循环结构有效
- 黑马程序员—IOS基础(C语言流程控制)
- 黑马程序员-IOS-C语言基础-流程控制
- 黑马程序员IOS基础---C语言学习之流程控制
- 黑马程序员-IOS基础之C语言流程控制
- 黑马程序员--C语言基础-流程控制
- 黑马程序员-iOS基础-C语言基础(三)流程控制及函数
- 黑马程序员——IOS基础---C语言学习之流程控制
- 黑马程序员——C语言基础---流程控制(选择结构,循环结构)
- 黑马程序员——IOS基础(流程控制)
- 黑马程序员-IOS开发之--C语言基础一流程控制
- 黑马程序员--ios基础--c语言--流程控制
- 黑马程序员——零基础学习iOS开发——04 c语言:基本运算、流程控制、函数
- 黑马程序员-C语言基础五:流程控制
- 黑马程序员 -- IOS C语言 流程控制1
- 黑马程序员 -- IOS C语言 流程控制2
- 黑马程序员——C语言基础语法--scanf函数、基本运算、流程控制
- 【黑马程序员】iOS学习之路——C语言之流程控制
- 黑马程序员--IOS入学学习--2-基本运算及流程控制(C语言)
- 哈夫曼树及最优前缀编码
- 老崔的apple watch游戏开发实战:(2)WatchKit运行机制和生命周期
- 浅谈个人对各种数据库的认识------通俗的个人话语-----阿冬专栏!!!
- C学习笔记(四)字符串和格式化输入\输出
- 设计模式—责任链模式
- 黑马程序员—IOS基础(C语言流程控制)
- 折弯机——SQLite错误代码整理
- Spark-logging
- Spring配置文件 destroy-method="close"的作用
- 为什么(i++)不能做左值,而(++i)可以
- ORACLE 11G 触发器调试记录Error: PLS-00201: identifier'SYS.DBMS_SYSTEM' must be declared
- S3C44B0的向量中断模式概念
- Spark---Spark开头的杂项
- 获取信息和过滤信息,推进事业和兴趣的发展