c语音 数据类型、常量、变量

上传人:n**** 文档编号:88889704 上传时间:2019-05-12 格式:PPT 页数:33 大小:593KB
返回 下载 相关 举报
c语音 数据类型、常量、变量_第1页
第1页 / 共33页
c语音 数据类型、常量、变量_第2页
第2页 / 共33页
c语音 数据类型、常量、变量_第3页
第3页 / 共33页
c语音 数据类型、常量、变量_第4页
第4页 / 共33页
c语音 数据类型、常量、变量_第5页
第5页 / 共33页
点击查看更多>>
资源描述

《c语音 数据类型、常量、变量》由会员分享,可在线阅读,更多相关《c语音 数据类型、常量、变量(33页珍藏版)》请在金锄头文库上搜索。

1、,IT Education & Training,Neusoft Institute of Information,Date: May 12, 2019,第二章 数据类型及表达式,办公室:C7 EMAIL: 课件下载网址:ftp:/,任课教师:温荷,基本数据类型 常量 变量,授课要点,【例2.1】关于常量、变量及数据类型说明的程序实例。 #include main() int iNum=108; /*定义整型变量iNum并赋予常量值108 */ float fGrade=95.5; /*定义单精度实型变量fGrade并赋予实型常量值95.5 */ char ch=A; /*定义字符变量ch并赋

2、予字符常量值A */ char str10=“WenHe”; /*定义字符数组str10 */ printf(“学号:%dn“,iNum); /*输出各变量的值 */ printf(“姓名:%sn“,str); printf(“成绩:%fn“,fGrade); printf(“等级:%cn“,ch); ,案例回顾,问题分析(能否缺少数据类型定义),将【例2.1】的变量定义部分删掉,程序改为: #include void main() printf(“学号:%dn“,iNum); /*输出各变量的值 */ printf(“姓名:%sn“,str); printf(“成绩:%fn“,fGrade)

3、; printf(“等级:%cn“,ch); ,编译结果,结论:变量在使用之前必须先定义!,程序举例,【例2.2】关于常量、变量及数据类型说明的程序实例。 #include void main() int a=3; /*定义整型变量a并赋予常量值3 */ short r=6; /*定义短整型变量r并赋予常量值6*/ char c=a; /*定义字符变量c并赋予字符常量值a */ float pi=3.14; /*定义单精度实型变量pi并赋予实型常量值3.14 */ double s; /*定义双精度实型变量s */ s=pi*r*r; /*将pi*r*r值赋给s */ printf(“int:

4、%d,short:%d,char:%d,float:%d,double:%dn”,sizeof(a),sizeof(r),sizeof(c),sizeof(pi),sizeof(s); /*输出各变量占内存的字节数 */ printf(“a=%d,r=%d,c=%c,pi=%f,s=%lfn“,a,r,c,pi,s); /*输出各变量的值 */ ,问题分析(不同类型的表示),结果分析:变量可以被定义成不同的数据类型并赋值,不同类型的数据在内存中所占的字节数不同,通过sizeof()求得数据宽度。短整型、整型、字符型、单精度实型、双精度实型在内存中分别占2字节、4字节、1字节、4字节和8字节(不

5、同运行环境结果会有所差异,这里仅是Visual C+6.0的结果)。同时,这些数据在输出时所使用的输出格式控制符也不相同,分别为%d、%d、%c、%f和%lf形式。由此可见,数据表现为常量或变量,数据又具有不同的数据类型,不同数据类型的数据存储格式不同,数据的输出格式控制也不相同。注意:在Trubo C环境下,整型数据存储时在内存中占2字节。,运行结果,“数据类型”的意义: 定义了数据占用的内存空间大小 定义了数据在内存中的存储格式 决定了数据的运算规则(自身的行为) 为编译器提供了检查依据,数据类型的意义,数据类型是避免程序错误的初级(基本)手段,不是全部手段;,C语言的数据类型,单精度实型

6、 (float),双精度实型 (double),整型 (int),字符型 (char),枚举类型,数组类型,结构体类型,共用体类型,实型,基本类型,构造类型,空类型 (void),指针类型,数据类型,1.整型数据,2.实型数据,3.字符型数据,数据的存储格式、范围,整型数据的取值范围实例,【例2.3】观察以下程序的运行结果。 #include main() short sNum=32768; printf(“%dn”,sNum); 运行结果如下图所示:,整型数据分类及取值范围,整型数据分为一般整型(int)、短整型(short)和长整型(long),并且每一种类型又分为带符号(signed)和

7、无符号(unsigned)两种类型 。整型数据的特性见下表:,实型数据分类,实型数据分为单精度实型(float)、双精度实型(double)和长双精度实型(long double)。具体情况见下表所示 :,1.7103081.710308,字符型数据分类,字符型数据分为一般字符型(char)、带符号字符型(signed char)和无符号字符型(unsigned char)三种类型。具体情况见下表所示 :,基本数据类型 常量 变量,授课要点,标识符 定义:用来标识变量、常量、函数等的字符序列 组成: 只能由字母、数字、下划线组成,且第一个字母必须是字母或下划线 大小写敏感 不能使用关键字 长度

8、:最长32个字符 命名原则: 见名知意 不宜混淆 如l与I, o与0,例:判断下列标识符号合法性 sum Sum M.D.John day Date 3days student_name #33 lotus_1_2_3 char ab _above $123,M.D.John,3days,#33,char,$123,ab,常量与变量,常量,常量的存在形式 5 数字/整型常量 5.3 数字/浮点常量 “Black” 字符串常量 C 字符常量 推荐的常量表示 #define Max 100 Const int Max = 100; 使用命名常量的好处 增加程序可读性; 减少书写错误; 便于维护;,

9、整型常量实例,在C语言中,整型常量有十进制、八进制、十六进制三种进制表示方法,并且各种数制均可有正(+)负(-)之分,正数的“+”可省略。,【例2.4】定义一个八进制常量并显示在屏幕上 。 #include void main() const int num1=89; const int num2=047; const int num3=0X8A; printf(“%dn%xn%0xn”,num1,num2,num3); 运行结果如下图所示:,字符型常量实例,【例2.5】观察以下程序的运行结果 。 #include main() const int num1=97; const char ch

10、=a; printf(“%cn“,num1); printf(“%dn“,ch); 运行结果如下图所示:,字符型常量说明,(1)一般字符常量 :一般字符常量是用单引号括起来的一个普通字符,其值为该字符的ASCII代码值。如a、A、0、?等都是一般字符常量,但是a和A是不同的字符常量,a的值为97,而A的值为65。,字符型常量是由一对单引号括起来的一个字符。它分为一般字符常量和转义字符。字符常量在内存中占一个字节。,(2)转义字符 :C语言允许用一种特殊形式的字符常量,它是以反斜杠()开头的特定字符序列,表示ASCII字符集中控制字符、某些用于功能定义的字符和其他字符。如n表示回车换行符,表示字

11、符“”。常用的转义字符见1.4.1中所叙。,ASCII表,字符串常量说明,字符串常量也称字符串,由一对双引号括起来(“”)的字符序列。 字符串常量中的字符是连续存储的,并在最后自动加上字符0作为字符串结束标志。如字符串“a”在计算机内存中占两个连续单元,存储内容为字符a和0。,基本数据类型 常量 变量,授课要点,(1)数据类型:C语言的合法数据类型。如例中的int、short、char、float、double等。 (2)变量名表:变量名是C语言合法的标识符。变量名表可以包含多个变量名,彼此之间使用逗号分开,表示同时定义若干个具有相同数据类型的变量,如: float a,b;,变量及类型定义,

12、1. 变量定义,变量定义一般格式: 数据类型 变量名表; 如:int a; 对变量定义说明如下:,变量是指在程序执行过程中其值可以被改变的量。变量定义的实质是按照变量说明的数据类型为变量分配相应空间的存储单元,在该存储单元中存放变量的值。 C语言中,变量使用时遵循“先定义,后使用”的原则。,变量及类型定义,Memory,Value(5),Name (a),Type (int),int a = 5 ; /* 申请空间并初始化 */,一个变量必然包含以下概念: 名字(变量名) 类型(变量占用空间) 值(变量的内容) 地址(变量在内存中所处的位置),字节,Address,2. 变量的存储模式,变量及

13、类型定义,3. 变量初始化及赋值,在【例2.2】中“s=pi*r*r;”语句是通过赋值运算符“=”将“pi*r*r”的值赋给变量s,即该语句实现了给变量s的赋值。所以,变量值可以通过初始化取得,也可以在定义后,通过给变量赋值的方法取得。,在【例2.1】中,“int num=108; float grade=95.5; char ch=A;”的“=”是赋值运算符,用来给变量赋值。所以,以上四条语句都是在定义变量的同时给变量赋了值,称为变量的初始化。变量初始化是指定义变量同时,给变量一个初始值。,模仿练习,定义学生的学号、姓名、性别、年龄、两门功课的成绩并进行输入和输出。,讨论并总结,为什么要定义

14、数据类型? 不同数据类型的区别是什么? 常量在使用时和变量的区别是什么?,结论1定义数据类型的作用,定义了数据占用的内存空间大小 定义了数据在内存中的存储格式 决定了数据的运算规则(自身的行为) 为编译器提供了检查依据,结论2不同数据类型的区别,内存空间大小不同 数据表示有效位数不同 数据表示范围不同 对应的运算和操作不同,结论3常量和变量的区别,常量值在程序运行过程中不可改变,变量的值可改变 常量有直接常量和符号常量,通常用大写,变量通常用标识符表示,通常小写,学以致用,根据对学生基本信息的数据类型定义,扩展到对教师信息(姓名、年龄、工龄、工号、工资等信息)的各种数据进行定义,对学校信息(地址、名称、占地面积、类型、教职工人数、在校学生总数、部门个数等)的各种数据进行定义等等,作业每人必做,在一个程序中定义学过的简单数据类型变量各一个,给各变量赋值并输出。 在一个程序中定义学过的简单数据类型变量各一个,并且将各变量输入并输出,Neusoft Institute of Information,办公室:C7 EMAIL: 课件下载网址:ftp:/,

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 其它相关文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号