黑马程序员技术交流社区

标题: if和switch的基础笔记 [打印本页]

作者: MEIMEIAA    时间: 2015-8-23 21:12
标题: if和switch的基础笔记

if
一.if
       1. 格式:if (表达式/常量/变量) {     语句块       }
       2.原来:如果表达式为真就执行语句块里的内容,为假就不执行。

二.if-else-
     1.格式:if (表达式) {     
                        语句块  1   
                       }else{ 语句块2   }
       2.原理:如果表达式为真执行语句块1,表达式为假执行语句块2。
       3.注意:无论是真假都会执行一个语句块。
三.if-else-嵌套
     1.格式: if(表达式1){
                 语句块1
              }else  if(表达式2){
                 语句块2
              }else   if(表达式3){
                  语句块3
              }else{                    }
       2.原理:表达式1为真就是执行语句块1,如果1为假2为真就执行语句块2,1.2都为假3为真就执行语句块3以此类推。四.if 使用注意:
     1.空语句 :表达式后面没有任何要执行的语句。
         例:if (a==3);
      2.if之后的代码块,如果只有一个语句块的话可以省略大括号。
         例:if(a>3)
                 printf("a>2\n");
                 print("a>3\n");
         如果条件为真两句话都会打印,为假的话printf("a>2\n");这句话不会打印,是因为if后面省略了大括号,只影响一句话。
      3.永真永假式
         例:if (1) {                  }      
                大括号里永远执行。   
                if (0){                    }
                    大括号里永远不执行。
      4.if语句结合return语句。
         例:if (a==3)
                 return 0;
                 printf("a>3");
                 return语句之后的语句都不会执行,所以不会执行printf("a>3");这句话。
       5.if的作用域
         例:if(a==3){
                    int   no=10;
               }
               printf("no=%d",no);
              no 是打印不出来的,因为语句块相当于一个代码块,执行完会释放掉。

switch
一.switch
      1.格式:switch(表达式){
                     case  常量表达式1:语句块1
                     case  常量表达式2:语句块2
                     case  常量表达式n:语句块n
                     defauit  :语句n+1

        2.原理 :1)表达式的值逐个与其后的常量表达式的值相比较,当表达式的值与某个case后面的常量表达            式相等时,就执行该常量表达式后面的语句,然后不再进行判读,继续执行该语句后面所有case后的语句。
                       2)如果表达式和case后的常量表达式均不相等,就执行defauit的后面的语句。
二.case穿透问题     
          1.case穿透视:当执行某个case后面的语句之后,并没有结束,而是继续执行下面case后的语句。
          2.防止case穿透:在每一个case语句的后面加上一句“break”;。
            break作用:结束switch语句。三switch使用注意:
         1.switch表达式的类型
               1).可以是整型的变量
                      例:num=10;
                             switch(num)
               2).可以是整型的常量
                      例:switch(10)
               3).可以是返回值是整型的表达式
                      例:switch(5+5)
               4).可以是转换为int类型的表达式
         2.case后可以有多行语句,可以加括号,也可以省略括号。
         3.可以加break,也可以不加。
         4.case语句的注意
              1).case语句的格式:case  常量表达式:(空格和冒号不能省略)
              2).可以是常量
                    例:case  10:
              3).可以是常量表达式
                    例:case  5+5:
              4).default语句位置可以任意放
              5).case的穿透问题同样适用于default
              6).default语句放到switch语句最后,可以不用加break,如果不是放在最后,必须加上break
              7).case 后面不能是实数
              8).case语句后,默认的第一句话不能定义变量,如果第一句话非要定义的话要加上大括号
作者: 1374656143    时间: 2015-8-24 03:14
挺全面的,受教了
作者: to_love    时间: 2015-8-24 08:15
领略了。
作者: 毛强    时间: 2015-8-24 11:57
很全面,学习了
作者: STARlove    时间: 2015-8-24 23:00
C里常用的是printf......
java里常用print &println
对吧!!!!
作者: MEIMEIAA    时间: 2015-8-24 23:09
STARlove 发表于 2015-8-24 23:00
C里常用的是printf......
java里常用print &println
对吧!!!!

java没学过不太了解啊……
作者: STARlove    时间: 2015-8-24 23:12
MEIMEIAA 发表于 2015-8-24 23:09
java没学过不太了解啊……

加油吧 。。。ios就业工资好高哒!!!!!当初好多人都让我学这个   的{:2_43:}
作者: MEIMEIAA    时间: 2015-8-24 23:14
STARlove 发表于 2015-8-24 23:12
加油吧 。。。ios就业工资好高哒!!!!!当初好多人都让我学这个   的 ...

嗯,一定的加油的,正在看基础视频呢,那你学的是java啊,已经工作了吗

作者: STARlove    时间: 2015-8-24 23:15
MEIMEIAA 发表于 2015-8-24 23:14
嗯,一定的加油的,正在看基础视频呢,那你学的是java啊,已经工作了吗
...

我应该比你早来几天吧。。。正在努力去   就业班呢。。。
作者: MEIMEIAA    时间: 2015-8-24 23:19
STARlove 发表于 2015-8-24 23:15
我应该比你早来几天吧。。。正在努力去   就业班呢。。。

哦,那就一起加油吧!呵呵……
作者: STARlove    时间: 2015-8-24 23:59
MEIMEIAA 发表于 2015-8-24 23:19
哦,那就一起加油吧!呵呵……

{:3_53:}{:3_57:}...额哈哈
作者: lzfree    时间: 2015-8-25 00:00
顶一下下
作者: 颖峰    时间: 2015-8-25 11:04
楼主好厉害的样子   加油
作者: MEIMEIAA    时间: 2015-8-25 20:46
颖峰 发表于 2015-8-25 11:04
楼主好厉害的样子   加油

没有啦,只是基础的知识,呵呵
作者: MEIMEIAA    时间: 2015-8-25 20:47
lzfree 发表于 2015-8-25 00:00
顶一下下

谢谢哈,加油
作者: KongPro    时间: 2015-8-25 21:42
美女 加油
作者: 1374656143    时间: 2015-8-26 01:07
感觉这些基础都差不多
作者: runsunlife    时间: 2015-8-26 07:07
一起加油吧
作者: MEIMEIAA    时间: 2015-8-26 21:39
runsunlife 发表于 2015-8-26 07:07
一起加油吧

好的,呵呵 加油
作者: MEIMEIAA    时间: 2015-8-26 21:41
1374656143 发表于 2015-8-26 01:07
感觉这些基础都差不多

是的啊,都是视频里说到的,整理出来了
作者: MEIMEIAA    时间: 2015-8-26 21:43
KongPro 发表于 2015-8-25 21:42
美女 加油

谢谢,一起加油
作者: 魏武    时间: 2015-8-26 21:48
哎哟,不错哟
作者: 手心的温度    时间: 2015-8-26 23:51
谢谢同学的分享
作者: MEIMEIAA    时间: 2015-8-27 19:43
手心的温度 发表于 2015-8-26 23:51
谢谢同学的分享

一起学习嘛,呵呵
作者: jishujiandu    时间: 2015-8-27 19:57
1111111111111111111111111
作者: MEIMEIAA    时间: 2015-8-27 20:05
jishujiandu 发表于 2015-8-27 19:57
1111111111111111111111111

    这……




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2