7、各种语句

两种分支语句

1、 if…else 语句
注意的点:
(1)else不独立存在,总与它最近的 if 相匹配
(2)变量与 0 比较,0应该出现在比较符号左边。
(3)float 型变量不能直接进行 0 值比较,需要定义精度

2、switch…case语句(单值多分支)
语法规则:

switch (expression)
{                       //别忘记大括号
case CONST_1:
	//code1;
	break;
case CONST_2:
	//code2;
	break;
	...
default:
	code break;
	break;
}

注:case 语句中的值只能是整型或者字符型,并且是常量。不可能出现case 1.5:这类的语句。

3、两种语句的相互转换(实现相同的功能)

#include <stdio.h>
void f1(int i)
{
	if (i < 6)
	{
		printf("failed\n");
	}
	else if((i>=6)&&(i<=9))
	{
		printf("good\n");
	}
	else
	{
		printf("perfect\n");
	}
	switch (i < 6)
	{
	case 1:
		printf("failed\n");
		break;
	default:
	{
		switch ((i >= 6) && (i <= 9))
		{
		case 1:
			printf("good\n");
			break;
		default:
			printf("perfect\n");
			break;
		}
	}
	break;

	}
}

void f2(char c)
{
	switch(c)
	{ 
	//case 1.5:   error
	//	printf("failed\n");
	//	break;
	case 'c':
		printf("compile\n");
		break;
	case 'd':
		printf("debug\n");
		break;
	case 'o':
		printf("object\n");
		break;
	case 'r':
		printf("run\n");
		break;
	default:
		printf("unknow\n");
		break;

	}
	if ('c' == c)
	{
		printf("compile\n");
	}
	else if ('d' == c)
	{
		printf("debug\n");
	}
	else if ('o' == c)
	{
		printf("object\n");
	}
	else if ('r' == c)
	{
		printf("run\n");
	}
	else
	{
		printf("unknow\n");
	}
}
int main()
{
	f1(1);
	f1(8);
	f1(10);
	printf("\n");
	f2('c');
	f2('d');
	f2('o');
	f2('r');
	f2('e');
	return 0;
}

在这里插入图片描述

循环语句
while:先判断后执行
do…while:先执行后判断(至少执行一次循环体)
for:先判断后执行,比 while 语句更简洁

break 和 continue的区别(break 比 continue 更暴力)
break 表示终止循环。
continue 表示终止本次循环,进入下次循环。
在switch…case… 语句中 continue 不能用来代替 break,因为 continue 表示的是终止本次循环,进入下一次循环体,而 switch…case… 是分支语句,并不是循环语句。

do…while 结合 break 有妙用
潜规则:不用 goto 语句

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值