zoukankan      html  css  js  c++  java
  • 黑马程序员——C语言基础常量、运算符、函数

    黑马程序员——C语言基础---常量、运算符、函数

    ***一、变量***

    1、变量名的取名规则

          1)第一个字符必须是字母或下划线,其后的字符必须是字母、数字、或下划线。下列合法的:

          sum、_total、li_ling

          不合法的:zhang- sum、136、$12、student’s

          2)大小写字母代表的是不同的字符

          3)长度不是无限的

          4)尽量简洁易记,见名知意

          5)不同变量在同一函数中不能取相同变量名

    2、变量一定要“先定义,后使用”

    3、在编译的时候,一定要注意变量运算的合法性。例如,整型变量是可以进行求余运算的,若a和b已定义为整型变量,则可以进行a%b的运算求a被b除的整余数,如果为实型变量,则不允许进行求余运算

    4、整型变量:

          基本整型:int

          长整型:long int

          短整型:short int

    int默认的就是有符号的,无符号在前边加unsigned

    5、实型变量

          单精度:float

    双精度:double

    长双精度:long double

    输出时不再是“%d”了,变成了“%f”,“%1f、%2f”是保留一位,或者两位小数

    6、字符型变量

          字符型类型名:char

          字符要用单撇号括起来,一个字符变量放一个字母字符输出的时候为:%c

    7、转义字符

    /n

    换行

    /t

    使下一个输出的数据跳到下一个输出区

    /b

    退格

    /r

    回车

    /f

    换页

    /0

    空操作

    /ddd

    1-3位八进制所代表的字符

    /xhh

    1-2位十六进制所代表的字符

    将小写字母转换为大写字母

    程序:/* 小写转化为大写字母 */

    #include "stdio.h"

    void main()

    {

        char c1='a',c2='b';

        c1=c1-32;

        c2=c2-32;

        printf("%c,%c\n",c1,c2);

    }

    结果为A,B

    小写字母的ASCLL码比大写的大32,所以要减去32

    8、字符串常量

          字符串常量是用双撇号括起来的字符序列:’’’’

          c=”kadfj”;

          这是一个错误的语法,因为不能把一个字符串常量赋值给一个字符变量,必须用字符数组来存储

    ***二、运算符***

    1、算数

    +

    加法运算

    -

    减法运算

    *

    乘法运算

    /

    除法运算

    %

    求余运算

    i++,i--

    在使用i之前先使i加减

    ++i,--i

    在使用i之后再使i加减

    +

    字符串相加

    注:运算顺序与数字运算一样,同一级从左到右依次

    进行取模运算时,如果有负数,运算结果取决于运算左边有没有负数

     字符串数据和任何数据使用 +都是相连接,最终都会变成字符串。

    自增,自减运算只适用于变量

    2、关系运算符

    大于

     

    小于

     

    ==

    相等于

    与=不同

    >=

    大于等于

     

    <=

    小于等于

     

    !=

    不等于

     

    3、逻辑运算符

     

    &&

     

    ||

     

    4赋值运算符:=

    与“==”一定要区别来,“=”只是赋值,而“==”才是左右等于

    优先级

    运算符

    含义

    要求运算对象的个数

    结合方法

    1

      ( )

      [ ]

      →

      ·

    圆括号

    下标运算标

    指向结构体成员运算符

    结构体成员运算符

    自左至右

    2

       !

       ~

       ++

       --

       -

     (类型)

       *

       &

      sizeof

    逻辑非运算符

    按位取反运算符

    自增运算符

    自减运算符

    负号运算符

    类型转换运算符

    指针运算符

    地址与运算符

    长度运算符

             1

        (单目运算符)

    自右至左

    3

       *

       /

       %

    乘法运算符

    除法运算符

    求余运算符

    2

        (双目运算符)

    自左至右

    4

       +

       -

    加法运算符

    减法运算符

    2

        (双目运算符)

    自左至右

    5

      <<

      >>

    左移运算符

    右移运算符

    2

        (双目运算符)

    自左至右

    6

    <<=︺>>=

    关系运算符

    2

        (双目运算符)

    自左至右

    7

      ==

      !=

    等于运算符

    不等于运算符

    2

        (双目运算符)

    自左至右

    8

       &

    按位与运算符

    2

        (双目运算符)

    自左至右

    9

       ^

    按位异或运算符

    2

        (双目运算符)

    自左至右

    10

       ︱

    按位或运算符

    2

        (双目运算符)

    自左至右

    11

      &&

    逻辑与运算符

    2

        (双目运算符)

    自左至右

    12

       ‖

    逻辑运算符

    2

        (双目运算符)

    自左至右

    13

      ?:

    条件运算符

    2

        (双目运算符)

    自左至右

    14

    =+=-=*=

    /=%=>>=<<=

     &=^=︱=

    赋值运算符

              2

    自右至左

    15

       ,

    逗号运算符(顺序求职运算符)

    自左至右

     

    说明:

    (1)同一优先级的运算符优先级别相同,运算次序由结合方向决定。例如,*与/具有相同的优先级别,其结合方向为自左至右,因此,3*5/4的运算次序是先乘后除。一和++为同一优先级,结合方向为自右至左,因此-i++相当于一(i++)。

    (2)不同的运算符要求有不同的运算对象个数,如十(加)和-(减)为双目运算符,要求在运算符两侧各有一个运算对象(如3+5、8-3等)。而++和-(负号)运算符是一元运算符,只能在运算符的一侧出现一个运算对象(如-a、i++、--i、(float)i、sizeof(int)、*p等)。条件运算符是C语言中唯一的一个三目运算符,如x?a:b。

    (3)从上述表中可以大致归纳出各类运算符的优先级:

    初等运算符(  )[  ]→ •

    单目运算符

    算述运算符(先乘除,后加减)

    关系运算符

    逻辑运算符(不包括!)

    条件运算符

    赋值运算符

    逗号运算符

    以上的优先级别由上到下递减。初等运算符优先级最高,逗号运算符优先级最低。位运算符的优先级比较分散。为了容易记忆,使用位运算符时可加圆弧号。

  • 相关阅读:
    JavaScript基础——第四章,JavaScript对象及初识面向对象
    JavaScript基础——第三章,JavaScript操作DOM对象
    Spring框架概述
    swagger注释@API详细说明
    JavaScript基础——第二章,JavaScript操作BOM对象
    JavaScript基础——第一章,基础
    JAVA基础——第二章,变量,数据类型和运算符
    JAVA基础——第一章,初识JAVA
    setinterval取消,element使用正则,git上传,js倒计时
    js复习
  • 原文地址:https://www.cnblogs.com/gaozp/p/4868960.html
Copyright © 2011-2022 走看看