C/C++条件语句

C/C++条件语句

C/C++的条件语句有几种,以下将介绍它们:
第一种是if语句,格式为:

if(/判断条件/){
//执行代码 1
}

if语句的结构很简单,但是只能根据单一的条件进行判断,我们可以在if语句进行扩充。代码如下:

if(/判断条件1/){
//执行代码 1
}
else if(/判断条件2/){
//执行代码 2
}

其中代码运行时,会先判断条件1,决定是否执行代码1,如果判断条件1为假,则判断条件2是否为真,如果为真,则执行代码2。值得注意的是,这里如果在条件1判断为真,那么不论条件2成不成立,都不会执行代码2。代码如下:

int i=5,j=4;
if(i==5)
{
printf(“Yes.\n”);
}

else if(j==4){
printf(“No.\n”);
}

上述代码的输出结果为Yes.
然而这样的代码一旦分支过多,就会显得十分冗余。比如,我们想通过Day变量来打印今天是星期几:

int Day;
	if(Day==1) printf("Monday.\n");
	else if(Day==2) printf("Tuesday.\n");
	else if(Day==3) printf("Wensday.\n");
	else if(Day==4) printf("Thursday.\n");
	else if(Day==5) printf("Friday.\n");
	else if(Day==6) printf("Saturday.\n");
	else printf("Sunday.\n");

上面的代码因为有七个分支,就要写5个else if,十分麻烦。
根据if-else if的格式,我们可以用switch语句来简洁的写出如下等价代码:

int Day;
	switch(Day){
		case 1:printf("Monday.\n");break;
		case 2:printf("Tuesday.\n");break;
		case 3:printf("Wensday.\n");break;
		case 4:printf("Thursday.\n");break;
		case 5:printf("Friday.\n");break;
		case 6:printf("Saturday.\n");break;
		default:printf("Sunday.\n");
	}

在switch语句中,括号中表达式,计算表达式并与之后的case进行比较,如果相等则从该选项开始执行语句。如果都没有,则从default这个语句开始执行。因为一旦执行,就会顺序执行代码,所以要记得加上break;除非你想这样做。
比如:

int Day=1;
	switch(Day){
		case 1:printf("Monday.\n");
		case 2:printf("Tuesday.\n");
		case 3:printf("Wensday.\n");
		case 4:printf("Thursday.\n");
		case 5:printf("Friday.\n");
		case 6:printf("Saturday.\n");
		default:printf("Sunday.\n");
	}

输出结果为:

Monday.
Tuesday.
Wensday.
Thursday.
Friday.
Saturday.
Sunday.

  • 4
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值