0
点赞
收藏
分享

微信扫一扫

C语言---进阶1

他说Python 2022-05-06 阅读 140

 


目录

 一 . scanf()函数

二 . 交换两个数的(高级方法)

三 . 运算符-----表达式

四 . 补充


 一 . scanf()函数

        1 . scanf()函数执行时,会先检查缓冲区中是否有数据

        2 . rewind(stdin);            fpurge(stdin);

             这两句代码可以讲缓冲区中的数据全部清空

             若没有对应数据,则用户输入,若有数据,直接拿数据

        3 . 当输入的数据类型是整形或者是浮点型时,空格 回车 Tab键会忽略

        4 . 当输入的数据类型是字符型时,空格 回车 Tab键就不会被忽略

#include<stdio.h>
int main()
{
    int i;
    rewind(stdin);
    //fpurge(stdin);
    scanf(@"%d",&i);
    return 0;
}

二 . 交换两个数的(高级方法)

        1 . 最常见-----使用中间变量temp

#include<stdio.h>
void swap (int* a,int* b)
{
    int temp = *a;
    *a = *b;
    *b = temp; 
}
int main()
{
    int i = 10;
    int j = 20;
    swap(&i,&j);
    printf("i = %d,j = %d",i,j); 
    return 0;
}

        2 . 数学法

#include<stdio.h>
int main()
{
    int i = 10;
    int j = 20;

    i = i + j;
    j = i - j;
    i = i - j;

    printf("i = %d,j = %d",i,j); 
    return 0;
}

        3 . 异或运算 √

#include<stdio.h>
int main()
{
    int i = 10;
    int j = 20;

    i = i ^ j;
    j = i ^ j;
    i = i ^ j;

    printf("i = %d,j = %d",i,j); 
    return 0;
}

三 . 运算符-----表达式

        1 . 算术运算符-----算术表达式

             <1> . 算术运算符 :   +   -    *   /   %

             <2> . 算术表达式 : 由算术运算符链接而成的式子

             <3> . 算术运算符优先级 : 先 * /    再+ -  同级别从左到右依次计算,如果有“()”优先

        2 . 除法运算符

#include<stdio.h>
int main()
{
    double res = 10/4;
    double ret = 10*1.0/4;
    printf("res = %lf , ret = %lf",res,ret);
    return 0;
}

                                                结果如下:所以当使用double除法运算时  要注意除数是否是double类型 

         3 . 求余运算符

              在C语言中 求余运算符只能用于整形变量

         4 . 复合赋值运算符

              <1> . 复合赋值运算符 : +=  -=  /=  *=  %=

              <2> . 复合表达式 : 由复合赋值运算符链接而成的式子

         5 . 逗号表达式

              从头到尾一直执行到最后一个子表达式,最后一个子表达式的结果就是最后一个表达式的结果

         6 . 比较运算符-----比较表达式

              <1> . 比较运算符 : ==   <=   >=   !=   <   >   = 

              <2> . 比较表达式 : 由比较运算符链接而成的式子

         7 . 逻辑运算符-----逻辑表达式

              <1> . 逻辑运算符 : &&   ||     !

              <2> . 逻辑表达式 : 由逻辑运算符链接而成的式子

              <3> . 逻辑优先级 : (1)  逻辑运算符优先级比比较运算符的优先级更高

                                            (2) " !"  >  "  &&  "   >   "  ||  "

         8 . 单目(一元)、双目(双元) 、三目(三元)运算符

              <1> . 单目(一元)运算符:参与运算的操作数只有1个--------!

              <2> . 双目(双元)运算符:参与运算的操作数只有2个--------+ = - && ||

              <3> . 三目(三元)运算符:参与运算的操作数只有3个--------a>b?c:d

四 . 补充

        1 . char数据 

                char类型的数据是可以参与算术运算的,当算术表达式中是一个char类型的数据,编译器会把char数据用ASCII码来代替

                ASCII码的本质上就是一个整形的数据,然后再用ASCII码来参与算术运算

                <1> . 大小写转换 

                        ch - 32;

                        ch + 32;

                <2> . 字符变量的类型说明符是char。字符变量类型说明的格式和书写规则都与整型变量相同。 
        2 . switch - case语句

                <1> . switch(表达式)  表达式中可以为任意表达式(只能是整形或者字符型)

                <2> . case 值 : 值是常量表达式,不能是变量表达式

举报

相关推荐

0 条评论