其实我感觉只要学过一门编程语言的人都会使用。
流程控制(非常重要)
1,什么流程控制
控制程序的执行顺序
流程控制的重要性
一通百通 C++ java C+ 都是一样的。
等等……总之就是非常的重要
2,流程控制的分类
顺序
按照顺序自上而下执行。
选择
定义:有选择的执行某些代码
分类:
if 和 switch
1,if 最简单的用法
#include
intmain(void)
{
if(3>24)
printf("aaaaaaaaaa\n");
else
printf("bbbbbbbbb\n");
if(0)
printf("cccccc\n");
if(0==0)
printf("dddddddddd\n");
return0;
}
2,if的范围问题(很重要的问题)
#include
intmain(void)
{
if(3>24)
printf("aaaaaaaaaa\n");
printf("bbbbbbbbbbb\n");
if(5>2)
printf("cccccccccc\n");
printf("ddddddddddd\n");
return0;
}
/*
在vc++6.0中的输出结果是:
------------------------------------------
bbbbbbbbbbb
cccccccccc
ddddddddddd
--------------------------------------------
总结:
if默认只能控制一个语句的执行或不执行。
*/
取值范围:
1, if ( 表达式 )
语句a
语句b
解释: if默认只能控制语句 A的执行或者不执行
if 无法控制语句b的执行或不执行
或者说:语句b一定会执行
2,if ( 表达式 )
{
语句A
语句B
}
此时if可以控制语句A和语句B。
小总结: if 默认只能控制一个语句的执行和不执行,如果想控制多个语句的执行或不执行,就需要使用花括号把这些语句括起来。
3,if ... else ...
#include
intmain(void)
{
inti,j;
scanf("%d%d",&i,&j);
if(i>j)
{
printf("i大于j\n");
}
else
{
printf("i小于j\n");
}
return0;
}
4,if ... else if ... else if ... else ...
#include
intmain(void)
{
inti,j;
scanf("%d%d",&i,&j);
if(i>j)
printf("i大于j\n");
printf("haha\n");//该语句就会报错,因为if默认只能控制一条语句。
elseif(i
printf("i小于j\n");
else
printf("它们相等\n");
return0;
}
/*
编译出错的原因:if语句默认只能控制一条语句,当执行过printf("i大于j\n")的时候
if语句就已经结束了,到了elseif的时候,系统认为缺少了一个if,所以报了错
*/
5,if对于真假的判断
非零 是 真
零 是 假
真用 1 表示,假用 0 表示
if分支控制小案例:
#include
intmain(void)
{
intscore;
printf("请输入你要查询的分数:");
scanf("%d",&score);
if(score>90&&score<=100)
printf("优秀\n");
elseif(score>=80&&score<=90)
printf("良好\n");
elseif(score>=60&&score<=80)
printf("及格\n");
elseif(score>=0&&score
printf("不及格\n");
else
printf("没有这个数值\n");
return0;
}
小案例2:从大到小排序,其实就是冒泡排序的基本思路了
#include
intmain(void)
{
inta,b,c,t;
printf("请输入三个数字,中间以三个空格分割:");
scanf("%d%d%d",&a,&b,&c);
if(a
{
t=a;
a=b;
b=t;
}
if(a
{
t=a;
a=c;
c=t;
}
if(b
{
t=b;
b=c;
c=t;
}
printf("%d%d%d\n",a,b,c);
return0;
}