C语言第2讲--数据的表示之基本数据类型

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
29
5.字符输出举例
例3.7(P51) main() 运行结果:A,B { char a,b; 65,66 a='a'; b='b'; /*或 b=98;可向字符变量赋以整数 */ a=a-32; b=b-32; printf("%c,%c\n%d,%d\n",a,b,a,b); } 注:C语言允许字符变量参与数值运算,即用字符 的ASCII 码参与运算。 大小写字母的ASCII 码相差32,因此运算后把小写 字母换成大写字母
结果:total1=300 total2=600
6
二、变量
变量以标识符命名。 变量的定义: 类型名 标识符1,标识符2,......标识符n; int a,b,c; float x,y,z;
注意事项:
/* a,b,c 为整型变量 */ /* x,y,z 为单精度型变量 */
(1)
(2)
变量必须先定义后使用
double a1,a2; a1,a2为double型变量名,每个 变量占8个字节的空间
20
3.浮点型数据的格式输出
#include <stdio.h> /*可省 */ void main() { float a=123.456; double b=1234.5678; printf(“a=%f\n”,a); printf(“b=%f\n”,b); }
输出结果: a=123.456001 b=1234.567800
21
4.printf( )函数中浮点型数据的输 出格式符(自阅)
%f :按小数形式输出实数(包括双精度),默认保留6位
小数。
%e(=%E):按指数形式输出实数(包括双精度) ,尾数 部分默认保留6位有效数字。 %.3f:按小数形式输出实数,保留3位小数。 %8.3f :按小数形式输出实数,保留3位小数,数据总宽
4
一、常数常量与符号常量
两类常量:常数常量和符号常量 符号常量: 用标识符表示的常量。 符号常量定义在函数之外,定义形式为: #define 标识符 常量 例如: #define M 20
含义:定义M为符号常量(习惯用大 写字母),其值为20
5
符号常量用法举例
#define PRICE 30 #include <stdio.h> void main() { int num1,total1,num2,total2; num1 = 10; num2 = 20; total1 = num1 * PRICE; total1 = num1 * 30 total2 = num2 * PRICE; printf(“total1=%d total2=%d \n”,total1,total2); }
unsigned u1,u2;
/*u1,u2为无符号短整型变量名,其存储的数字无 正负号之分*/
13
3.整型数据的格式输出
格式输出函数格式:
printf ( 格式控制串,输出项表列)
控制要输出 的内容的表 现方式
需要输出的内容 (常量、变量、 表达式等等)
14
3.整型数据的格式输出
格式输出函数示例:printf (“a=%d,\nb=%d”,a,b) 一、输出项表列: 一个或多个输出项组成(若多个、它们之间用逗 号隔开),常量、变量、函数、表达式等均可做输出 项。 二、格式控制串: 一般形式为双引号括住的字符序列,其中字符 可由下面3类组成: 1.“%”起头的输出项格式符(与输出项一一对应) 2.“\”起头的转义字符(输出所表示的字符或实现 其功能,见P40表3.1) 3.普通字符(原样输出)
[signed] int
[signed] long [int] unsigned int
16
32 16
-215~(215-1)即-32768~32767
-231~(231-1) 约-21亿~21亿 0~(216-1)即 0~65535 0~(216-1)即0~65535 0~(232-1) 约0~43亿
9
三、C 语言的标识符
判断下列用户标识符的合法性:
a1 abc.c o_o a-b abc123 3a int
√ × .不能作标识符 √ × -不能作标识符 √ × 不能以数字开头 × 关键字不能作标识符
10
ห้องสมุดไป่ตู้
§3.3 整型数据
类型名 [signed] short int 占据 表示范围 位数 16 -215~(215-1)即-32768~32767
12
2.整型变量的定义
整型变量的定义形式: 整型类型名 变量名1,变量名2,…变量名n; int a,b,c; /*定义a,b,c为短整型变量名。每
个变量占据2个字节*/
long int aa,bb,cc;/*aa,bb,cc为长整型变量
名,每个变量占据4个字节*/ long a1,a2; /*a1,a2为长整型变量名,每个变 量占据4个字节*/
其中,123,2.45 称为尾数部分,+2,-2 称为指数部分。
注意:用指数形式表示时,尾数部分不能
空,指数部分必须为整数。 例如: e+3、2.03e+0.5 都是非法的浮点型常量表示方法。
19
2.浮点型变量的定义
浮点型变量的定义形式:
浮点型类型名 变量名1,变量名2,……变量名n; 如: float a,b,c; a,b,c为float型变量名,每个变 量占4个字节的空间。
注:字符在计算机中按ASCII码存储。
23
空 格——32 0 0 1 0 0 0 0 0 A——65 0 1 0 0 0 0 0 1 a——97
0 1 1 0 0 0 0 1
b——98 0 1 1 0 0 0 1 0
24
1.字符常量
字符常量: 用单引号括起来的一个字符,
如: ‟A‟, ‟e‟。
度至少8位(超过8位时按实际位数)。
%8.3e (=%8.3E) :按指数形式输出实数,尾数部分保留3 位有效数字,数据总宽度至少8位。 %g (=%G) :按%e和%f中较短的一种格式输出实数。
22
§3.5 字符型数据
类型名 char 占据位数 8 表示范围 -27 ~ (27-1) 即-128~ 127
8
三、C 语言的标识符
标识符: 用来标识变量名、符号常量名、 函数名、数组名、类型名的有效字符序列。 标识符命名规则: 以字母或下划线开头; 由字母、数字、下划线组成;TC要求不超 过32个字符;不允许使用保留关键字。
注意:
* C语言标识符中大、小字母有区分。
* C语言规定,保留关键字不能作为标识符。 * C语言的保留关键字共有37个,见P378附录C。
17
§3.4 浮点型数据
占据 类型名 位数 float double 32 64 表示范围 ±10-37~ ±1038 ±10-307~ ±10308 有效位 数 6~ 7 15~16
18
1.浮点型常量的表示形式
浮点型常量的表示形式
十进制小数形式:如:.123, -2.5,123.等。 十进制指数形式:如:123e+2, 2.45e-2 (123*102)(2.45*10-2)
unsigned short [int]
unsigned long [int]
16
32
11
1.整型常量的表示方法
整型常量的表示方法:
十进制: 如: 123,
0,
-125
八进制: 以数字 0 开头,如:042, -0123 (34) (-83) 十六进制: 以数字0和字母x开头,
如:0x22, - 0X31 (34) (-49)
2
§3.1 C 的数据类型
整型数据
数值型 基本类型 字符型 数据类型 枚举类型 数组类型 结构体类型 共用体类· 型 指针类型
3
单精度型 双精度型
实型数据
特殊数据类型
§3.1 常量与变量
常量: 在程序运行中,其值不变的量 变量: 在程序运行过程中,值可以改变的量
main( ) { int a,b,sum; a=123; b=456; a=b; sum=a+b; b = 789; printf(“sum is %d\n",sum); }
15
4.整型数据的格式输出举例
#include <stdio.h> /*可省*/ 结果:a=123,b=-456 void main() a=123,b=65080 a=173,b=177070 { a=7b,b=fe38 int a=123,b=-456; printf(“a=%d,b=%d”,a,b);/*十进制*/ printf(“a=%u,b=%u”,a,b);/*无符号十进制*/ printf(“a=%o,b=%o”,a,b);/*八进制*/ printf(“a=%x,b=%x”,a,b);/*十六进制*/ }
26
3.转义字符的应用举例
printf("1234\nabcd"); 1234 abcd
printf("\' \'' \x41");
' " A
27
4.字符变量
字符变量的定义: char
例如:char c1,c2; 则变量c1、c2中可存储一个字符(实际存放 的是相应的一个0~255之间的无符号整数)。 存储形式: 按 ASCII码存储。 使用方法: 按字符使用:则使用字符本身。 按数值使用:则使用该字符的 ASCII码值。
30
变量的定义总结
类型名 任意标识符 含义
ab只能用于存放整 数(数值范围较小)
类比(储存特殊 物品的箱子)
仅用于存放较 少的金子
int long
ab ab
ab只能用于存放整 数(数值范围较大)
仅用于存放 大量的金子
float
double char
ab ab
ab
ab只能用于存放实 数(数值范围较小) ab只能用于存放实 数(数值范围较大)
第二讲 数据的表示
—基本数据类型
1
C语言的基本元素
标识符:用来标识变量名、符号常量名、 函数名、数组名、类型名的有效字符序列。 标点符号和运算符 关键字:实现特殊功能的字符组合。
main( ) { int a,b,sum; a=123; b=456; sum=a+b; printf(“sum is %d\n",sum); }
仅用于存放 较少的白银
仅用于存放大量的白银 ab只能用于存放字 符 仅用于存放黄铜
31
基本数据类型对比
数据类型
整型 长整型 单精度浮点型
注意:
a、’a’、”a”互不相同,分别为变量、字符常 量、字符串常量。
9、’9’、”9”互不相同,分别为整型常量、字 符常量、字符串常量。
25
2.转义字符
转义字符:一对单引号括起来并以“\”开头的字符 序列,如’\n‟、’\123‟, 长度为1个字节,其含义 不是字符本身,而是转成为新的意义。
几个常用的转义字符: (P48表3.3) 字符形式 功能 \n \t \b \’ \” \ddd \xhh 换行 横向跳格,跳到下一个Tab位置 退格(删除前面的一个字符) 表示一个单引号字符 表示一个双引号字符 表示1~3位8进制数所表示的字符 表示1~2位16进制数所表示的字符
16
5.printf( )函数中整型数据的输出 格式符(自阅)
%d(=%i) :以有符号十进制数形式输出整数。
%ld:以有符号十进制数形式输出长整数。
%5d:以有符号十进制数形式输出整数,至少占5位,右 对齐。 %-5d:以有符号十进制数形式输出整数,至少占5位,左 对齐。 %8ld:以有符号十进制数形式输出长整数,至少占8位, 右对齐。 %u:以无符号十进制数形式输出整数。 %o:以无符号八进制数形式输出整数 %x(=%X ):以无符号十六进制数形式输出整数。
28
变量名;
65 A
5.字符输出举例
例4.4(P75)
main( ) %c :按字符输出一个 字符,但不输出单引号。 { char c= 'a'; int i=97; printf("%c ",c); 0~255间的整数 printf("%d\n",c); printf("%c,%d\n",i,i); } 也能以 %c 输出 运行结果如下: a 97 a,97
每个变量必须被指定为一种类型
(3) 一般习惯上用小写字母表示变量, 用大写字母表 示符号常量,以示区别。(仅是习惯不是规定)
7
变量的先定义后使用示例
main( ) { int a,b,sum; a=123; b=456; sum=a+b; int c; /*错误,前面已有执行语句*/ c = 789; printf(“sum is %d\n",sum); }
相关文档
最新文档