c语言循环小总结

switch

switch(/*这里必须是整型表达式*\)
{
	case 1:
		语句
	case 2:   		//注意这里的case后面必须是整型常量表达式
		语句
	
}
#include <stdio.h>
int main()
{
 	int n = 0;
 	scanf("%d", &n);
 	if(n%3 == 0)
 		printf("整除,余数为0\n");
 	
 	else if(n%3 == 1)
 		printf("余数是1\n");
 	
 	else
 		printf("余数是2\n");
	 
	 return 0;
}

如果使⽤switch语句改写,就可以是这样的:

#include <stdio.h>
int main()
{
	 int n = 0;
	 
	 scanf("%d", &n);
	 
 	 switch(n%3)
 {
 		case 0:
 			printf("整除,余数为0\n");  
 			//如果没有break就不会停止,假如输入0就会把case1、case2都会打印出来
 			break;
 		case 1:
			 printf("余数是1\n"); 
 			break;
 		case 2:
 			printf("余数是2\n"); 
 			break;
 		default:
 		//如果输入的不是我们想要的值就可以加入default语句提示用户一下
 			printf("输入错误");
 			break;
 }
 	return 0;
}
  1. case 和后边的数字之间必须有空格
  2. 每⼀个 case 语句中的代码执⾏完成后,需要加上 break ,才能跳出这个switch语句。
  3. 在switch 语句中 break 语句是⾮常重要的,能实现真正的分⽀效果。
  4. default在case语句中没有前后顺序放在哪里都可以,只不过放在最后好看点。

while

在这里插入图片描述
⾸先上来就是执⾏判断表达式,表达式的值为0,循环直接结束;表达式的值不为0,则执⾏循环语句,语句执⾏完后再继续判断,是否进⾏下⼀次判断。

	int a = 0;//初始化
	while()//括号里面是判断如果是真就执行下面,结果为假就不执行
{
	语句;	//注意如果不用大括号括起来只会执行第一条语句,a++会被忽视掉
	a++;	//调整值
}

for

for(初始化; 判断真假; 调整循环变量)
//  表达式1;表达式2;表达式3

⾸先执⾏ 表达式1 初始化循环变量,接下来就是执⾏ 表达式2 的判断部分, 表达式2 的结果如果
==0,则循环结束; 表达式2 的结果如果!=0则执⾏循环语句,循环语句执⾏完后,再去执⾏表 达式3 ,调整循环变量,然后再去 表达式2 的地⽅执⾏判断, 表达式2 的结果是否为0,决定循环是否继续。整个循环的过程中,表达式1初始化部分只被执⾏1次,剩下的就是表达式2、循环语句、表达式3在循环。

do while

#include <stdio.h>
int main()
{
 	int n = 0;
 	scanf("%d", &n);
 	int cnt = 0;
 	do
 {
 	n = n / 10;//语句
 } 
	 while (n);//括号里面的判断表达式
	 	printf("%d\n", cnt);
 	 return 0;
}
 {
 cnt++;

在 do while 循环中先执⾏“语句”,执⾏完语句,在去执⾏“判断表达式”,判断表达式的
结果是!=0,则继续循环,执⾏循环语句;判断表达式的结果==0,则循环结束。
所以在 do while 语句中循环体是⾄少执⾏⼀次的,这是 do while 循环⽐较特殊的地⽅
⼀般 do while 使⽤在循环体⾄少被执⾏⼀次的场景下,所以较少⼀些。

break和continue语句

在循环执⾏的过程中,如果某些状况发⽣的时候,需要提前终⽌循环,这是⾮常常⻅的现象。C语⾔中
提供了 break 和 continue 两个关键字,就是应该到循环中的。
• break 的作⽤是⽤于永久的终⽌循环,只要 break 被执⾏,直接就会跳出循环,继续往后执
⾏。
• continue 的作⽤是跳过本次循环 continue 后边的代码,在 for 循环和 while 循环中有所
差异的。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值