C_运算符,分支

运算符,分支

1.  运算符

//  1.定义变量保存用户输入的整数

    int time;

// 2.接收用户输入的整数

    scanf("%d", &time);

// 3.拿到秒数换算成多少分多少秒

    int minu = time /60;//分钟数

    int sec = time %60;//秒数

// 4.输出到屏幕上

    printf("%d%d\n",minu, sec);

    int result =1 +2 +3 +4;

// 注意点;算术运算符,运算方向是从左往右

//   有优先级的问题,()优先级最高

2.三目运算符

   单目运算符: !条件

   双目运算符: 条件A&&条件B

   三目运算符格式:条件A?结果1:结果2

    command + shift + n新建工程快捷键

    //   求三个数的最大值

    int a =10, b =20, c =30;

   

//  1.求前两个数的最大值

    int temp = a > b ? a : b;

   

//  2.把两个数中的较大值跟最后一个值进行比较

    int max = temp > c ? temp : c;

   

//   int max = (a > b ? a : b) > c ? (a > b ? a : b) : c;

   

    printf("max = %d\n", max);

 

 

3.if语句

一.基本形式

1.

 if(条件表达式)

 {

    语句1

    语句2

    。。。。

 }

// 特点:只有条件满足,才会执行大括号里的代码 ()可看成一个井盖

 

 2.

 if(条件表达式)

 {

     语句1

     语句2

     。。。。

 }else{

     语句3

     语句4

     。。。。

 }

 特点:当条件满足就执行if后面大括号里的内容,如果不成立,就执行else后面大括号里的内容

// 就像上厕所,只有男女两种情况,总会执行一个

 

 3.

 if(条件表达式1)

 {

     语句1

     语句2

     。。。。

 }else if(条件表达式2)

 {

     语句3

     语句4

     。。。。

 }else if(条件表达式3)

 {

   .......

 }......

 else

 {

    语句m

    语句n

    。。。。。

 }

 特点:1.无论写多少种条件,最后只会执行一个大括号里的内容

      2.如果执行了某一个if elseif大括号里的内容,就说明前面的条件都不成立

 4.

 if(条件表达式)

    语句1

 特点:当条件成立,就会执行if后面的第一条语句

     当条件不成立,if后面的第一条语句不会执行

 

二.注意点

  //1.任何数值都有真假性

//   if (-100) { //C语言中,非0就是真

//       printf("XX\n");

//   }else

//   {

//       printf("00\n");

//   }

   

// 2.判断一个变量等于或者不等于一个常量的时候,把常量写在前面

    int a =10;

    if (0==a) {

       printf("a不等于0\n");

    }else

    {

       printf("other\n");

    }

// 3.直接加个;表示一个空语句

//   if(1);

//   {

//       printf("1111\n");

//   }

// 4.变量的作用域问题

//   if (1) {

//       int a = 10;

//   }

//   printf("a = %d\n", a);

   

// 5.作用域混乱如果使用a的值,应该把打印函数放到{}里面去

//   if(1)

//       int a = 10;

//   printf("a = %d\n", a);

   

// 6.if嵌套,if else是一个整体, else会匹配离他最近的if

//   if(0)

//   if(1)

//   printf("A\n");

//   else

//   printf("B\n");

//   else

//   if(0)

//   printf("C\n");

//   else

//   printf("D\n");

 

   

//   if (1) {

//       

//   }else{

//   

//   }

4switch语句

1.    switch概念

if(条件表达式)

 {

 

    }

 

 switch(表达式)

 

//  传入一个表达式和我们的case后面的表达式进行比较(是否相等)

   case表达式1:

    语句1

    。。。。

   break;//break的作用,是结束switch语句

   case表达式2:

     语句2

     。。。。

    break;

    。。。。

   default://只有所有的case都不满足,才会执行default后面的语句

       语句

   break;

 }

 

 1.break的作用,是结束switch语句

 2.switch里面的case只要匹配一次,其他的就失效了.包括defulat

 3.switch遇到了break或者 }就结束了

 4.默认情况下,default后面的break可以省略

 

 // 注意点:1.case后面的值不能放小数,可以放整数和字符

 //   2.case后面的值不能重复

 //   3.case后面还可以放返回值为整数的表达式

 //   4.case后面不能放变量

 

 //   default可以放在switch的任意地方,但是无论放在哪里,都会先判断其他的case,只有所有的case都不满足条件,才会执行default

 //   defalut放在其他地方的时候,break不能省略

 //   default可以省略

 */

2.if和switch对比

  //  1.提示用户输入学生分数

    printf("请输入一个0100之间的分数\n");

   

//   2.定义变量保存用户输入的分数

    int score = -1;

   

//   3.接收用户输入

    scanf("%d", &score);

   

//   4.判断用户输入的分数,输出对应的等级

    /*

   if (score >= 90 && score <= 100) {

       printf("A\n");

   }else if(score >= 80 && score <= 89){

       printf("B\n");

   }else if(score >= 70 && score <= 79){

       printf("C\n");

   }else if(score >= 60 && score <= 69){

       printf("D\n");

   }else if (score >= 0 && score <= 59){

       printf("E\n");

   }else{

       printf("少喝点三鹿\n");

    }

    

   */

// 90 ~ 100 A 100/10 = 10 99/10 = 9

// 80 ~ 89 B

// 70 ~ 79 C

// 60 ~ 69 D

//  0 ~ 59 E

    switch (score/10) {

       case10://case只会匹配一次,一旦有一个匹配,其它的case就失效了

//            代码会继续往下执行,直到遇到break或者 }

       case9:

           printf("A\n");

           break;

       case8:

           printf("B\n");

           break;

       case7:

           printf("C\n");

           break;

       case6:

           printf("D\n");

           break;

       case5:

       case4:

       case3:

       case2:

       case1:

       case0:

           printf("E\n");

           break;

       default:

           printf("少喝点三鹿\n");

           break;

    }

   

// if switch使用

//  但凡switch能解决的问题,if全部能解决

//  但是if能解决的问题,switch不一定能解决

//  当遇到一个区间判断的时候,用if

//  当对固定不多的几个值进行判断的时候,用switch,性能稍微高一些

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值