分支和循环(1)

重新学习C语言,有什么错误的点,望看到的大神指正一下,谢谢谢!


前言


一、分支语句和循环语句是什么?

分支语句(也叫条件判断语句):if语句、switch语句

循环语句用于重复执行某条语句(循环体)的语句:for语句,while语句,do while语句。

二、代码实例

1.分支语句

1.1 if语句

代码如下:

#include <stdio.h>
int main()
{
	int age;
	scanf("%d", &age);
	if (age < 18)
	{
		printf("未成年\n");
		printf("不能谈恋爱!\n");
	}
	else if (age >= 18 && age < 28)
	{
		printf("青年\n");


	}
	else if (age >= 28 && age < 45)
	{
		printf("中年\n");
	}
	else
	{
		printf("老年\n");
	}
	//else与最近的if匹配
	return 0;
}

 

1.2 switch语句

格式:switch(整型变量)

//今天星期几?
#include <stdio.h>
int main()
{
	int day;//定义成整型
	scanf("%d", &day);
	switch (day)//switch语句适合多分支的语句,用的整型
	{
		case 1://case表示入口,与day整型保持一致
			printf("今天星期一\n");
			break;//break表示出口
		case 2:
			printf("今天星期二\n");
			break;
		case 3:
			printf("今天星期三\n");
			break;
		case 4:
			printf("今天星期四\n");
			break;
		case 5:
			printf("今天星期五\n");
			break;
		case 6:
			printf("今天星期六\n");
			break;
		case 7:
			printf("今天星期天\n");
			break;
	}
	return 0;
}
//今天是工作日吗?
#include<stdio.h>
int main()
{
	int day;
	scanf("%d", &day);
	switch (day)
	{
		case 1:
		case 2:
		case 3:
		case 4:
		case 5:
			printf("工作日\n");
			break;//不是所有时候都需要break!!!
		case 6:
		case 7:
			printf("休息日\n");
			break;
		default ://处理非法,没有顺序一说,可以放在switch语句中任意位置
			printf("输入错误");
			break;
	}
	return 0;
}

 易错例题:输出m和n的值

#include <stdio.h>
int main()
{
	int n = 1, m = 2;
	switch (n)
	{
		case 1:
			m++;
		case 2:
			n++;
		case 3:
			switch (n)//允许switch嵌套使用
			{
				case 1:
					n++;
				case 2:
					m++;
					n++;
					break;//break用于跳出一个循环体或者完全结束一个循环,
					//不仅可以结束其所在的循环,还可结束其外层循环。

			}
		case 4:
			m++;
			break;
		default :
			break;
	}
	printf("m=%d n=%d", m, n);
	return 0;
}
 2.循环语句

2.2 while循环语句

//输出1-100之间的奇数
#include <stdio.h>
int main()
{
	int num = 1;

	while (num <= 100)//while循环语句
	{
		if (num % 2 == 1)
		{
			printf("%d ", num);
		}
		num++;
	}
	return 0;
}
 特别区别:break和contiune

(在屏幕上打出1-10)

break可以在循环体和switch语句中使用
continue只能在循环体内使用

break语句:跳出一个循环体或者结束一个循环,永久终止

#include <stdio.h>
int main()
{
	int i = 1;
	while (i <= 10)
	{

		if (i == 5)
			break;//跳出一个循环体或者结束一个循环,永久终止
		printf("%d ", i);
		i++;
	}
	return 0;
}

 continue语句:跳过本次循环,直接开始下一次循环,本次终止

#include <stdio.h>
int main()
{
	int i = 1;
	while (i <= 10)
	{

		if (i == 5)
			continue;//跳过本次循环,直接开始下一次循环,本次终止
		printf("%d ", i);
		i++;
	}
	return 0;
}
 

总结

这次学习中讲到的主要是分支语句的用法和循环语句中while语句的部分用法。

特别注意:if语句中else与最近的if连用;break终止整个循环体而continue只是跳过当前循环,进入下一个循环。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值