00342高级语言程序设计(C语言)目录 第三章 数据类型、运算符和表达式

第一节        数据类型

第二节        常量

        一、整型常量

                整型常量(正整数、负整数、0)

                C语言中,整型常量有三种书写形式:①八进制整型常量,必须以0开头,由数字0~7组成的数字串②十进制整型常量,没有前缀,由数字0~9组成的数字串③十六进制整型常量,必须以0X或0x开头,由数字0~9、a~f、A~F组成的字符串

                正整数前面的加号“+”可以省略

                整型常量在16为PC中,一般占用内存的2字节。值域为-2^{15}~(2^{15}-1),即-32768~32767。

                整型常量分为基本整型、短整型、长整型(数值后面L或l,占用内存的4字节。值域为-2^{31}~(2^{31}-1),即-2147483648~2147483647),又分为八进制、十进制和十六进制三种书写形式。

                整型进制转换

        二、实型常量

                实型常量又称为浮点型常量或实数,只使用十进制。C语言中,两种书写形式:①十进制小数形式,例,0.123、123.、-.123②指数形式(用E或e表示)aEb或aeb,a\times 10^{b},例,3.45E-2(0.0345)、.52378e4(5237.8)

                实型常量在16为PC中,一般占用内存的4字节,值域为-2^{38}~2^{38},有效数字是7位。

        三、字符常量

                字符常量包括普通的字符常量(一对单引号括起来 ' ')和转义常量(反斜杠 \ 开头),占用内存的1字节。

                

常用的转义字符常量
转义字符含义转义字符含义
\n回车换行\t横向跳到下一个制表位置
\v垂直制表\b左退一格
\r回车\f换页
\0空字符\\反斜杠
\'单引号\"双引号
\ddd1~3位八进制数所代表的字符,例如'\103'代表字符'C'\xhh 或 \Xhh1~2位十六进制数所代表的字符,例如'x46'代表字符'F'

                C语言中,空字符用转义字符“\0”表示,其值为0;空格符号是ASCII字符集中的一个可显示字符,其ASCII值是32,在屏幕上显示为空格。

        四、字符串常量

                字符串常量又称为“字符串”。编译时自动在字符串的末尾处加一个转义字符 '\0'作为字符串的结束标志,长度为n个字符的字符串占用n+1字节。

字符常量和字符串常量的不同
字符常量字符串常量
定界符不同单引号双引号
长度不同固定长度为1可以是0,也可以是某个整数
存储要求不同存储的是ASCII码值,占用内存1字节除了要存储有效字符外,还要存储一个字符串结束标志'\0'

        五、符号常量

#define 符号常量  常量

                其中,常量可以是任意类型。#define是一个编译预处理命令,成为宏定义命令。

【例3-1】 定义符号常量的例子
   #define PI 3.14159   /*定义符号常量PI,其值等于实型常量3.14159*/
   #define N  10   /*定义符号常量N,其值等于整型常量10*/
   #define M 'm'   /*定义符号常量M,其值等于字符常量'm'*/

使用符号常量的优势在于:①提高程序的可读性。②便于程序修改。

第三节        变量

        变量具有三种属性,①变量名 ②变量值 (在程序运行中变量的值存在内存,并通过变量名来引用变量)③变量类型(“&变量名”表示变量的地址)

        一、变量的数据类型

                1、整型变量

                        ①基本整型,类型关键字为int,占用内存2字节(32位编译器占4字节)

                        ②短整型,类型关键字为short [int],占用内存2字节

                        ③长整型,类型关键字为long [int],占用内存4字节

                        ④无符号基本整型(unsigned [int])

                        ⑤无符号短整型(unsigned short)

                        ⑥无符号长整型(unsigned long)

                2、实型变量

                        ①单精度实型,类型关键字为float,占用内存4字节,保留6~7位有效数字

                        ②双精度实型,类型关键字为double,占用内存8字节,保留15~16位有效数字

                3、字符型变量

                        类型关键字为char,占用内存1字节,存放的是ASCII码值

变量的类型及其含义
数据类型数据类型符占用字节数/字节数值范围
基本整型int2(或 4)同短整型(或长整型)
短整型short [int]2-32769~32767(-2^{15}~(2^{15}-1))
长整型long [int]4-2 147 483 648~2 147 483 647(-2^{31}~(2^{31}-1))
无符号基本整型unsigned [int]2(或 4)同无符号短整型(或无符号长整型)
无符号短整型unsigned short20~65535(0~2^{16}-1)
无符号长整型unsigned long40~4 294 967 295(0~2^{32}-1)
单精度实型float4-3.4\times 10^{38} ~ 3.4\times 10^{38}(保留7位有效数字)
双精度实型double8-1.7\times 10^{308} ~ 1.7\times 10^{308}(保留15位有效数字)
字符型char1-128`127

        二、变量的定义和初始化

        1、变量的定义

                C语言规定,任何变量必须先定义后使用。

                数据类型符  变量名1[,变量名2,...];

                【例3-2】定义有符号整型变量的例子。

int radius, area;
short m,n;
long l1,l2;

                【例3-3】定义无符号整型变量的例子。

unsigned i,j,k;
unsigned int x,y;
unsigned short s1,s2;
unsigned long r;

                【例3-4】定义实型变量的例子。

float radius, area;
double f1, f2;

                【例3-5】定义字符型变量的例子。

char ch1, ch2;

        2、变量的初始化

                数据类型符  变量名1 = 初值1[,变量名2[=初值2],...];

                【例3-6】有符号整型变量初始化的例子。

int redius =2, area;
short m=1, n=2;
long l1=123L,l2;

                【例3-7】无符号整型变量初始化的例子。

unsigned i=1,j,k;
unsigned int x,y=0;
unsigned short s1=1,s2;
unsigned long r=1000;

                【例3-8】实型变量初始化的例子。

float redius=2.5,area=0.0;
double f1=1.234,f2=5.6E2;

                【例3-9】字符型变量初始化的例子。

char ch1='Y',ch2='N';

        三、有名变量的定义

        C语言中,如果定义了变量并赋予初值,但不希望在程序中对其进行修改,则可以将该变量定义为有名常量。

         const 数据类型符  变量名1 = 初值1[,变量名2=初值2,...];

                【例3-10】有名常量初始化的例子。

const int j=1,k=2;
const float f1=3.5,f2=6.8;
const char ch1='Y',char2='N';

第四节        运算符和表达式

        1、运算符分类

C语言运算符的分类
基本运算符算术运算符+(加)、-(减)、*、/、%、+(取正)、-(取负)
自增、自减运算符++、--
关系运算符>、>=、<、<=、==、!=
位运算符位逻辑运算符~、&、|、^
位移位运算符<<、>>
逻辑运算符&&、||、!
赋值运算符基本赋值运算符 =
复合赋值运算符 +=、-=、*=、/=、%=、|=、^=、>>=、<<=
条件运算符?:
逗号运算符,
数据长度运算符sizeof
专用运算符强制类型转换运算符()
成员运算符->、.
下标运算符[ ]
指针运算符&、*

        2、运算对象

                单目运算符、双目运算符、三目运算符

        3、优先级

        4、结合性

C语言运算符的优先级和结合性
优先级运算符结合性
1( )    [ ]    ->      .从左至右
2!  ~  ++  --  *(取内容)&(取地址)+(取正)-(取负)sizeof从右至左
3*(乘)/   %从左至右
4+(加)-(减)
5<<   >>
6<  <=   >  >=
7==  !=
8&(位逻辑与)
9^
10|
11&&
12||
13?:
14=  +=  -=  *=  /=  %=  &=  ^=  |=  >>=  <<=从右至左
15,从左至右

第五节        数据类型转换

  • 4
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值