从这里开始,就要开始真正进入C语言,深入的学习它
内容概述
1.分支语句
1.1 if
1.2 switch
1.3 A? B:C
2.循环语句
2.1 while
2.2 for
2.3 do...while
3.goto语句
1.分支语句(条件判断语句)
1.1 if语句
if语句就是选择型的语句
其局势结构如下
if(//判断语句)
{
//条件成立执行语句
}
else
{
//条件不成立执行语句
}
这是最基础的if语句,在这里面会先进行判断,在选择进去哪个执行框
用一段代码来看就是
int a=3,b=4;
if(a+b>1)
{
printf("hei hei\n");
}
else
{
printf("haha\n");
}
在这里,a+b大于1,所以打印haha
if语句还有变形,如
if()
{
}
else if
{
}
else
{
}
这段代码就进行了多重判断
注意:1.if语句里面else会与最近的if匹配
2.if语句里面如果不加{},则会执行下面的一个语句
这里留两个练习
switch(//常量表达式)
{
case ://常量表达式
break;
case ://常量表达式
break;
case ://常量表达式
break;
default ://常量表达式
//这里因为default是在最后一行的,所以break可加可不加
}
if(A)
{
B;
}
else
{
C;
}
while(//循环判断语句)
{
执行语句
}
执行的结构图如下:
我们想在屏幕上打印1-10,就不用一个数字一个数字的打印了,就可以用循环来打印
int main()
{
int i = 1;
while(i<=10)
{
printf("%d ", i);
i = i+1;
}
return 0; }
讲过了while的基础语句,再来讨论下break和continue语句在while中的运用
2.1.1break在while循环的运用
break语句是终止的意思,在前面switch语句中我们也见识过,它的作用用一段代码来看
int main()
{
int i = 1;
while(i<=10)
{
printf("%d ", i);
i = i+1;
if(i==5)
break;
}
return 0; }
在这段代码里面,就不会打印1-10了,就会打印1-5,就通过break跳出了
2.1.2continue语句在while循环中的运用
continue语句在while循环中,作用结束是本次循环,看一段代码
#include <stdio.h>
int main()
{
int i = 1;
while(i<=10)
{
if(i == 5)
continue;
printf("%d ", i);
i = i+1;
}
return 0; }
这里会打印1 2 3 4 5 5 5 5 5 5 5死循环,因为continue的作用是结束本次循环,i++就没有执行,所以传刀上面的i还是5,就会一直打印5
2.2for循环
for循环的机理和while循环差不多,只不过是集中在一行写了
其结构如下
for(/*表达式1*/;/*判断表达式*/;/*修正表达式*/)
{
//执行语句
}
表达式一可以空着,也可以对变量进行初始化,分号后面是的判断表达式可以理解为while循环括号里面的东西修正表达式就是防止程序进入死循环的,让循环跑起来的语句
用for来写打印1-10就是
int main()
{
int i;
for(i=1;i<=10;i++)
{
printf("%d",i);
}
return 0;
}
可以看出来,代码行数明显比while少了很多
2.2.1break在for循环中的运用
break在for循环中的运用和while没有任何区别,可以参考while循环
2.2.2continue在for循环中的运用
continue在for循环中的运用和while循环就有区别了,
还是看一段代码
int main()
{
int i = 0;
for(i=1; i<=10; i++)
{
if(i == 5)
continue;
printf("%d ",i);
}
return 0; }
这段代码和上面while循环的代码很相似,他也是打印12345555..吗?
不是,在for循环中,continue结束本次循环之后,还是会执行修正语句,所以打印的应该是1 2 3 4 6 7 8 9 10,就这一点微妙的区别
2.3do...while语句
do...while语句和while语句比较相似,但是他会先执行依次循环
其结构如下
do
{
//循环体
}while(//判断语句)
他的执行流程如下
特点是:循环至少执行一次,使用的场景有限,所以不是经常使用。
do...while中continue和break的使用可以参照while语句,一摸一样
这就是循环和分支的介绍,后面我还会出一期猜数字游戏的介绍,也是运用循环和分支来完成的