• 逻辑性变量的定义符:bool,在C语言中只有true和false;
  • 定义方式:bool t = true;
  • 逻辑运算符:

!:逻辑非

&&:逻辑与

||:逻辑或

  • 表达区间的错误形式:4<x<6;(由左到右顺序执行)
  • 表达区间的正确形式:x>4&&x<6;
  • 判断大写字母:c>=’A’&& c<=’Z’;
  • 单目运算符的优先级高于双目运算符;
  • 例:!age<20;-------->  (!age)<20;   !单目,<双目;
  • index<0||index>99;  ------->index不属于0-99范围;
  • 优先级:

1 ()

2 !+ – ++ --   单目运算符;

3 */ %

4 + -

5 < <= > >=      例:a>6 && a<8;

6 == !=

7 &&

8 ||

9 = += –= *= /= %=

与或的优先级很低,但赋值的优先级永远是最低的。

  • if (i!=k)

{if (i!=j)

{ if (j!=k)

{

}

}

}

等价于----> if(i!=j && i!=k && j!=k)

{}

  • 注意:逻辑与a&&b运算:自左向右进行,当左面的a为false之后,则不会再进行右面的b运算;
  • 因此赋值最好不要放在表达式中;
  • 对于&&,左边是false时就不做右边了,短路
  • 对于||,左边是true时就不做右边了,短路
  • 条件运算符:    a?b:c;  不推荐使用嵌套的表达式;
  • 条件运算符的优先级仅高于赋值=运算符,低于其他运算符;
  • 逗号表达式:,     i=(3+4,5+6);
  • 逗号表达式其结果为逗号后面的东西;所以i=11;
  • 在没有大括号的情况下,else总是和最近的if去匹配;
  • tips:在if或else后面总是用大括号{},良好的编程习惯;
  • 多路条件选择 / 级联的if else:

int f ;   ------------------------>单一出口,最后输出;

if         ( ) { }

else if ( ) { }

else if ( ) { }

else if ( ) { }

………

else        { }

  • switch( type)

{

case1:{…;break;}

case2:{…;break;}

……….

de'fault:{…;break;}

}

优点:克服了级联语句需要不断尝试运行每个判断语句的缺点;

注意:type只能为int整数类型;

  • type只是指示开始的路标,若跳转后遇不到break,那么继续往下走,执行下一条case语句;case并不是划分的标志,case只是一个路口;

C语言学习记录_2019.02.04的更多相关文章

  1. C语言学习记录_2019.02.10

    sizeof:给出某个类型或某个变量在内存中占据的字节数:(1个字节8位,即8比特) 格式符 (1)%ld表示数据按十进制有符号长型整数输入或输出. (2)%d表示数据按十进制有符号整型数输入或输出. ...

  2. C语言学习记录_2019.02.23

    char类型的输出: scanf("%d",&i);//i=49; char x=i; printf("x=%d\n",x); printf(" ...

  3. C语言学习记录_2019.02.07

    C99开始,可以用变量来定义数组的大小:例如,利用键盘输入的变量来定义数组大小: 赋值号左边的值叫做左值: 关于数组:编译器和运行环境不会检查数组下标是否越界,无论读还是写. 越界数组可能造成的问题提 ...

  4. C语言学习记录_2019.02.05

    switch只能判断整数,而分段函数的判别是一个范围,我们无法用整数来表示范围 跟踪语句的方法: (1)debug调试 (2)printf( )语句跟踪 小套路:当循环次数很大时,可以先模拟较小次数的 ...

  5. C语言学习记录_2019.02.02

    变量在第一次被使用之前应该赋初值 scanf(“%d”,&price); scanf(“price%d %d”,&price);  scanf中的东西一定是要输入的东西. 定义常量:c ...

  6. C语言学习记录_2019.02.12

    "学计算机一定要有一个非常强大的心理状态,计算机不是黑魔法,都是人想出来的,别人能够想的出来,那么,总有一天,我也能够想的出来." 指针类型的变量就是保存地址的变量. int* p ...

  7. C语言学习记录_2019.02.09

    打印字符串:%s--------printf("%s","abcd"); 打印字符串数组中某一位:%c--------printf("%c" ...

  8. C语言学习记录_2019.02.08

    \n:换行:   \t:制表符,相当于大空格: a[5]={2};<------->a[5]={2,0,0,0,0}; 数组初始化的方法:a[5]={0};即全部初始化为0: 数组初始化的 ...

  9. C语言学习记录_2019.02.06

    break语句的作用:当执行到break,则跳出循环,免去不必要的循环次数,节省时间和资源.-----跳出循环,结束循环: continue:跳过这一次循环剩下的语句,进入到下一轮循环.-----跳到 ...

随机推荐

  1. Bash命令行 bash &> >& Bash One-Liners Explained

    Bash One-Liners Explained, Part I: Working with files https://catonmat.net/bash-one-liners-explained ...

  2. TaskScheduler内幕天机解密:Spark shell案例运行日志详解、TaskScheduler和SchedulerBackend、FIFO与FAIR、Task运行时本地性算法详解等

    本课主题 通过 Spark-shell 窥探程序运行时的状况 TaskScheduler 与 SchedulerBackend 之间的关系 FIFO 与 FAIR 两种调度模式彻底解密 Task 数据 ...

  3. easyui学习笔记4—panel的实现

    这篇看看easyui是怎么实现panel的,就是类似一个容器,里面可以装具体内容或者其他的easyui控件. 1.这里先看看引用的资源文件 <link rel="stylesheet& ...

  4. PTA练习题之7-2 求交错序列前N项和(15 分)

    本题要求编写程序,计算交错序列 1-2/3+3/5-4/7+5/9-6/11+... 的前N项之和. 输入格式: 输入在一行中给出一个正整数N. 输出格式: 在一行中输出部分和的值,结果保留三位小数. ...

  5. IO流输入输出流,字符字节流

    一.流 1.流的概念 流是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称或抽象.即数据在两设备间的传输称为流,流的本质是数据传输,根据数据传输特性将流抽象为各种类,方便更直观的进行数据操作. ...

  6. 五·管理mysql

    在上一篇文章中 四·安装mysql-5.7.16-linux-glibc2.5-x86_64.tar.gz(基于Centos7源码安装) 已经安装好了mysql,也正常启动了.本篇文章主要内容是管理m ...

  7. SDOI2018R1划水记

    SDOI2018 bless all Day -1 一天无所事事……板子也不想打了 旁边的蚝爷还在不停的AC……果然自动AC机不是白叫的 "8848钛金老蚝,一上课就A题,一下课就学习,每2 ...

  8. [USACO5.2]Snail Trails

    嘟嘟嘟 一道很水的爆搜题,然后我调了近40分钟…… 错误:输入数据最好用cin,因为数字可能不止一位,所以用scanf后,单纯的c[0]为字母,c[1]数字………………………… #include< ...

  9. vue中图片返回404时,显示默认的图片

    图片返回404时候的处理 <img :src="userMsg.portrait" ref="img" alt=""> _thi ...

  10. python-装饰器的简单使用

    一.介绍 首先我们先来看一个简单的例子,在基础平台中有一个home()和tv()函数,在业务平台中调用此函数时,给出了响应的打印内容: 基础平台: def home(): print('welcome ...