[理学]第3章 C语言的数据类型.ppt

  1. 1、本文档共75页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[理学]第3章 C语言的数据类型

§3.1 C的数据类型 数据结构 + 算法 = 程序 C语言提供的数据元素的类型: C语言中,数据有常量和变量之分,它们分别属于以上这些类型。 在程序中对用到的所有数据都必须指定其数据类型 §3.2 常量与变量 3.2.1 常量(Constant)与符号常量 常量: 在程序运行过程中,其值不能被改变的量。 如: 12、3、0、-3为整型常量, 4.6、-1.23为实型常量 ‘a’,‘d’为字符常量 这种常量也称为字面常量或直接常量 符号常量:代表常量的标识符(符号),一个标识符代表一个常量。 [例3.1] #define PRICE 30 /*PRICE即为符号常量,代表30*/ main() { int num, total;? num = 10;? total = num * PRICE;? printf(total = %d, total); } ?3.2.2 变量(Variable) 变量:在程序运行过程中,其值可以被改变的量。 说明: 1、在源程序中,变量用标识符表示(标识符只能由字母、数字、下划线组成,且第一个字符必须为字母或下划线)。在C语言中,大写字母和小写字母是两个不同的字符,一般变量名用小写字母表示。 2、变量在内存中占据一定的存储单元。不同类型的变量,所占据的内存单元数不同。 3、变量名的类型表明存储单元的数量(例如,整型变量int,占2字节存储单元。单精度实数float占4字节); 4、变量名是一个符号地址,可以用运算符取得存储单元的地址。 合法变量名: 5、程序设计中变量的命名: (1)必须满足C语言的语法规定。(以字母、下划线开始,只能由字母、数字、下划线构成)。 (2)应该“见名知意”。 (3)变量名的长度:C语言中未统一规定,随不同开发系统而变。Turbo C 2.0缺省允许的变量名长度为32。 例如:合法变量名: sum average class day month Student_name _above lotus_1_2_3 basic 6、C语言对变量的要求:“先定义、后使用” §3.3 整型数据 3.3.1 整型常量 C语言中数值常量的表达方式: 3.3.2 整型变量 一、整型变量的分类: 二、整型数据在内存中以补码形式存放 例如: int i; i=10; 数据在内存中实际存放的情况如图所示: 若i=-10;因为-10的补码为1111111111110110,则在内存中的存放形式为: ANSI标准定义的整数类型 (方括号中的signed可省略) 三、整型变量的定义 例如: int a,b; /* 指定变量a、b为整型 */ unsigned short c, d; /*指定变量c、d为无符号短整型 */ long e,f; /* 指定变量e、f为长整型*/ 程序在函数的开头部分定义变量。 [例3.2] main() {int a,b,c,d; /* 指定变量a、b、c、d为整型 */ unsigned u; / * 指定变量u为无符号整型 */ a = 12; b = -24; u = 10;? c = a + u; d = b+u;? printf(a+u = %d, b+u = %d\n, c,d); } 程序运行显示:a+u = 22, b+u = -14 ? 三、整型常量的类型 1、整型常量的值在-32768~+32767范围内,编译器认为是int类型。 2、整型常量的值超过上述范围,而在 -2147483648~+2147483647范围内,编译器认为是long类型。 3、在整型常量的值后面加字母L(大写L或小写l),则告诉编译器,把该整型常量作为long类型处理。例:123L、0L。 4、一个整型常量后面加一个字母u,认为是unsigned 型。如-12345u,则将其转换成补码53191,然后按无符号数存储。 例3.3 main() {int a,b; a=32767; b=a+1; printf(“%d,%d”,a,b); } 运行结果:32767,-32768 出现问题的原因:溢出 解决办法:将b定义为long int,即得结果32768 §3.4 实型数据 实数(real number)又称为浮点数(float),有两种表达方式: 1、十进制小数形式。由数字和小数点组成。(必须有小数点) 如:0.123、 .123、 123.0、 123.、 0.0 2、指数形式。字母e(或E)之前必须有数字,且e后面的指数必须为整数。 如123e3或123E3、123E-2 规范化的指数形式:在字母e或E之前的小数部分中,小数点左边应有

文档评论(0)

jiupshaieuk12 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:6212135231000003

1亿VIP精品文档

相关文档