黑马程序员--流程控制
2015-06-26 21:37
656 查看
流程控制:
顺序结构
选择结构
1.if的第一种结构:
if(条件)
{
语句;
}
2.if的第二句语句
if()
{
语句;
}
else
{
语句;
}
3.if的第三种结构
if()
{
}
else if()
{
}
else if ()
{
}
else
{
}
4.if的第四种语句
if()
语句1;
语句2;
//只对1语句起作用
比较大小时,常量值放左边,变量放右边
赋值 = 不要写成两个等号 ==
if后面不要写;
if(10 > 6)
int a = 5; // 错误,作用域不明确,编译器不能确定范围
if (10 > 6)
{
int a = 5;
}
printf("%d\n", a); // 错误,a的作用域为大括号内部
switch:
switch(数值)
{
case 数值1:
语句1;
break;
case 数值2:
语句2;
break;
...
default:
语句3;
break;
} //break 退出整个switch语句
//如果后面没有break,就会执行后面所有case语句,直到遇到break为止
seitch(c)// 如果在case 后面定义新的变量,必须用大括号{}包住
case '+':
{ int sum = a + b;
printf("和是%d\n", sum)
break;
}// 不加大括号,会出现作用域问题
case '-':
{ int miuus = a + b;
printf("和是%d\n", minus)
break;
}
成绩判断:
# include<stdio.h>
int main ()
{
int score = 99;
switch (score/10)
{
case 10:
case 9:
printf("A\n");
break;
case 8:
printf("B\n");
break;
case 7:
printf("C\n");
break;
case 6:
printf("D\n");
break;
default:
printf("E\n");
break;
}
return 0;
}
switch和if的区别:
1.if 能完成的功能,switch并不一定完成
if(a > 100)
2.在有些情况下,if和switch语句可以互换
3.switch能完成的功能,if语句都能完成
循环结构
while
1.先确定需要重复执行的操作
2.在确定约束变量
定义一个变量记录做的次数
eg:
int count = 0;
while(count < 40)
{
++ count;
printf("做第%d次俯卧撑\n", count)
}
continue:
while(count < 40)
{
++ count;
if(count % 10 != 0)
{
continue;//直接结束这一次循环体,进入下一次循环判断
}
printf("做第%d次俯卧撑\n", count)
}
break:
结束循环体
运行原理:
1.如果一开始条件就不成立,永远不会执行循环体
2.如果条件成立,就会执行一次循环体,执行完毕,再次判断条件是否成立
continue:
结束当前的循环,进入下一次循环的判断
break:
直接结束整个循环体
题目:
计算1~100中所有3的倍数的个体
# include<stdio.h>
int main()
{
int count = 0;
int number =0 ;
while (number < 100)
{
number ++;
if(number % 3 == 0)
{
count ++;
}
}
printf("1~100内3的倍数的个数:%d\n",count);
return 0;
}
while 使用注意:
最简单的死循环 while(1);
do
{
}
while (条件);
两者区别:
1.很多情况下,两者可以互换
2.while特点:如果开始条件不成立李,永远不会执行循环体,
do
while特点:不管一开始条件是否成立,至少会执行一次循环体
for 循环:
1.不要随便在for()后面写分号
2.for (; ; )
int a = 10; //错误的写法,作用域问题
3.for (int i= 0;i< 10 ;i++ )
{
int i = 10;// 不矛盾
}
for (int i = 0; i<10; i++,a++)
{
int a= 10; // a只能用在循环体中
}
for最简单的死循环 :for(;;)
eg:输出图形*****
# include <stdio.h>
int main()
{
int n = 0;
while (n <= 0)
{
printf("请输入一个正整数:\n");
scanf("%d", &n);
}
for (int i=0; i<n ; i++)
{
for (int j=0;j<n-i ;j++ )
{
printf("*');
}
}
printf("\n");
return 0;
}
总结:
1.选择结构:
if ...else if...else if...
特点:同一时刻,只有一个大括号里面的代码会被执行
switch特点:
默认情况下,只有一个case后面的代码会被执行
如果一个case后面没有break,而且这个case成立,就会按顺序执行后面所有case中的语句,知道遇到break为止
如果在case后面定义一个新的变量,必须用大括号{}包住
2.循环结构
一般优先使用for循环
然后在考虑while循环
最后在考虑do while ()
break:
switch退出整个switch语句
退出整个循环结构
注意点:
只对最近的循环结构有效
continus:
结束当前的循环,进入下一次循环体
顺序结构
选择结构
1.if的第一种结构:
if(条件)
{
语句;
}
2.if的第二句语句
if()
{
语句;
}
else
{
语句;
}
3.if的第三种结构
if()
{
}
else if()
{
}
else if ()
{
}
else
{
}
4.if的第四种语句
if()
语句1;
语句2;
//只对1语句起作用
比较大小时,常量值放左边,变量放右边
赋值 = 不要写成两个等号 ==
if后面不要写;
if(10 > 6)
int a = 5; // 错误,作用域不明确,编译器不能确定范围
if (10 > 6)
{
int a = 5;
}
printf("%d\n", a); // 错误,a的作用域为大括号内部
switch:
switch(数值)
{
case 数值1:
语句1;
break;
case 数值2:
语句2;
break;
...
default:
语句3;
break;
} //break 退出整个switch语句
//如果后面没有break,就会执行后面所有case语句,直到遇到break为止
seitch(c)// 如果在case 后面定义新的变量,必须用大括号{}包住
case '+':
{ int sum = a + b;
printf("和是%d\n", sum)
break;
}// 不加大括号,会出现作用域问题
case '-':
{ int miuus = a + b;
printf("和是%d\n", minus)
break;
}
成绩判断:
# include<stdio.h>
int main ()
{
int score = 99;
switch (score/10)
{
case 10:
case 9:
printf("A\n");
break;
case 8:
printf("B\n");
break;
case 7:
printf("C\n");
break;
case 6:
printf("D\n");
break;
default:
printf("E\n");
break;
}
return 0;
}
switch和if的区别:
1.if 能完成的功能,switch并不一定完成
if(a > 100)
2.在有些情况下,if和switch语句可以互换
3.switch能完成的功能,if语句都能完成
循环结构
while
1.先确定需要重复执行的操作
2.在确定约束变量
定义一个变量记录做的次数
eg:
int count = 0;
while(count < 40)
{
++ count;
printf("做第%d次俯卧撑\n", count)
}
continue:
while(count < 40)
{
++ count;
if(count % 10 != 0)
{
continue;//直接结束这一次循环体,进入下一次循环判断
}
printf("做第%d次俯卧撑\n", count)
}
break:
结束循环体
运行原理:
1.如果一开始条件就不成立,永远不会执行循环体
2.如果条件成立,就会执行一次循环体,执行完毕,再次判断条件是否成立
continue:
结束当前的循环,进入下一次循环的判断
break:
直接结束整个循环体
题目:
计算1~100中所有3的倍数的个体
# include<stdio.h>
int main()
{
int count = 0;
int number =0 ;
while (number < 100)
{
number ++;
if(number % 3 == 0)
{
count ++;
}
}
printf("1~100内3的倍数的个数:%d\n",count);
return 0;
}
while 使用注意:
最简单的死循环 while(1);
do
{
}
while (条件);
两者区别:
1.很多情况下,两者可以互换
2.while特点:如果开始条件不成立李,永远不会执行循环体,
do
while特点:不管一开始条件是否成立,至少会执行一次循环体
for 循环:
1.不要随便在for()后面写分号
2.for (; ; )
int a = 10; //错误的写法,作用域问题
3.for (int i= 0;i< 10 ;i++ )
{
int i = 10;// 不矛盾
}
for (int i = 0; i<10; i++,a++)
{
int a= 10; // a只能用在循环体中
}
for最简单的死循环 :for(;;)
eg:输出图形*****
# include <stdio.h>
int main()
{
int n = 0;
while (n <= 0)
{
printf("请输入一个正整数:\n");
scanf("%d", &n);
}
for (int i=0; i<n ; i++)
{
for (int j=0;j<n-i ;j++ )
{
printf("*');
}
}
printf("\n");
return 0;
}
总结:
1.选择结构:
if ...else if...else if...
特点:同一时刻,只有一个大括号里面的代码会被执行
switch特点:
默认情况下,只有一个case后面的代码会被执行
如果一个case后面没有break,而且这个case成立,就会按顺序执行后面所有case中的语句,知道遇到break为止
如果在case后面定义一个新的变量,必须用大括号{}包住
2.循环结构
一般优先使用for循环
然后在考虑while循环
最后在考虑do while ()
break:
switch退出整个switch语句
退出整个循环结构
注意点:
只对最近的循环结构有效
continus:
结束当前的循环,进入下一次循环体
相关文章推荐
- 黑马程序员--枚举类型和结构体
- 高级程序员离职或跳槽可以像公司申请一个月工资
- 黑马程序员--预处理3中指令
- 黑马程序员--指针与数组字符串
- 黑马程序员——Java内存——基本知识
- 黑马程序员--typedef关键字和结构体 枚举类型
- 《剑指offer》面试题16扩展题
- 转载:硬件专业面试历程
- 黑马程序员--代码块
- 黑马程序员---IO流及File类
- 面试题12:打印1到最大的n位数
- "一个程序员的生命周期"读后感
- 黑马程序员---iOS-OC特有的语法1
- 让程序员跳槽的非钱原因
- 黑马程序员——Java基础---面向对象
- 黑马程序员——Java基础---多态、内部类、异常、包
- 黑马程序员——Java基础---继承、抽象、接口
- 黑马程序员——Java基础---String类和基本数据类型包装类
- 黑马程序员——Java基础---多线程
- 黑马程序员——Java基础---泛型、集合框架工具类:collections和Arrays