C语言程序设计-数据类型.ppt
《C语言程序设计-数据类型.ppt》由会员分享,可在线阅读,更多相关《C语言程序设计-数据类型.ppt(72页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、第三章 数据类型、运算符 与表达式C程序设计第三章 数据类型、运算符与表达式l算法处理的对象是数据。l数据是以某种特定的形式存在的,如整数、实数、字符等。l所谓数据结构,就是指数据的组织形式。完整的程序设计数据结构算法完整的程序设计数据结构算法程序设计方法语言工具程序设计方法语言工具C程序设计第三章 数据类型、运算符与表达式主要内容数据成分运算成分C程序设计第三章 数据类型、运算符与表达式一、数据类型C语言的数据类型构造类型指针类型 *空类型(无值类型)void枚举类型 enum数组类型结构类型 struct联合类型 union基本类型整型 int字符型 char实型(浮点型)单精度实型 fl
2、oat双精度实型 doubleC程序设计第三章 数据类型、运算符与表达式二、变量与常量l常量:指在程序运行过程中,值不能发生变化的量。l常量可以有不同类型:l比如,这些常量称为字面常量或直接常量整型 100,125,-100,0实型 3.14,0.125,-3.789字符型 a,b,2字符串“a”,“ab”,“1232”C程序设计第三章 数据类型、运算符与表达式符号常量定义与使用l定义:使用definedefine PI 3.14l使用:area=PI*3*3程序中用#define命令行定义PI代表常量3.14,此后凡在本文件中出现的PI都代表3.14,可以和常量一样进行运算。PI=3.141
3、5 错误!常量值不能改变!习惯上,符号常量名用大写,变量名用小写l优点:含义清楚;一改全改C程序设计第三章 数据类型、运算符与表达式例例3.1#define PRICE 30#include void main()int num,total;num=10;total=num*PRICE;printf(total=%d,total);C程序设计第三章 数据类型、运算符与表达式变量l变量:程序运行期间值可以发生改变的量。变量代表内存中具有特定属性的一个存储单元,它用来存放数据,这就是变量的值。C程序设计第三章 数据类型、运算符与表达式l变量名实际上是一个以一个名字对应代表一个地址。l在对程序编译连
4、接时由编译系统给每一个变量名分配对应的内存地址。l从变量中取值,实际上是通过变量名找到相应的内存地址,从该存储单元中读取数据。C程序设计第三章 数据类型、运算符与表达式变量定义l数据类型 变量名;l比如,int a;float x,y;C程序设计第三章 数据类型、运算符与表达式变量命名l变量命名的规定:语言规定标识符只能由字母、数字和下划线三种字符组成,且第一个字符必须为字母或下划线。变量名不能与关键字重名 例:例:sum,_total,month,Student_name,lotus_1_2_,BASIC,li_ling M.D.John,¥123,3D64,ab C程序设计第三章 数据类型
5、、运算符与表达式注意:lC语言区分大小写,即:ABC与Abc认为是两个不同的变量。l建议变量名的长度最好不要超过8个字符。l在选择变量名和其它标识符时,应注意做到“见名知意”,即选有含意的英文单词(或其缩写)作标识符。(intStu)l要求对所有用到的变量作强制定义,也就是“先定义,后使用”。C程序设计第三章 数据类型、运算符与表达式补充C 语言的关键字(附录语言的关键字(附录B)l关键字(key words)是C语言预定义的词法符号,具有固定含义和用途,不能作为标识符使用。C语言的关键字:auto break case char const continue default do doubl
6、e else enum extern float for goto if int long register return short signed sizeof static struct switch typedef union unsigned void volatile whilel 注意,关键字必须小写。C程序设计第三章 数据类型、运算符与表达式1、整型l数据在内存中是以二进制形式存放的,整型数据占用两个字节的空间(TurboC2.0及TurboC+3.0中为两个字节,教材例子也假定整型占两个字节,但是在VC+6.0中则分配4个字节)。l数据采用补码形式表示。C程序设计第三章 数据类
7、型、运算符与表达式1)整型常量l十进制整数123,-123l八进制整数。以0开头的数0123,-0123l十六进制整数以0 x开头的数0 x1A,-0 xFDC程序设计第三章 数据类型、运算符与表达式2)整型变量整型变量在内存中的存放形式l整型数据在内存中的存放形式数据在内存中是以二进制形式存放的l实际上,数值是以补码(complement)表示的。10在内存中的存放在内存中的存放C程序设计第三章 数据类型、运算符与表达式10在内存中的存放在内存中的存放C程序设计第三章 数据类型、运算符与表达式整型变量的分类l基本整型 intl短整型 short intl长整型 long intl三者区别在于
8、:可以表示的整数范围不同。C程序设计第三章 数据类型、运算符与表达式 类型 类型说明符 长度 数的范围 基本型 int 2字节 -3276832767 短整型 short 2字节 -215215-1 长整型 long 4字节 -231231-1C程序设计第三章 数据类型、运算符与表达式整型的符号l整型数据还有有符号数和无符号数之分。signedunsignedC程序设计第三章 数据类型、运算符与表达式整型共六种整型共六种有符号基本整型有符号短整型有符号长整型无符号基本整型无符号短整型无符号长整型(signed)int(signed)short(int)(signed)long(int)unsi
9、gned intunsigned short(int)unsigned long(int)注意:注意:括号表示其中的内容是可选的。C程序设计第三章 数据类型、运算符与表达式整数(13为例)在存储单元中的存储情况C程序设计第三章 数据类型、运算符与表达式3)整型变量的定义和使用l定义:定义:int a,bint a,b(指定变量、为整型)(指定变量、为整型)unsigned short c,d;unsigned short c,d;(指定变量、为无符号短(指定变量、为无符号短整型)整型)long e,f;long e,f;(指定变量、为长整型)指定变量、为长整型)对变量的定义,一般是放在一个函数
10、的开头的声明部分(也可以放在函数中某一分程序内,但作用域只限它所在的分程序)l使用:a=12;b=10;a=12;b=10;c=a+b;c=a+b;赋值语句C程序设计第三章 数据类型、运算符与表达式溢出int a,b;a=32767;b=a+1;0 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1a0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0b-32768C程序设计第三章 数据类型、运算符与表达式4)整型常量的类型l整型变量可分为int、short int、long int和unsigned int、unsigned short、unsigned long等类别
11、。那么常量呢?在将一个整型常量赋值给上述几种类别的整型变量时如何做到类型匹配?l请注意以下几点:(1)一个整数,如果其值在-32768+32767范围内,认为它是int型,它可以赋值给int型和long int型变量。(2)一个整数,如果其值超过了上述范围,而在-2147483648+2147483647范围内,则认为它是长整型,可以将它赋值给一个long int型变量。C程序设计第三章 数据类型、运算符与表达式(3)如果某一计算机系统的c版本(例如turbo c)确定short int与int型数据在内存中占据的长度相同,则它的表数范围与int型相同。因此,一个int型的常量也同时是一个sh
12、ort int型常量,可以赋给int型或short int型变量。(4)一个整常量后面加一个字母u,认为是unsigned int型,如12345u,在内存中按unsigned int规定的方式存放。如果写成-12345u,则先将-12345转换成其补码53191,然后按无符号数存储。(5)整常量后加一个字母l或L,则认为是long int型常量。l例如123l、432l、0l等,这往往用于函数调用中。如果函数的形参为long int型,则要求实参也为long int型,此时用123作实参不行,而要用123l作实参。C程序设计第三章 数据类型、运算符与表达式2、浮点型l1)浮点型常量两种表两种
13、表示形式示形式小数小数指数指数0.1230.1233 3e-3e-3注意注意:字母e(或E)之前必须有数字,且e后面的指数必须为整数:1e31e3、1.8e-31.8e-3、-123e-6-123e-6、-0.1e-3-0.1e-3e3e3、2.1e3.52.1e3.5、.e3.e3、e e C程序设计第三章 数据类型、运算符与表达式规范化的指数形式l字母e之前的小数中,小数点左边有且仅有一位非零数字。l例如例如:123.456可以表示为:123.456e0,12.3456e1,1.23456e2,0.123456e3,0.0123456e4,0.00123456e 其中的1.23456e21
14、.23456e2称为“规范化的指数形式”。C程序设计第三章 数据类型、运算符与表达式浮点数在内存中的存放l一个浮点型数据一般在内存中占4个字节(32位)。l分为小数部分和指数部分,分别存放。C程序设计第三章 数据类型、运算符与表达式2)浮点型变量l单精度型 floatl双精度型 doublel长双精度型 long double类型类型 位数位数 数的范围数的范围 有效数字有效数字float 32float 32 10 10-37-37 10 1038 38 67 67 位位doubledouble型型 64 64 10 10-307-3071010308308 1516 1516位位long
15、double 128 10long double 128 10-4931-493110104932 4932 18191819位位C程序设计第三章 数据类型、运算符与表达式浮点型数据的舍入误差l例3.4main()float a,b;a=123456,789e5;b=a+20;printf(%f,b);只有7位有效数字时准确的因此,避免将一个很大的数和很小的数相加减C程序设计第三章 数据类型、运算符与表达式浮点型常量的运算lC编译系统将实型常量作为双精度来处理。例如已定义一个实型变量f,有如下语句:f=2.45678*4523.65 系统将2.45678和4523.65按双精度数据存储(占64
16、位)和运算,得到一个双精度的乘积,然后取前7位赋给实型变量f。(除非在数据后加F或f)l一个实型常量可以赋给一个float型、double型或long double变量。根据变量的类型截取实型常量中相应的有效位数字。例如,float a;a=111111111;由于float型变量只能接收7位有效数字C程序设计第三章 数据类型、运算符与表达式3、字符型l1)字符常量:单引号括起来的一个字符l比如,a?l注意:a 与 A是两个不同的字符常量。a,A,1a,A,1abcabc、“a”“a”C程序设计第三章 数据类型、运算符与表达式补充C 语言的字符集(附录语言的字符集(附录A)l C 的字符集(c
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言程序设计 数据类型
限制150内