反馈: 
 
#pragma mark - 简单复习 
 
复习1. 
    scanf的使用 
作用:获取用户输入 
 
 
用法: 
scanf("%d%f",&整型变量的地址,&float类型变量地址); 
 
 
 
 
复习2.算术运算符 
    有哪些: +-*/% 
    优先级:*/%高  +-低 
    如果优先级一样那么从左到右 
    复合赋值运算符: 
int sum = 0; 
sum+=2;====>sum = sum +2; 
 
 
 
 
#pragma mark - 0_14 自增与自减运算[掌握] 
 
 
1.++  -- 自增自减 运算符 
 
    不管是++ 还是-- 完了之后a的值肯定会变 
    int main(){ 
        int num = 0; 
        ++num;//1 
        num++;//2 
        ++num;//3 
        num++;//4 
        num++;//5 
        printf("num = %d\n",num); 
    } 
 
2.++ 和 -- 
int num = 10; 
//num = num + 1; 
//num+=1; 
num++;就是把num加上一个1 赋值给num 
++num;也是把num加上一个1 赋值给num 
无论是前++ 还是后++ 都是将num值加上1 
 
 
3.++和--式子 
    假设int a = 5; 
    a++ ----> 整个 a++ 的式子的值是a ---> a的值 是 a+1 
    ++a ----> 整个 ++a 的式子的值是a+1 ---> a的值 是 a+1 
    a-- ----> 整个 a-- 的式子的值是a ---> a的值 是 a-1 
    --a ----> 整个 --a 的式子的值是a-1 ---> a的值 是 a-1 
#pragma mark - 0_15 逗号表达式[听懂] 
 
 
"强调 
1.逗号表达式书写: (表达式1,(表达式2),表达式3,...) 
2.执行过程: 从左向右执行 
3.整个逗号表达式的结果:最后一个表达式的值 
    我们要的是最后一个表达式的值,但是前面的表达式执行后可能会影响最后一个表达式的值 
#pragma mark - 0_16 比较表达式的结果[掌握] 
 
1.比较运算符: 
    > >= < <= != ==(才是判断两个数相不相等,= 赋值运算符) 
    5 > 3;正确的在C语言中,真 
 
    4 > 4:错误的在C语言中,假 
 
 
    3 >= 3:也是真的 
 
    4 <= 5:也是真的 
2.比较表达式: 
比较表达的结果 
    1>如果是真的 那就值就是1 
 
    2>如果是假的 那么值就是0 
3.优先级: 
    算术运算符:+-*/%:  */%高 +-低 
    比较运算符: 
        高优先级:> < >= <= 优先级相同 
        低优先级:== != 优先级相同 
 
 
4. 
int main() 
{ 
    int num = 0!=3<2; 
    //看到一个复杂的表达式 
    //要做以下步骤 
    //1.看运算符 
    //2.找优先级 
     
    printf("num = %d\n",num); 
} 
 
#pragma mark - 0_17 详解各类比较运算符[掌握] 
    1.> 大于运算符. 如果左边的数据大于了右边的数据.结果就真,结果就是1 否则为0 
 
    2.>= 大于等于运算符.如果左边的数据大于或者等于右边的数据.那么条件成立,结果就为1 否则就为0 
 
    3.< 小于运算符.如果左边的数据小于了右边的数据.那么条件成立,结果就是1 否则为0 
 
    4.<= 小于等于运算符号.如果左边的数据小于或者等于右边的数据.那么条件成立,结果就为1 否则就为0、 
    5.== 相等比较运算符.如果左边的数据等于右边的数据.那么条件成立,结果就为1 否则就为0. 
    友情提示: 判断两个数据是否相等 是两个等号. 1个等号叫赋值. 
 
    6.!= 不等比较运算符.如果左边的数据不等于右边的数据.那么条件成立,结果就为1 否则就为0. 
#pragma mark - 0_18 比较运算表达式的场景 [掌握]  
 
 
 
1.比较运算符的两边可以是常量或者是变量 
    int num = 10; 
    //int rel = num > 9 
    int rel = 100>111; 
 
2.比较运算符的两边可以分别是表达式 
    int num = 10; 
    // 1     <   20 -----整个式子为1 
    int result = 11 - num < num * 2; 
    遇到了一个复杂表达式 
    1>看运算符: 
    2>看优先级: 乘除 > 加减 > 比较运算符 
 
3.使用比较表达式来判断一个数据和另外一个数据的关系 
 
        1>判断一个数是不是5的倍数 
             一个数%5 == 0  ----> 
            结果有两种可能 0表示数不是5的倍数  1是表示数是5的倍数 
 
        2>实现 
        int main() 
        { 
            //定义一个数用于接受用户输入,拿这个数来操作 
            int caoZouShu = 0; 
            scanf("%d",&caoZouShu); 
            //对5取余数,如果结果 == 0 说明是5的倍数,反之就不是5的倍数 
            printf("%d\n",caoZouShu%5==0); 
            return 0; 
        } 
 
4.char类型的变量或者常量也可以参与比较运算符, 
    本质比较的是相应的ASCII码 
     'A' < 'B' 
    char ch1,ch2; 
    .....//某一些操作 
 
    int rel = ch1 > ch2; 
 
    如果rel 是0 代表 ch2这个字符 肯定在 ch1字符的后面或者相同 
 
 
    如果rel 是1 代表 ch1这个字符 肯定在ch2的后面 
 
5.练习: 
int num1 = 10; 
int num2 = 20; 
int k = num1 > 5 ,num2 <= 20 , (num2 * 3); 
 
// *   +   比较 
printf("k = %d\n",k); 
 
一个复杂的表达式: 
1.看运算符 
2.找优先级 
3.看结合性 
练习2: 
    int number = 2; 
    int k = number + 1 == ++number; 
优先级:(number + 1) == (++number) 
结合性:从左到右结合 先算 number + 1  后算number++ 
 
#pragma mark - 01 逻辑运算符的简要介绍 [掌握] 
 
1.逻辑运算符的种类: 
    && 逻辑与(并且) ||逻辑或(或者) !逻辑非(取反) 
 
2.逻辑表达式的结果:要么是真的(1) 要么是假的(0) 
 
 
3.计算机中的真与假: 
    在计算机中 如果是真的 那么就是1  如果是假的那么就是0 
    如果一个数 是0  计算机认为他是假的 
    如果一个数是 非0 计算机认为他是真的 
#pragma mark - 02 逻辑与运算符 [掌握] 
 
    "表达式A && 表达式B 
1.&&逻辑与运算符运算规则 
    A 和 B 都是真 结果才是真,A 和 B 有一个是假,结果就是假 
    "口诀":全真为真 
 
比如判断一个数 是不是在 0-100之间 
不能这么写: 0<=一个数<=100 
必须用逻辑与: number >=0  && number <= 100 
 
练习: 
int num = 10; 
int i = 20; 
int result = (num > 9) && (i > 10); 
//result = 1 
 
2.短路问题[了解] 
 
如果A为假的 那么直接不执行B了 
 
int i = 10; 
 
int k = (i > 20) && (i++ < 20); 
//最后输出的结果是 i的值为10,因为&& 第一个式子是假的 短路了 
#pragma mark - 03 逻辑或运算符 [掌握] 
 
 
    "表达式A || 表达式B 
1.||逻辑或运算符运算规则 
    A 和 B 只要一个是真的 结果就是真, 
    "口诀":一真则真 
2.短路问题[了解]: 
    如果A为真的 那么直接不执行B了 
 
练习: 
    #include <stdio.h> 
    int main() 
    { 
        int num = 1; 
        int i = 0; 
        int result = num > 0 || i++; 
        printf("%d----%d\n",result,i); 
        return 0; 
    } 
3.计算机中的真与假 
    5 > 3 如果是真的 计算机会把1给你 
 
    3 > 5 如果是假的 计算机会把0给你 
 
    如果你给计算机一个 非0 计算机就认为是真的 
 
    如果你给计算器一个 0  计算机就会认为是假的 
 
#pragma mark - 04 逻辑运算符的优先级 [掌握] 
 
1. !逻辑非运算规则 
 
规则: 真变假 假变真 
 
练习: 
    int main() 
    { 
        int i=2,j=0,k=-2; 
        printf("%d----%d---%d\n",!i,!j,!k); 
        return 0; 
         
    } 
2.优先级的万能公式: 
 
 () "大于" -(负号) "大于" !(取反)  "大于" 算术运算符 "大于" 
    ]"大于" =(赋值) "大于" ,(逗号运算符) 
 
 
#pragma mark - 04_2 练习讲解 [掌握] [播] 
此知识点复习时见第3天视频笔记/04_2 练习讲解.pdf 
 
1.什么是优先级 
    一个表达式中如果有多种运算符 那么先算哪一个 后算哪一个 这就是运算符的优先级 
 
 
2.什么是结合性 
    一个表达式如果多个运算符的优先级相同 那么先算哪一个后算哪一个 这就是运算符的结合性 
 
    1> 1+2-3+4 : 结合性是从左到右 
    2> int i = 1,j = 2,k = 3; 
        i=j=k=3;//执行完了之后 ijk的值都是3 
 
3.一个复杂表达式的计算过程 
    1>看运算符 
    2>找优先级 
    3>看结合性 
 
#pragma mark - 06 IF结构的使用 [掌握] 
 
1. C语言程序的结构: 
    顺序结构: 程序从上向下依次执行 
        printf("a"); 
        printf("b"); 
        printf("c"); 
        printf("d"); 
    选择结构: 
    if : 假如 num > 5  那么 xxxx 
 
    switch: 
 
    循环结构: 
2.if的格式 
    if (关系表达式){ 
        语句块1; 
    } 
 
    if(烟抽了超过5根){ 
        滚出去; 
    } 
关系表达式: 只有一个结果 真的 或者假的 
    "如果关系表达式是真的 那么 执行语句块1; 
    "如果关系表达式是假的 那么 不执行语句块1; 
 
#pragma mark - 06_2 练习讲解 [掌握] 
 
请用户输入他的儿子的语数外三门课的成绩,如果平均分>=60,给他一个吻. 
 
int main() 
{ 
     
    //思路 
    //要获取语数外三门成绩 
    int yu,shu,wai=0; 
    printf("输入你儿子的语数外三门成绩,用~隔开"); 
    scanf("%d~%d~%d",&yu,&shu,&wai); 
    //计算平均值 
    float avChengji = (yu + shu + wai)  /  3.0; 
    //if(平均值>=60)--->给他一个吻 
    if(avChengji >=60) 
    { 
        printf("亲他!\n"); 
    } 
     
    return 0; 
} 
 
#pragma mark - 07 使用IF结构注意[掌握]  
 
 
1.代码中的分号代表一条指令的结束 
 
2.if语句块 
    if(表达式)//这里不允许加一个 ";",因为if语句块还没结束 
    { 
        语句块; 
    } 
3.if(条件表达式): if后面的小括号中 可以写任意表达式,如果是非0 那么认为是真的,如果是0 那么认为是假的 
 
4.永真和永假的问题 
    if(1):代表条件永远成立 
    if(0):代表条件永远不成立 
 
 
 
5. 
    if(表达式) 
    { 
        printf("aa"); 
        printf("aa"); 
    } 
    "语句块A":中可以有一行代码 也可以有多行代码,甚至可以没有代码 
 
6.保持代码的对齐 
    快捷键: control + i 
 
// 取小数部分 
float num = 2.34f; 
int num1 = num; 
float xiaoshu = num - num1; 
 
 
 
 |