循环控制(3/3)

转移语句

goto语句

goto语句:可以是程序跳转到函数内部任意一条可执行语句处。

goto 标识符;

goto关键字后带一个标识符,该标识符是函数内部某条语句的标号。标号可出现在任何可执行语句处。

跳转的方向可向前,也可以向后;可以跳出一个循环,也可以跳入一个循环 

int main()
{
	int step;
	int select;
	for (step = 1; step < 10; step++)
	{
		printf("步骤号:%d\n", step);
		do
		{
			printf("请输入选择一个序号:\n");
			printf("(0是退出,99是下一步)\n");
			scanf("%d", &select);
			if (select == 0)
			{
				goto exit;
			}
		} while (select != 99);
	}
exit:
	printf("退出程序!\n");
	return 0;
}

     

(1)程序运行,外层for循环,输出步骤为1,输入数字,0表示退出,99表示下一步;

(2)do...while语句判断输入,条件为真,则句需执行do...while循环,条件为假,循环结束并执行for循环的下一步。

(3)如果输入为0,则执行if语句,执行其中goto语句进行跳转,其中exit为标识符。循环外部使用“exit:”表示goto跳转位置,输出“退出程序”。

break语句 

break语句:用于提前终止循环并跳出当前循环,然后继续执行下面的语句。

break;

再循环控制(1/3)循环控制(1/3)-CSDN博客中我们提到如果将if语句变为while语句,会将我们的程序一直输出下去,我们该如何停止呢?

int main()
{
	while (1)
	{
		printf("haha\n");
		goto exit;
	}
exit:
	printf("不嘻嘻");
	return 0;
}

除了利用上面的goto语句跳出循环,还可以利用break语句。

int main()
{
	while (1)
	{
		printf("haha\n");
		break;
		
	}
	return 0;
}

 break语句不能用于除循环语句和switch语句之外的任何其他语句中。

循环体中的break语句和switch...case分支结构中的break语句是不同的。

区别:

switch语句中,break的作用是跳出switch语句。

循环体中,break的作用是终止并跳出当前循环。 

continue语句

continue语句:结束本次循环,返回到循环头部继续执行,并不跳出循环。

continue;

break语句和continue语句的区别:

break语句,结束整个循环过程,不在判断执行循环条件是否成立;

continue语句,结束本次循环,而不终止整个循环的执行。

int main()
{
	int count;
	for (count = 1; count < 10; count++)
	{
		if (count == 5)
		{
			printf("在这里休息一下\n");
				break;                     //跳出循环
		}
		printf("这个数是:%d\n", count);
	}
	return 0;
}

 

int main()
{
	int count;
	for (count = 1; count < 10; count++)
	{
		if (count == 5)
		{
			printf("在这里休息一下\n");
			continue;                     //跳出本次循环
		}
		printf("这个数是:%d\n", count);
	}
	return 0;
}

总结:

1. goto语句:可以是程序跳转到函数内部任意一条可执行语句处。

2.break语句:用于提前终止循环并跳出当前循环,然后继续执行下面的语句。

3. continue语句:结束本次循环,返回到循环头部继续执行,并不跳出循环。

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值