C语言是程序设计语言,主要由三种基本的结构:
1.顺序结构;
2.条件结构;
3.循环结构;
分支结构就是条件结构(个人理解,刚学不太清楚);
分支结构就是根据某个情况去判断,根据结构去执行一定的语句,我理解为单分支,双分支和多分支;
1.单分支就是if(表达式)语句或者if(表达式){语句}
判断表达式内的值如果为真就执行语句,为假不执行语句;下列是两个例子:
就如此图所示判断的表达式为真所以执行语句,给i重新发了值;
这个图上表达式的值就是假,后面的语句就无需计算
2.双分支if(表达式)语句1....else语句二
判断表达式的值如果为真执行语句一如果为假执行语句二;下列是两个例子:
这个图上表达式为真所以执行语句一,输出值为真。这个图上表达式为假所以执行语句二,输出值为假。
3.多分支我将多分支理解为switch语句加if()else if()else.....
我认为这两种都是算多分支语句其中if()else if()else跟上面两个比较相像就不举例子了,等同于多个if...else嵌套(tips:else总是与他之前最近的一个未配对的if对应)
switch语句的结构是switch(一个整形表达){case (一个整形常量):语句 default:语句}大概的结构就是这样可以有很多的case 但是default只能有一个,case 后面跟的的必须是整形常量,switch里的判断语句必须是整形表达式(表达式包括常量,变量)。看看下面这个图片:
上面的图输入一个3,i赋值一个3,判断switch语句的表达式i,为3,跳转到case:3那条语句,我们的本意是输出wednesday,可switch语句是从判断到哪条语句然后一直运行下去直到语句结束或者遇到break,上图的运行结果为:如图所示,他输出了case:3这个条语句和后面的所有语句,这样输出一般都不是自己想要的,按照我们输入一个3,想要得到的就是一个wednesday,我们这里就可以用到一个关键字break,break:中断语句,跳出循环,在switch中使用跳出switch语句,在循环中使用跳出包括他的一层循环;下图我们给每种情况加上break试试 如图所示:加上break这个关键字就可以符合我们的想法得到wednesday,因为加上break可以跳出switch语句后面的情况一概不算;如果输入的不是我们想让他输入的一到六会发生什么呢?如上图所示switch判断语句跟switch语句包括的任何情况都不匹配,所以直接结束switch语句,我们知道有一个defluat的关键字,他的意思是不履行(英文意思)我们可以按照这个来记住,defluat就是switch在下面没有匹配的情况后就会与switch匹配,如图所示:
如图所示输入一个7找不到与之配对的情况,运行default语句
(小tips)default语句可以放在switch语句的任何位置,不一定居于语句头或尾,case后面跟的整形常量也不用按照顺序,可以顺便编排按照需求。
以上是我个人理解如有错误请求告知且原谅,谢谢!!!