<06>变量使用前易犯错误总结+if语句介绍及基本格式+if-else语句及嵌套+if语句的高级用法+if语句的使用注意点+arc4random_uniform 函数导入一个头文件

  1)变量要初始化 -1 0  ,或者1 依据程序而定

----------------------------------

if语句介绍及基本格式

   分支语句结构

 

     1if 

 

        格式:

 

         if(表达式/常量/变量){

                

                语句块1;

         }

 

        原理:

         1)先计算小括号中的表达式的值

 

                  真(1)

                       

                      会执行 大括号中的语句

 

                  假(0)

 

                      不会执行 大括号中的语句

 

     2) switch

 
 1 #include <stdio.h>

 2 

 3 int main(int argc, const char * argv[]) {

 4     

 5     

 6     //先定义变量

 7     int num=0;

 8     

 9     //提示用户输入一个数

10     printf("请输入一个数字:\n");

11     

12     //接收用户输入的数

13     scanf("%d",&num);

14     

15     //判断这个数是否等于5

16     if (num == 5) {

17         printf("恭喜你!\n");

18     }

19     

20     //如果等于5    提示    恭喜你

21     

22     printf("num = %d\n",num);

23     //如果不等于 5   提示很可惜

24     if (num != 5) {

25         printf("很可惜!\n");

26     }

27     

28     return 0;

29 }
请输入一个数 字:

88                                        

num = 88

很可惜!
请输入一个数 字:

5

恭喜你!

num = 5

-----------------------------------------------------

if-else语句及嵌套

 1if ... else .... 的分支结构

 

      if(表达式){

 

        语句块1;

        //如果表达式为真,会执行此处的代码

 

      }else{

 

        //如果表达式为假了,会执行此处的代码

        语句块2;

      }

 

      

     注意:不管表达式为真还是为假,都会执行一个语句块

 

 

   2、if语句的嵌套

 

 

         if(表达式1){

         

            语句块1;

            //如果表达式1为真,会执行此处的代码

         

         }else{

         

             //如果表达式1为假了,会执行此处的代码

 

 

             if(表达式2){

 

                   语句块2;  // 表达式1为假   表达式2为真  会执行

 

             }else{

 

                   语句块3: // 表达式1为假    表达式2也为假  会执行

             }

 

 

 

         }
 1 #include <stdio.h>

 2 

 3 int main(int argc, const char * argv[]) {

 4    

 5     //先定义变量

 6     int num=0;

 7     

 8     //提示用户输入一个数

 9     printf("请输入一个数字:\n");

10     

11     //接收用户输入的数

12     scanf("%d",&num);

13     

14     //判断这个数是否等于5

15     // num == 5 为假 可能是大于5,也可能是小于5

16     if (num == 5) {

17         printf("恭喜你\n");

18     }else{

19         //再判断,如果这个数大于5 提示 大于5

20         if (num > 5) {

21             printf("大于5了\n");

22         }else{

23             //否则提示  小于5

24             printf("小于5了\n");

25         }

26     }

27     return 0;

28 }
请输入一个数字:

4

小于5了
请输入一个数字:

88

大于5了

-----------------------------------------

if语句的高级用法

 if(表达式1){

 

      语句块1

 

   }else if(表达式2){

 

      语句块2;  //表达式1为假,表达式2为真

 

   }else if(表达式3){

 

      语句块3;  //表达式1、2假,表达式3为真

 

   }else{

 

      //表达式1、2、3都为假

   }

 

 

 

 

     输入一个属于0-100的成绩,按0-59(E),6069(D),7079(C),8089(B),90100(A) 分成几等。

     

     条件:

     

     分数>=0 && 分数<=59    E

     分数>=60&& 分数<=69    D

     分数>=70&&分数<=79     C

     分数>=80&&分数<=89     B

     分数>=90&&分数<=100    A

     分数<0||分数>100       不合法



 
 1 #include <stdio.h>

 2 

 3 int main(int argc, const char * argv[]) {

 4     

 5     //定义变量,保存用户输入的分数

 6     int score=0;

 7     //提示用户输入一个分数

 8     printf("请输入一个分数:\n");

 9     //接收分数

10     scanf("%d",&score);

11     //校验分数是否合法( score<0||score>100)

12     if (score<0 || score > 100) {

13         printf("分数不合法!\n");

14     }else{

15         //当分数合法以后,再判断等级

16         if (score<=59) {  //0-59 想反 60-100

17             printf("E\n");

18         }else if(score<=69){  //60-69     70-100

19       

20             printf("D\n");

21         }else if (score<=79){ //70-79     80-100

22         

23             //C

24             printf("C\n");

25         }else if (score<=89){//80-89      90-100

26             

27             //B

28             printf("B\n");

29         }else{                          //90-100

30         

31             printf("A\n");

32         

33         }

34         

35         

36         

37     }

38     return 0;

39 }
请输入一个分数:

55

E

---------------------------------

if语句的使用注意点

 1 #include <stdio.h>

 2 

 3 int main(int argc, const char * argv[]) {

 4     int a = 3,b=4;

 5     //1、空语句

 6     if (a==3);  //空语句,什么都没有干

 7     

 8     //2、如果if之后的代码块,如果只有一句话,则可以省略大括号

 9     if (a>3)

10         printf("a>2\n");  //if条件如果没有大括号,只会影响一句话

11     

12     //3、永真式和永假式

13     if(1){   }  //大括号中永远执行

14     if(0){   }  //大括号中永远不会执行

15     

16     //4、if语句结合return 语句

17     if (a>3)

18         return 0;   //在一个函数中,return语句之后的语句都不会执行

19         

20     

21     //5、if作用域的问题

22     if (a==3) {

23         int num = 10;

24     }

25     //printf("num = %d\n",num);这里访问不到num;

26     

27     //6、容易疑惑的地方 作用域的紊乱

28     if(a==3)

29        int num = 10;

30     //printf("num = %d\n",num);没有括号,但这里仍访问不到num;

31         

32 

33     

34     

35     //7、省略大括号的分析,不要省略,防止乱了

36     int age = 13;

37     

38     if (age >= 0){

39         

40         if(age < 5){

41                 printf("小儿\n");

42         }else{

43             if(age < 10){

44                 printf("小孩\n");

45                 if (age > 12){

46                     printf("小破孩\n");

47                 }else{

48                     printf("不知道\n");

49                 }

50             }

51         }

52     }

53     

54     

55     return 0;

56 }

-------------------------------------------------

arc4random_uniform 函数使用的时候,首先要导入一个头文件<stdlib.h>
 1 #include <stdio.h>

 2 #include <stdlib.h>

 3 

 4 int main(int argc, const char * argv[]) {

 5     

 6     //制定游戏的规则

 7     /*

 8        输赢的规则:

 9      

10        剪刀 干掉 布

11      

12        石头 干掉 剪刀

13      

14        布   干掉 石头

15      

16        规定:

17      

18        0.剪刀    1.石头    2.布

19      

20      

21       思路:

22      

23        计算机随机出一个拳(计算机如何随机出拳)

24      

25        玩家自己选择一个拳

26      

27        判断输赢

28      

29      */

30     

31     //实现的步骤:

32     

33     //1、定义变量,保存计算机出的拳 ,保存用户输入的拳

34     int computer=-1,player = -1;

35     

36     //2、先让计算机出拳

37     //随机产生

38     //0   1   2

39     //产生随机数的方法   arc4random_uniform随机数产生的函数

40     // arc4random_uniform 函数使用的时候,首先要导入一个头文件

41     // stdlib.h

42     // arc4random_uniform(3);  //0  1  2

43     computer = arc4random_uniform(3);

44     //printf("%d\n",computer);

45     

46     

47     //3、给一个提示,提示让玩家出拳

48     printf("请出拳:  0.剪刀   1.石头   2.布\n");

49     //保存用户出的拳

50     scanf("%d",&player);

51     //校验

52     if (player<0 || player > 2) {

53         printf("请按套路出拳!\n");

54         return 0;

55     }

56     

57     

58     //4、开始比较

59     //先判断玩家赢的情况

60     if ((player==0 && computer==2)||

61         (player==1 && computer==0)||

62         (player==2 && computer==1)) {

63         

64         printf("恭喜你,你赢了!\n");

65     }else if ((computer==0 && player==2)||

66               (computer==1 && player==0)||

67               (computer==2 && player==1)){

68         printf("很遗憾,你输了!\n");

69     

70     }else{

71      

72         printf("平局!\n");

73     

74     }

75     

76     //    玩家          电脑          赢的情况

77     //    剪刀 0         2

78     //    石头 1         0

79     //    布   2         1

80     

81     

82     

83     

84     

85     return 0;

86 }

 

你可能感兴趣的:(Random)