从零开始学习C语言(2)

5. 分支语句

C语言实现选择语句:

1.if else  

2.switch

以下是一个if语句的例子。

满足if的条件就执行下面的表达式,如果不满足,就执行else下的表达式。

#define _CRT_SECURE_NO_WARNINGS
#include <stdio.h>
​
int main()
{
    int input = 0;
    printf("现在大三\n");
    printf("要好好学习吗?(0/1)");
    scanf("%d", &input);
    if (input == 1)
    {
        printf("好offer\n");
    }
    else
    {
        printf("作田");
    }
    return 0;
}

Switch语句的格式为:

switch()

{

case 1:

表达式

case 2:

表达式

case 3:

表达式

}

需要注意的是,Switch语句在选择好入口后,会从这个入口按照顺序一直执行下去。因此想要执行完某个表达式之后不想继续,可以使用 break 退出语句。另外,如果都不满足入口条件,可以使用 default 输出。

这是一个判断输入数字除以3余数是多少的例子:

#include <stdio.h>
int main()
{
    int num = 0;
	scanf("%d", &num);
	int a = (num % 3);
	switch (a)
	{
	case 1:
		printf("余数是1\n");
		break;  // 如果不加break,则会一直讲后面的printf()全部输出
	case 2:
		printf("余数是2\n");
		break;
	case 0:
		printf("余数是0\n");
		break;
	}
	return 0;
}

6. 循环语句

C语言实现循环语句:

  • while

  • for

  • do ... while

均以输出1~10的整数为例

 while 语句的基本格式为:

while()    括号中通常为需要满足的条件

{

        需要自己设置变量的初始值,取值范围,以及变化情况

}

#include <stdio.h>
int main()
{
	int i = 1;
	while (i <= 10)  // 满足条件则可以进入循环体,不满足即退出
	{
		printf("%d", i);
		i++;  // 即i = i + 1
	}
	return 0;
}

for 语句的基本格式为:

for ( 变量初始值; 取值范围; 变量变化情况)

{

        相比while,for对于变量的描述更加简洁明了

}

#include <stdio.h>
int main()
{
	for (i = 1; i <= 10; i++)  // 一定要用;相连
    {
        printf("%d", i);
    }
	return 0;
}

do while 语句的基本格式

do

{

        

}while();

它的执行流程是先执行一次循环体中的语句,然后再检查循环条件是否成立,如果成立则继续执行循环体,否则跳出循环。与while循环和for循环不同的是,do while循环保证了循环体至少被执行一次。

#include <stdio.h>
int main()
{
	int num = 1;
	do
	{
		printf("%d", num);
		num++;
	} while (num <= 10);
	return 0;
}

 7. break 和 continue

通常使用在循环语句中,用于跳出循环或者跳过执行体部分

break  的使用

相比于上个例子,满足条件会运行break后会跳出循环,因此最后输出的结果是1234

#include <stdio.h>
int main()
{
	int i = 1;
	while (i <= 10)
	{
		if (i == 5)
			break;  // break会直接跳出循环,程序将不会执行后续的循环
		printf("%d", i);
		i++;
	}
	return 0;
}

 continue 的使用

continue会跳过本身后的所有部分,直接回到判断体部分,因此这个例子输出的结果为1234_

其中最后_为光标,表示后续死循环。如果想要只跳过i == 5的部分,可以将 i++ 放在continue语句之前,才可以继续执行下去。

#include <stdio.h>
int main()
{
	int i = 1;
	while (i <= 10)
	{
		if (i == 5)
			continue;  // continue会跳过本次循环的后续部分,直接跳转到判断部分
		printf("%d", i);
		i++;  // 由于这里i++在continue后面,所以continue执行后不被执行,导致死循环
	}
	return 0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值