C语言拥有九种控制语句。
1.条件判断语句也叫分支语句:if switch ;
2.循环执行语句:while , do while ,for ;
3.转向语句:break ,go to ,continue ,return ;
一、分支语句(选择结构)
if ()
{
}
括号中是表达式 ,if语句先进行括号中的表达式判断是一个逻辑值,逻辑结果不为零则进行花括号中的程序,如果为零则进行分支。 if 是先判断 再分支。
常见的几种if语句结构,
1.if()
{}
else()
{}
2.if()
{}
else if ()
{}
else if()
{}
else{}
3.if ()
{}
if()
{}
else{}
if if 和if else if 的区别 :前者所有的语句都要判断,后者其中一个符合 其他的都不需要执行判断。
int a =0;
int b=1;
if(a==1)
if(b==1)
else
printf(“hello");
当省略了花括号,else和最近的if匹配。 建议:最好if和else后花括号不要省略。(分支和循环中的花括号是好习惯,为了好的逻辑性)
switch 语句
switch(整形表达式) // 整形表达式 int char 之类的 浮点数不行,整数。
{case1: ;break;
case2: ;break;
case3: ;break;
default : ; break;}
switch 判断能力由case承担,分支能力由break 承担。 本身没有判断分支能力。
如果表达式中的值与case的标签不配 ,不会有什么影响,所有的语句都会跳过 ,程序不会报错,程序还会进行。如果你不想忽略不匹配的值时 可以加一个default 子句。当case不执行时 它便起作用。它可以在语句内的任意位置。
case语句后一般放整形结果的常量表达式或者枚举类型,枚举类型也可以看成是一个特殊的常量
建议:每一个case 后都应该加break , switch 语句中也应当加入default 子句。
二、循环语句
1.while 2.do while 3.for
循环三要素 :1条件的初始化2.条件的判断3.条件的更新
(1);int i=0;
while (表达式)
{循环语句
i++;
}
(2);do{i++
循环语句}
while(表达式)
(3);for(i=0;表达式;i++)
{}
break 在循环语句中 意思是直接结束循环 continue 是跳出本次循环 。其中在while 中是到while条件判断,在do while 中 是到条件判断 , 在for 中是到条件更新。所以for是不容易死循环的。