🌹作者:云小逸
📝个人主页: 云小扬的主页
📝码云: 云小扬 (YunXiaoYang003) - Gitee.com
🤟motto:要敢于一个人默默的面对自己, ==强大自己才是核心==。不要等到什么都没有了,才下定决心去做。种一颗树,最好的时间是十年前,其次就是现在!学会自己和解,与过去和解,努力爱自己。==希望春天来之前,我们一起面朝大海,春暖花开==!🤟
👏专栏:C语言初阶👏专栏:C语言进阶👏专栏:数据结构和算法👏
👏专栏:C++初阶---👏专栏:C++进阶--👏专栏:Linux学习👏
@TOC
前言
上一次我们说完了初识C语言的知识点,今天我们就开启第二章——==分支语句和循环语句==。那么就由云小逸带你了解认识学习==分支语句和循环语句(1)==。
——————————————————————————————
首先先写上几句话:献给坚持创作的我和点开这篇文章希望进步的你
- 生活总是这样,不能叫人处处都满意。但我们还要热情地活下去。==人活一生,值得爱的东西很多==,不要因为一个不满意,就灰心。
- 没有一个人的生活道路是笔直的、没有岔道的。有些岔道口,譬如政治上的岔道口,事业上的岔道口,个人生活上的岔道口,你走错一步,可以影响人生的一个时期,也可以影响一生。
- 人在年轻时,最头疼的一件事就是决定自己这一生要做什么。
- 人生太长,我们怕寂寞,人生太短,我们怕来不及。
- 光勤劳是不够的,蚂蚁也非常勤劳。你在勤劳些什么呢?有两种过错是基本的,其他一切过错都由此而生:==急躁和懒惰==。
1.C语言是==结构化==的程序设计语言
C语言是一门结构化的程序设计语句,可以将其分为三种:顺序语句、选择语句、循环语句。如图:
正如我们汉语中的语句可以分为疑问句,反问句,排比句一样,C语言也可以划分为一下五种:
- 表达式语句
- 函数调用语句
- 控制语句
- 复合语句
- 空语句
这几节我们先来谈一谈:控制语句。
其中C语言中的控制语句可以分为三大类:
1.==条件判断语句(分支语句)==:if , switch
2.循环执行语句:do……while , while ,for
3.转向语句:break语句,goto语句,return语句 ,continue语句
2.分支语句(条件判断语句、选择语句)
(1)if语句
如果你好好学习,校招时拿一个==好offer==,==走上人生巅峰==。
如果你不学习,毕业等于失业,回家卖红薯。 这就是选择!
a if() { …… }
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
int main(void)
{
int a = 10;
if (3 == a)
printf("love!\n");
return 0;
}
注意两者差异的原因:第一张是判断是否==a等于3==,第二张是==赋值了a=3==,a非零则为真
如果你想避免第二种错误,这里推荐把它写成3==a,这样写如果忘加了一个等号编译器会报错,怎么样是不是很实用(^_−)☆
b if……else……
#include<stdio.h>
int main(void)
{
int age = 17;
if (age < 18)
printf("未成年!\n");
else
printf("成年了!\n");
return 0;
}
c if……else if……else……
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
int main(void)
{
int age = 17;
scanf("%d", &age);
if (age < 18)
printf("青少年\n");
else if (age >= 18 && age < 28)
printf("青年\n");
else if (age >= 28 && age < 40)
printf("中年\n");
else if (age >= 40 && age < 60)
printf("壮年\n");
else if (age >= 60 && age <= 100)
printf("老年\n");
else
printf("老寿星\n");
return 0;
}
d.悬空else
一道题帮助你理解悬空else:
**动一动你漂亮(帅气)的脑袋想一想,结果是什么?
如果你不确定结果是吗?那就请看下面这张图:**
**
哈哈结果是不是一目了然:**
如果还没有明白,也没关系,看下面这张图:
相信聪明的你肯定明白了吧ヾ(=・ω・=)o
这个例子告诉了我们两件事:
1.else是与最近的if相匹配。
2.好的代码习惯有助于我们更好更快的理解代码,所以说养成一个优秀的代码习惯是多么重要。过几天我会单独写一个博客说一说:优秀的代码习惯有哪些?以帮助我们更好的学习和未来的就业!
**if语句我们大致讲完了,这里推荐大家去写==两道题==去巩固一下:
1.判断一个数是否为奇数
2.输出1至100之间的奇数**
(2)switch语句
a.switch语句也是一种分支语句。常常用于多分支的情况。
比如下面这个例子:
输入1,输出星期一
输入2,输出星期二
输入3,输出星期三
输入4,输出星期四
输入5,输出星期五
输入6,输出星期六
输入7,输出星期日
**如果用if将会有多麻烦,我们想想便头皮发麻,且写出来结果不易观察和分析。
而用switch是超级简单的:**
#include <stdio.h>
int main()
{
int day = 0;
switch(day)
{
case 1:
printf("星期一\n");
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;
}
注:switch(表达式A)中表达式必须是==整型常量==表达式,可以是字符,因为字符属于整形家族,按ASCII码存储,其本质上是整形。
b.break在switch中的作用
如果不加上每一个case后break上面的例子将会出现这样的结果:
所以总结:break在switch中的作用是:==跳出,永久终止==。
c.switch的使用
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
int main(void)
{
int day = 3;
scanf("%d", &day);
switch (day)
{
case 1:
case 2:
case 3:
case 4:
case 5:
printf("weekday!\n");
break;
case 6:
case 7:
printf("weekend!\n");
break;
default:printf("error!\n"); break;
}
return 0;
}
default:printf("error!\n"); break;//这个的作用是如果输入大于7则报错!!!
举一个例子以便你的理解:
#define _CRT_SECURE_NO_WARNINGS 1
#include<stdio.h>
int main(void)
{
int n = 1, m = 2;
switch (n)
{
case 1:n++;
case 2:m++;
case 3:
switch (n)
{
case 1:n++;
case 2:m++; n++; break;
}
case 4:m++; break;
default:printf("error!\n"); break;
}
printf("%d %d", m, n);
return 0;
}
结果给各位大佬附上结果:
最后
十分感谢你可以耐着性子把它读完和我可以坚持写到这里,送几句话,对你,也对我:
- 没有人可以永远==无条件==的陪伴着你,要知道,下雨天的时候==连影子都会缺席==。
- 就是时光倒流,生命再一次重演,我选择的仍是这条同样的道路。
- 别为了那些不属于你的观众,去==演绎==不擅长的人生。
- 不如意事常八九,可与人言无二三。
- 我相信,那一切都是==种子==。只有经过埋葬,才有生机。
最后如果觉得我写的还不错,请不要忘记==点赞==✌,==收藏==✌,加==关注==✌哦(。・ω・。),所有代码均上传至云小逸的码云了,快去看看吧!
愿我们一起加油,奔向更美好的未来,愿我们从懵懵懂懂的一枚==菜鸟==逐渐成为==大佬==。加油,为自己点赞!