哈工大c语言课程第二章c语言
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
哈工大c语言课程第二章c语言
数据类型(Data Type)
数据为什么要区分类型? 不同类型的数据代表不同的
数据表示形式 合法的取值范围 占用内存空间大小 可参与的运算种类
从基本数据类型到复杂数据类型
基本数据类型 构造数据类型
C
语 言 程 序
数据类型
数据类型总表
整型
短整型short 整型int 长整型long
16
0~65535
unsigned long
32
0~4294967295
实有 型有
float double
32
3.4e-38~3.4e38
64
1.7e-308~1.7e308
第 二 章
字有
符 型
无
char unsigned char
8
-128~127
8
0~255
说明:数据类型所占字节数随机器硬件不同而不同,上表以IBM PC机为例:
第
三二
章数章
据
描 述
<
C
语 字符常量
言
程
❖定义:用单引号括起来的单个普通字符或转义字符.
序 设
❖字符常量如的值‘:a’ 该‘字A’符‘的?’ AS‘C\nI’I码‘\值101’
计
例❖转转义转义字义字如符字符举符:‘‘例反及A0(斜其c’’——h线含2——_后义0640面:581,.c跟,,c一h‘‘\2n个_a’0’——字04——符.c1)9或07,一个代码值表示
\r printf("\\C P回ro车gram\\\n"); \f
第 \a <printf("Turb响o铃\'C\'");
\\
Turbo ‘C’ 换页 反斜线
二 \‘ }
单引号
\“
双引号
章
\ddd
3位例8进m制a数in(代) 表的字符 \xhh
2运位行16结进果制:数代表的字符
{ printf(“Y\b=\n”);
unsigned 用来修饰char、int、short和long,说明他们是无符号的整数 (正整数和0)
C
语
言 程
常量
序
设
❖定义:程序运行时其值不能改变的量(即常数)
计
❖分类:
符号常量:用标识符代表常量
一定如般义用格大 式#写 :d字e#f母dineefineP例RI符符C号E号常常量3量0 举常例量(ch2_1.c)
是宏定义预处理命令,不是C语句
第 二
章
直接常量: 整型常量 实型常量 字符常量 字符串常量
> > > >
#define PRICE 30
main() {
运行结果:total=300
int num,total;
num=10;
total=num*PRICE;
printf("total=%d",total);
设
计
基本类型
单精度型float
实型
双精度型double
字符类型char
C
数 据
构造类型
数组 结构体struct 共用体union
数据类型决定:
1. 数据占内存字节数 2. 数据取值范围 3. 其上可进行的操作
第 二
类 型
指针类型
枚举类型enum
章
空类型void
< > 定义类型typedef
C
语
基本数据类型
在整00常1122量33后加==字((母l或83L,))认1100为它是long int 型常量
00xx112233== ((
291
))10 10
第
例00XX36例f05fff05031062==与为 为((12ilnoLtn型2g5i5nt
))10
型10
三二
章数章
据
描 述
<
C
语
言
程 序
实型常量(实数或浮点数)
cchh==“‘AA’”; ;
<
枚举(Enumeration)常量
一个被遗忘的角色 从程序来窥其一斑
enum weeks {MON, TUE, WED, THU, FRI, SAT, SUN}; enum weeks today; enum response {no, yes, none}; enum response answer;
屏幕显示:=
<
}
打印机输出:¥
C
语
字符串常量
言
程
❖定义:用双引号(“”)括起来的字符序列
序 设
❖存储:每个字符串尾自动加一个 ‘\0’ 作为字
计
符串结束标志
例 字符串“hello”在内存中
h e l l o \0
例 空串 “”
\0
❖字符常量与字符串常量不同
例 ‘a’ a
“a” a \0
第
二 章
例例:: cchhaarr cchh;;
<>
数据类型修饰符
short short int,短整数,一般2个字节长。通常简写为short
long long int,长整数,一般是4个字节长。通常简写为long long double,长双精度(高精度)浮点数,一般是10个字节长。
signed 用来修饰char、int、short和long,说明他们是有符号的整数 (正整数、0和负整数)。一般缺省都是有符号的,所以这个修饰符 通常省略
设 计
❖表示形式:
十进制数形式:(必须有小数点) 如0.123, .123,
123.0, 0.0, 123.
指数形式:(e或E之前必须有数字;指数必须为整数) 如12.3e3 ,123E2, 1.23e4 , e-5 , 1.2E-3.5
❖实型常量的类型
默认double型 在实型常量后加字母f或F,认为它是float 型
言
程 类型 符号
序
关键字
设
(signed)int
计
有 (signed)short
所占位数
数的表示范围
16
-32768~32767
ຫໍສະໝຸດ Baidu
16
-32768~32767
整
(signed)long
型
unsigned int
32
-2147483648~2147483647
16
0~65535
无 unsigned short
<>
}
C
语
言 程
整型常量(整常数)
序
❖三种形式:
设 计
十进制整数:由数字0~9和正负号表示.如 123,-456,0
八进制整数:由数字0开头,后跟数字0~7表示.如0123,011
十六进制整数:由0x开头,后跟0~9,a~f,A~F表示.
如0x123,0Xff
❖整型常量的类型
根据问问其题题值::所在范围确定其数据类型
转义m字ai如符n() ‘例\1:01含’ 义-----------‘A转’ 义字‘\符012’ ------含---义--’\n’
\n {
\v
pprriinnttff((‘‘""\\36I\‘1A70s垂06’a’1-’y直换--:-\-\-x-制行"---4-H--表--2---o’--\Cw--1--\0--na--1-"r’’’e)0-;’-y-o-’-u-?-’\\\‘‘tb\"\\x\x4n468"113)’;’’--------运 AI\--Cs----a--B行---Py--6C:-r结-”5o--H-g-果-o水(r-aw’:退平m)aa’(\格制r屏e表幕yo显u?示” )
数据类型(Data Type)
数据为什么要区分类型? 不同类型的数据代表不同的
数据表示形式 合法的取值范围 占用内存空间大小 可参与的运算种类
从基本数据类型到复杂数据类型
基本数据类型 构造数据类型
C
语 言 程 序
数据类型
数据类型总表
整型
短整型short 整型int 长整型long
16
0~65535
unsigned long
32
0~4294967295
实有 型有
float double
32
3.4e-38~3.4e38
64
1.7e-308~1.7e308
第 二 章
字有
符 型
无
char unsigned char
8
-128~127
8
0~255
说明:数据类型所占字节数随机器硬件不同而不同,上表以IBM PC机为例:
第
三二
章数章
据
描 述
<
C
语 字符常量
言
程
❖定义:用单引号括起来的单个普通字符或转义字符.
序 设
❖字符常量如的值‘:a’ 该‘字A’符‘的?’ AS‘C\nI’I码‘\值101’
计
例❖转转义转义字义字如符字符举符:‘‘例反及A0(斜其c’’——h线含2——_后义0640面:581,.c跟,,c一h‘‘\2n个_a’0’——字04——符.c1)9或07,一个代码值表示
\r printf("\\C P回ro车gram\\\n"); \f
第 \a <printf("Turb响o铃\'C\'");
\\
Turbo ‘C’ 换页 反斜线
二 \‘ }
单引号
\“
双引号
章
\ddd
3位例8进m制a数in(代) 表的字符 \xhh
2运位行16结进果制:数代表的字符
{ printf(“Y\b=\n”);
unsigned 用来修饰char、int、short和long,说明他们是无符号的整数 (正整数和0)
C
语
言 程
常量
序
设
❖定义:程序运行时其值不能改变的量(即常数)
计
❖分类:
符号常量:用标识符代表常量
一定如般义用格大 式#写 :d字e#f母dineefineP例RI符符C号E号常常量3量0 举常例量(ch2_1.c)
是宏定义预处理命令,不是C语句
第 二
章
直接常量: 整型常量 实型常量 字符常量 字符串常量
> > > >
#define PRICE 30
main() {
运行结果:total=300
int num,total;
num=10;
total=num*PRICE;
printf("total=%d",total);
设
计
基本类型
单精度型float
实型
双精度型double
字符类型char
C
数 据
构造类型
数组 结构体struct 共用体union
数据类型决定:
1. 数据占内存字节数 2. 数据取值范围 3. 其上可进行的操作
第 二
类 型
指针类型
枚举类型enum
章
空类型void
< > 定义类型typedef
C
语
基本数据类型
在整00常1122量33后加==字((母l或83L,))认1100为它是long int 型常量
00xx112233== ((
291
))10 10
第
例00XX36例f05fff05031062==与为 为((12ilnoLtn型2g5i5nt
))10
型10
三二
章数章
据
描 述
<
C
语
言
程 序
实型常量(实数或浮点数)
cchh==“‘AA’”; ;
<
枚举(Enumeration)常量
一个被遗忘的角色 从程序来窥其一斑
enum weeks {MON, TUE, WED, THU, FRI, SAT, SUN}; enum weeks today; enum response {no, yes, none}; enum response answer;
屏幕显示:=
<
}
打印机输出:¥
C
语
字符串常量
言
程
❖定义:用双引号(“”)括起来的字符序列
序 设
❖存储:每个字符串尾自动加一个 ‘\0’ 作为字
计
符串结束标志
例 字符串“hello”在内存中
h e l l o \0
例 空串 “”
\0
❖字符常量与字符串常量不同
例 ‘a’ a
“a” a \0
第
二 章
例例:: cchhaarr cchh;;
<>
数据类型修饰符
short short int,短整数,一般2个字节长。通常简写为short
long long int,长整数,一般是4个字节长。通常简写为long long double,长双精度(高精度)浮点数,一般是10个字节长。
signed 用来修饰char、int、short和long,说明他们是有符号的整数 (正整数、0和负整数)。一般缺省都是有符号的,所以这个修饰符 通常省略
设 计
❖表示形式:
十进制数形式:(必须有小数点) 如0.123, .123,
123.0, 0.0, 123.
指数形式:(e或E之前必须有数字;指数必须为整数) 如12.3e3 ,123E2, 1.23e4 , e-5 , 1.2E-3.5
❖实型常量的类型
默认double型 在实型常量后加字母f或F,认为它是float 型
言
程 类型 符号
序
关键字
设
(signed)int
计
有 (signed)short
所占位数
数的表示范围
16
-32768~32767
ຫໍສະໝຸດ Baidu
16
-32768~32767
整
(signed)long
型
unsigned int
32
-2147483648~2147483647
16
0~65535
无 unsigned short
<>
}
C
语
言 程
整型常量(整常数)
序
❖三种形式:
设 计
十进制整数:由数字0~9和正负号表示.如 123,-456,0
八进制整数:由数字0开头,后跟数字0~7表示.如0123,011
十六进制整数:由0x开头,后跟0~9,a~f,A~F表示.
如0x123,0Xff
❖整型常量的类型
根据问问其题题值::所在范围确定其数据类型
转义m字ai如符n() ‘例\1:01含’ 义-----------‘A转’ 义字‘\符012’ ------含---义--’\n’
\n {
\v
pprriinnttff((‘‘""\\36I\‘1A70s垂06’a’1-’y直换--:-\-\-x-制行"---4-H--表--2---o’--\Cw--1--\0--na--1-"r’’’e)0-;’-y-o-’-u-?-’\\\‘‘tb\"\\x\x4n468"113)’;’’--------运 AI\--Cs----a--B行---Py--6C:-r结-”5o--H-g-果-o水(r-aw’:退平m)aa’(\格制r屏e表幕yo显u?示” )