目录
- 分支语句
- if
- switch
- 循环语句
- while
- for
- do while
- go to语句
1.什么是语句?
c语言可以分为以下五类
1.表达式语句
2.函数调用语句
3.控制语句
4.复合语句
5.空语句
这里介绍的是控制语句!!
控制语句 : 控制语句用于控制程序的执行流程,以实现程序的各种结构方式,它们由特定的语句定义符组成,C语言有九种控制语句
可分为以下三类:
1.条件判断语句 也叫 分支语句 :if 语句 switch语句。
2.循环执行语句 : while语句 for语句 do while语句。
3.转向语句 : break语句 continue语句 return语句
2.1 if 语句
语法结构:
if ( 表达式 )
语句;
if ( 表达式 )
语句1;
else
语句2;
//多分支
if ( 表达式1 )
语句1;
else if ( 表达式2 )
语句2;
else
语句3;
如果表达式的结果为真,则语句执行,为假,则不执行。
c语言中 非0为真 0为假。
演示::判断 年龄结构
if
if else
if ,else if ,else
如果条件成立要执行多条语句,怎样使用代码块?
在c语言中 一个 { } 代表一个代码块;
#include<stdio.h>
int main()
{
if(表达式)
{
语句;
}
else
{
语句;
}
return 0;
}
//这里一对{}就是代码块
悬空else,不正规使用代码块情况下;
#include<stdio.h>
int main()
{
int a = 0;
int b = 0;
if(a==1)
if(b==2)
printf("hehe\n");
else
printf("haha\n");
return 0;
}//这里悬空了else 这样的代码是错误的
//else是与离他最近的if匹配的;
2.2 switch语句
switch语句也是一种分支语句,常用于多分支的情况;
有多个选择和输出时就可选用switch语句;
比如
输入 1-7 输出 星期一 - 星期七;如果写成if else形式会比较复杂,那么我们就可以使用switch语句
//switch 语句的表达
switch ( 整形表达式 )
{
语句;
}
//而语句是什么嘞;
//如下
case 整型常量表达式;
语句;
#include<stdio.h>
int main()
{
int day = 0;
switch(day)
{
case 1:
printf("星期一\n");
case 2:
printf("星期二\n");
case 3:
printf("星期三\n");
case 4:
printf("星期四\n");
case 5:
printf("星期五\n");
case 6:
printf("星期六\n");
case 7:
printf("星期七\n");
break;
}
}//在switch中 如果 遇不到 break这个语句,就会一直执行下去;
//现在输入2 就会从case2一直执行到break所在位置;所以我们优化一下;
#include<stdio.h>
int main()
{
int day = 0;
switch(day)
{
case 1:
printf("星期一\n");
break;
case 2:
printf("星期二\n");
break;
case 3:
printf("星期三\n");
break;
case 4:
printf("星期四\n");
break;
case 5:
printf("星期五\n");
break;
case 6:
printf("星期六\n");
break;
case 7:
printf("星期七\n");
break;
}
return 0;
}//这样写来表达我们想要的代码
//当我们的case语句中没有case语句被执行时,我们可以加上一个default语句;
//每一个switch语句中只能有一个default语句,当没有case语句执行时就会执行default语句;
3 循环语句
while循环
for循环
3.1do while循环
在我的博客 初识C语言main开始的地方 就讲过了 while循环和for循环的结构;
这里我们就跳过,讲do while循环的结构和break,continue在循环中的作用;
在我们需要先执行至少一次代码时就可以使用do while循环,它是先执行,再判断是否需要循环;
下面是它的结构
#include<stdio.h>
int main()
{
do
{
语句;
}while(表达式);
return 0;
}
用法和while一样,只不过它至少执行一次,再判断循环;
3.2break语句 和 continue语句
在循环中如果达到了某种条件我们就不想让循环继续下去,而是跳出循环就可以使用break语句;
//break 代码实例
#include <stdio.h>
int main()
{
int i = 1;
while(i<=10)
{
if(i == 5)
break;
printf("%d\n",i);
i=i+1;
}
return 0;
}
//1 2 3 4 代码执行完结果是1234而不是其他的;当i=5是就break跳出循环;
//1 2 3 4 5
//1 2 3 4 5 6 7 8 9 10
//1 2 3 4 6 7 8 9 10
总结:
break在while循环中的作用:
其实在循环中只要遇到break,就停止后期的所有的循环,直接终止循环。
所以:while中的break是用于永久终止循环的。
而对于continue来说,就不是跳出循环了;
#include<stdio.h>
int main()
{
int i = 1;
while(i<=10)
{
i=i+1;
if(i==5)
continue;
printf("%d",i);
}
return 0;
}
//这次代码的答案是多少??
//是 2 3 4 6 7 8 9 10;
//continue执行时是终止本次循环,直接跳转到switch判断的部分进行下一次循环;
//也就是说continue执行时,continue后面的代码不会再执行;
break和continue在for循环中的意义是一样的;
接下来,敬请期待,很有用!