分支与循环语句

  1. 控制语句分为九种语句。

可分成以下三类:

  • 条件判断语句也叫分支语句:if语句、switch语句;
  • 循环执行语句:do while语句、while语句、for语句;
  • 转向语句:break语句、goto语句、continue语句、return语句。
  1. 选择语句(判断语句)

if语句

  • 格式:if(表达式)

语句1;

else

语句2;

当表达式的值为非0的时候(为真),执行语句1,否则结果为0(为假),执行else的语句2。

  • 正常情况下语句1和语句2并不是只有一条语句,而是有多条语句。

多条用花括号({})括起来,当做一条语句1或者语句2;

  • 注意;else总是和离它最近的且还未和其他else配对的if语句

例如:

以下是正确的配对方式

  • 不能混淆==和=

==(双等号)是判断是否相等,=是赋值

  • 条件表达式

格式: 表达式1?表达式2:表达式3

代表的是如果表达式1为真,执行表达式2,为假,执行表达式3.

switch语句

  • 格式:

switch(整型表达式)

{

  case 整形常量表达式:

  语句;

}

  • 正常情况下,我们不能利用完成真正的分支,所以我们用break加载case语句后面来实现真正的分支;

我们也可以将几个case合起来,共用一条语句,来节省代码

  • 如果表达的值与所有的case标签的值都不匹配怎么办?

当 switch 表达式的值并不匹配所有 case 标签的值时,这个 default 子句后面的语句就会执行。

所以,每个switch语句中只能出现一条default子句。

但是它可以出现在语句列表的任何位置,而且语句流会像执行一个case标签一样执行default子句。

  1. 循环语句

while语句

  • 格式:

while(表达式)

循环语句;

  • continue在while循环中的作用就是:

continue是用于终止本次循环的,也就是本次循环中continue后边的代码不会再执行,

而是直接跳转到while语句的判断部分。进行下一次循环的入口判断。

  • 例:二分查找法

for语句

  • for(表达式1; 表达式2; 表达式3)

循环语句;

表达式1

表达式1为初始化部分,用于初始化循环变量的。

表达式2

表达式2为条件判断部分,用于判断循环时候终止。

表达式3

表达式3为调整部分,用于循环条件的调整

  • 例:

#include

int main()

{

char arr1[] = "welcome to bit...";

char arr2[] = "#################";

int left = 0;

int right = strlen(arr1)-1;

printf("%s\n", arr2);

for (left=0, right=strlen(src)-1;

  left

  left++, right--)

 {

  Sleep(1000);这个是window下的函数参数,单位是毫秒。

  arr2[left] = arr1[left];

arr2[right] = arr1[right];

    printf( "%s\n", target);

 }

retutn 0;

}

do while语句

  • do

循环语句;

while(表达式);

循环语句的话,如果不只有一条的时候,需要用花括号括起来

  • i++在continue的后面,导致成为死循环。

break和continue语句

  • break语句是跳出这一轮循环。
  • continue语句是跳过这一次循环,后面的几次继续,但容易出现死循环,会有不同结果,如果注意continue语句和循环语句之间的位置关系。

猜数字游戏实现(折半查找算法)

例:

rand是生成随机值的函数,头文件是#include 。time(null)是时间函数,头文件是time.h,time函数的括号中需要放一个指针,利用null空指针,来

形成一个一直变化的时间戳,来一直改变随机值的值。rand还需要先引用一个srand函数。

  • 11
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 5
    评论
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

学IT的小卢

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值