《选择》比努力更重要——C语言

简介: 《选择》比努力更重要——C语言

前言:


 人生是由一个个选择组成的,所谓选择,就是一道分叉路口。让我们就来学习一下计算机中的选择结构吧。


1.语句



 语句相当于我们说的一句话。一句话用句号来结尾,语句用分号来结尾。了解一下一些基本的分类,我们开讲,if语句,if else语句和switch语句。


2.选择语句


2.1小栗子


  在这里面,我们创建了一个名为choose的整型变量,用scanf来给choose输入值,if后面的判断部分,i == 1的意思是,i等不等于1?。==是一个判断是否相等的符号,我们叫它为关系操作符。


 如果i等于1,符合条件,进入if的语句,不然就进入else的语句里面。


 既然看到了这个东西,那就说明读者们都和博主一样决定好好学习编程,那就冲吧!


 补充:复合语句



2.2选择结构


 我们前面为choose输入1的时候,choose == 1是符合条件的,然后编译器让这个表达式的值为1,在计算机中非0的数都是真,语句就执行。


 先来讲个小故事吧,有关else和else if的~~~。



 看完博主相信读者懂了!


3.误导性else



 我们看到右边控制台窗口,什么都没有打印。如果我们看代码,首先a==15是不符合条件的,所以我们会说,if控制的if语句不执行,执行else语句,打印hehe。


 于是你ctrl+f5将程序运行起来,看到了个寂寞。这是为什么呢?因为else根本不是和if(a == 15)匹配的,是和if(b == 15)匹配的。也就是说,if(a == 15)控制的语句是 if else一整个语句,所以当if(a == 15)判断条件不成立,就什么都没有咯。这时我们说这段代码有误导性,不利于阅读,我们可以进行以下这样的修改。



 涉及的知识点是else会与离得最近的还没有匹配的if进行匹配。


3.1写法上的可读性和代码的稳健性:


 第一种写法,把{放在了判断条件后面,相比于第二种写法,更逊点。


 还有就是判断部分,a == 5 和 5 == a是有什么讲究在里面吗?答案是有的,这是防止我们在判断一个变量是否等于一个数的时候由两个=,误写成了一个=。由于我们惯性思维,以为判断相等就写成了一个等号,但这在计算计中是赋值的操作,判断相等是==。


 那为什么可以防止呢?因为我们怕错嘛,习惯这样写5 == a,有一次我们写成了这样5 = a,这个时候,编译器就报错了,因为我们把一个变量值赋给了常量,常量不能被改变,而变量才可以被改变。所以我们要是不小心这样写了a = 5,那跑出来的结果不言而喻,肯定是有出入的。


 在判断相等的时候,常量放在左边,变量放在右边,等号要写两个!


3.2一些练习

1.判断奇偶



2.打印1-100之间的奇数



2-1.



4.switch选择语句



 因为把break;单独放在一行上屏幕显示不全代码,所以我把break;放在printf同行上了,不过这样也还可以接受,代码也没错的。


 我们输入1,switch接入到case 1;,打印完星期一后遇到break;跳出switch语句。  



 case入口里的代码没有break的话,是无法成为单独的一个分支的,因为它会“滑”落,也许给个图大家就明白了。



 break是实现case语句分支的关键字。



 我们这里输入8,然而没有任何一个标签是8,如果我们设有default的话,那就走默认情况啦。好的编程习惯就是要加上defualt,并且每一种情况加上break,当然break不是一定要加。就像我们前面输入1、2、3、4、5都是输入工作日一样,就没必要加上break,加上反而要多加语句printf到相应的case下面,所以应该视情况而定。


4.1嵌套的switch


  n是1进入case 1;然后case 1 里面有个switch(m),m是2,走了switch(m)的case 2情况,然后自然出内部switch,switch(n)的case 1结尾并没有break,那么就“滑”落,滑到了default,我们就看到屏幕上的内容啦。


 好啦,这就是这节循环所讲的全部内容啦。尽力认真做好每一个选择,有舍才有得,做减法并不可惜,因为,那是在为更好的事情准备着!


结语:希望读者读完有所收获!在学C的路上,祝福我们能越来越C!✔


 读者对本文不理解的地方,或是发现文章在内容上有误等,请在下方评论区留言告诉博主哟~,也可以对博主提出一些文章改进的建议,感激不尽!最后的最后!


 ❤求点赞,求关注,你的点赞是我更新的动力,一起努力进步吧。

相关文章
|
6月前
|
搜索推荐 程序员 C语言
C语言的总结与感悟
C语言的总结与感悟
201 0
|
8天前
|
C语言
C语言的攻克之路
C语言的攻克之路
|
8天前
|
算法 Unix 编译器
C语言的发展及其特点
C语言是一种广泛使用的计算机编程语言,它的起源可以追溯到20世纪70年代。作为计算机编程领域的一颗璀璨明星,C语言的发展经历了多个阶段,并在各个领域中发挥着举足轻重的作用
16 0
|
8月前
|
自然语言处理 Unix Java
C语言的发展及特点
C语言的发展及特点
76 0
|
C语言
阶段性总结 | C语言
阶段性总结 | C语言
72 0
阶段性总结 | C语言
|
存储 编译器 C语言
【C初阶】第一篇——初识C语言(万字篇,带你敲响C语言的大门)(二)
【C初阶】第一篇——初识C语言(万字篇,带你敲响C语言的大门)
【C初阶】第一篇——初识C语言(万字篇,带你敲响C语言的大门)(二)
|
存储 Java C语言
【C初阶】第一篇——初识C语言(万字篇,带你敲响C语言的大门)(一)
【C初阶】第一篇——初识C语言(万字篇,带你敲响C语言的大门)
【C初阶】第一篇——初识C语言(万字篇,带你敲响C语言的大门)(一)
|
程序员 C语言
程序员之路:C语言中的字符串
程序员之路:C语言中的字符串
122 0
程序员之路:C语言中的字符串
|
程序员 C语言
程序员之路:C语言数组_
程序员之路:C语言数组_
|
设计模式 网络协议 算法
这才是你需要的C语言、C++学习路线!(下)
关于C语言和C++的学习路线终于梳理完了。当然我也只能从我曾经近3年的通信公司后台开发经历和目之所及的世界,跟大家聊聊这个话题。
187 0