C语言入门学习3

mac2026-01-31  4

数据类型、运算符 与 表达式

●基本类型 (整型、实型、字符型、枚举型) ●构造类型 ●指针类型 ●空类型 各类型包含常量与变量

常量与变量

■常量与符号常量 常量 在程序运行过程中其值保持不变的量。 符号常量 用来代表一个常量的标识符。 #define PI 3.1415926 ■变量

其值可以改变的量。 变量的三要素: ① 变量名 每个变量有一个名字,作为识别该变量的标识符。 ② 变量的值 每个变量有一个值,变量的值是随时可以改变的。 ③变量的存储单元 每个变量占据一个内存单元,用于存放变量的值。

变量的命名规则:

由字母、数字和下划线组成 以字母或下划线开头

a、x1、y_2、_b1、_1c 合法 1x、a+2、Ф、Ω 不合法

变量必须先定义后使用。 程序中何时使用常量?何时使用变量?

整型数据

■整型常量

即整常数,c的整常数有三种形式: ①十进制整数 与数学中的整数一致,如:100,123,15等。 ②八进制整数 以0开头的整数,如:010,07,020等。 ③十六进制整数 以0x开头的整数,如:0x10,0xff,0x2a等。 ■整型变量 用于存放整数的变量。 分4种类型: ①基本型:int a 16位,可表示的数值范围:-32768—32767 ②短整型:short int b 16位,可表示的数值范围:-32768—32767 ③长整型:long int c 32位,数值范围:-2147483648—2147483647 ④无符号型:加上 unsigned 只存放正数。 如:unsigned int x 变量x为无符号整数,16位全表示数码, 数值范围:0—65535 在程序设计中,如果要使用整型变量,必须首先选择以上类型符来定义变量,然后才能使用;

实型数据

■实型常量

可使用两种形式表示: ①小数形式:如 1.23, 3.1415926 15.48 ②指数形式:如 1e-20 1.23e5 ■实型变量 用于存放实数的变量 分单精度和双精度两种: float a,b 定义a和b为单精度型变量 32位,7位有效数字,10-38—1038 double x,y 定义x和y为双精度型变量 64位,15位有效数字,10-308—10308

字符型数据

■字符常量

用单引号括起来的一个字符。 ’a’,’x’,’*’,’1’等

除此外,以’\’开头的字符如’\n’,’\t’等 称为转义字符,祥见书表3.3 ■字符型变量

用于存放字符的变量。 char c1,c2 定义c1和c2为字符型变量 c1=’a’; c2=’b’; 字符赋值

字符型变量存放一个字符,占据一个字节

■字符型数据的存储形式 存放ASCII码 不是 而是 如字符’a’在内存中存放97,’b’ 存放98。 与整数的存储形式一致,它们之间可以通用 一个字符数据既可以作字符用,也可以作整数用(取其ASCII代码)。 如:32+’a’相当于 32+97 若 int x; char c; 则 x=’a’; c=97; x=97; c=’a’; 都允许 ■字符串常量 用双引号括起来的字符序列。

如:”abcde”,”china” ”a”也属字符串。 注意”a”与’a’的区别。 对于: char c; c=”a”; 用法错误

字符串中每个字符各占一个字节,并且在字符串结尾加上一个结束标记’\0’

变量赋初值

在定义变量的同时给相应的变量赋初值。 如: int a=3; a float b=5.2; char c=’a’; int x=y=z=6; 效果: 在给变量分配内存单元的同时在相应的单 元中存放初值。

各数值型数据间的混合运算

整型、实型、字符型数据间可以进行混合运算,如: 10-‘a’*1.5 运算时,参加运算的两个数据如果类型不同,则首先将其类型转换成一致再运算,转换规则是: 将优先级低的类型转换到优先级高的类型

算术运算符与算术表达式

■基本的算术运算符 + - * / % ■算术表达式

用算术运算符将运算对象连接起来的式子 用于表达数学公式的式子 如:2*x+y-1/a 表达式经过运算最终得到一个值: 算术表达式的值 ■运算符的优先级与结合性

优先级:

在对表达式求值时,如果存在多个运算符,则运算的先后次序按运算符的优先级别从高到底进行。 运算符的优先级关系为: 高:* / % 低:+ - 如:a-2x 先算 * 2(a+2) 有括号的情况? 结合性: 如果在一个运算对象两边的运算符的优先级相同,则按规定的“结合方向”处理。 如:a-b+c b与-结合是从左到右,称“左结合性”。 b与+结合是从右到左,称“右结合性”。

每个运算符都有相应的优先级和结合性。 基本算术运算符都是左结合性。 ■强制类型转换

可以用强制类型转换运算符将一个表达式的值转换成所需类型: 如: (int)(x+y) (float)(7%3)

最新回复(0)