c语言分支语句和循环语句

一,分支语句

面对一个个分支和选择,我们就会用到两种分支语句

if

语法结构:

  • 单分支:
    if (条件)
            结果1
    else
            结果2
  • 多分支
    if(条件1)
           结果1
    else if(条件2)
           结果2
    else
           结果3
    多分支可以一直叠加else if

注意事项:

  1. if,else,else后最好加大括号{},这样可以有效区分代码块
  2. else和if的匹配为就近原则
  3. 书写条件时
    =赋值
    ==等于
    在if函数中,如果需要在条件式中用到等于号,记得是==

switch

switch这种分支函数一般用于多分支情况

语法结构:

switch(整形)

{

        case 整形1:语句1;break;

        case 整形2:语句2;break;

        case 整形3:语句3;break;

        .............(可以继续叠加)

}

!!!括号中只能放整形和枚举类型,不能放浮点型

也有多条件对应一结果,为了方便,可以这样写

switch(整形)

{

        case 整形1:

        case 整形2:

        case 整形3:语句1;break;

        case 整形4:

        case 整形5:

        case 整形6:语句2;break;

        .............(可以继续叠加)

}

break:

相信大家都注意到了,语句中每种情况后会跟一个break,它是为了在达成一种情况后,及时跳出分支,避免执行后面的语句

举例说明:

int input=0;
scanf("%d", &input);
switch (input)

{

case 1:printf("hello");

case 2:printf("world");

}

我们为input赋值为1,本应该输出hello,但是本应该是case 2的结果也跟在了后面,这就是没有在一个语句后break导致后面的分支也一起被顺下来了。

但是我们为input赋值2,结果正确输出了world,因为2后面没有分支了,switch正常结束了

下面我们书写正确例子

int input=0;
scanf("%d", &input);
switch (input)

{

case 1:printf("hello"); break;

case 2:printf("world"); break;

}

default:

如果出现不匹配所有case的情况怎么办呢?

就可以用到default,包括所有非case情况

switch(input)

{

        case 1:语句1;break;

        case 2:语句2;break;

        case 3:语句3;break;

        default:语句4;break;

}

二,循环语句

不达条件不结束循环

只要在条件内一直循环

while

语法结构:

while(表达式)

        循环语句;

break和continue:

  • break:结束循环
    无论后面还有多少次循环,break一出,当地跳出
    一般与条件语句连用
    比如满足一个条件,就会执行break语句彻底跳出循环
  • continue:结束本次循环
    跳出本次循环,执行下次循环

for

for循环一般用于,知道条件范围

语法结构:

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

表达式1:初始化

表达式2:条件判断

表达式3:调整

举例说明:

int i = 0;
for (i = 1; i <= 100; i++)
{
	printf("%d ", i);
}

结果:

break和continue:(同上)

  • break:结束循环
    无论后面还有多少次循环,break一出,当地跳出
    一般与条件语句连用
    比如满足一个条件,就会执行break语句彻底跳出循环
  • continue:结束本次循环
    跳出本次循环,执行下次循环

do  while

语法结构:

do

{

        循环语句;

}while(表达式);

和while不同的是,while在当前循环的首部判断是否执行循环,do while在上次循环的尾部判断是否执行下次循环

特点:至少执行一次(因为它在尾部判断条件)

break和continue:(同上)

  • break:结束循环
    无论后面还有多少次循环,break一出,当地跳出
    一般与条件语句连用
    比如满足一个条件,就会执行break语句彻底跳出循环
  • continue:结束本次循环
    跳出本次循环,执行下次循环

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值