资源描述:
《chap2 基本程序语句 C 语言.ppt》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、2.1C的数据类型及取值范围1.一个C程序包括的内容程序=算法+数据结构+程序设计方法+语言工具和环境2.C的数据类型第2章基本的程序语句数据类型基本类型构造类型指针类型()空类型(void)字符型(char)数值类型枚举类型(enum)数组类型([])结构体类型(struct)共用体类型(union)整型(short,int,long,unsigned)实型单精度型(float)双精度型(double)基本数据类型的长度及取值范围见p6表2_1ANSIC标准中的数据类型和长度见p7表2_2整型类型的简写形式见p7表2_3标识符就是一个名字,用于标志某个事物,由字母、数字、
2、下划线组成且由字母或下划线开头的字符串。标识符可用来命名变量及作为常量名、函数名、类型名、标号和其他各种用户定义的对象命名。一个程序内不得有重复名,不允许使用与C语言系统关键字(保留字)相同的标识符。如:_sum,sum,stu_name,price30等为合法的标识符。标识符2.2标识符、常量与变量下面的标识符是不合法的:Number-of-moves(含有非法字符-)pieceflag(含有非法字符空格)5_6_7(数字开头)在定义标识符时应注意以下几点:1.为了增加可读性,应尽量"见名知意"。如:sum,area,day,name等等2.对标识符的命名应"常用取简、专用
3、取繁"。3.应尽量避免使用容易混淆的字符。例如:O(大写字母)o(小写字母)0(数字)I(大写字母)l(小写字母)1(数字)Z(大写字母)z(小写字母)2(数字)不要使用C语言关键字作为标识符C语言关键字列表autobreakcasecharconstcontinuedefaultdodoubleelseenumexternfloatforgotoifintlongregisterreturnshortsignedsizeofstaticstructswitchtypedefunionunsignedvoidvolatilewhile1.常量和符号常量在程序运行过程中其值不能
4、被改变的量称为常量。例2.1定义符号常量。#definePRICE30main(){intnum,total;num=10;total=numPRICE;printf(“total=%d”,total);}用define命令定义PRICE代表常量30,则在整个程序中出现的PRICE都代表30,可以和常量一样进行运算。1.C语言区分大小写如:Price和price,系统会认为是两个不同的标识符。2.标识符的长度一般不超过8个字符具体情况视不同系统而定。设允许8个字符。则:student_namestudent_number为同一名字。注意:在程序运行过程中其值可以被改变的量称
5、为变量。变量名的命名符合标识命名规则:由字母开头,由字母、数字和下划线三种字符组成,长度不限制。如:sum,aver,class,day为合法变量名;$123,#33,3ds均为非法变量名;sum、Sum与SUM是三个不同的变量名。在C中,习惯用大写字母标识符号常量,用小写字母标识变量。变量必须先定义后使用。变量一经定义,就确定了类型。2.变量1.整型常量整型常量即整常数。整常数有三种表示形式:十进制数如:123,-456八进制数以0开头。如:0123,-011十六进制数以0x开头。如:0x123,-0x122.整型常量的类型其值在-32768~+32767时
6、为int型。其值在-2147483648~+214748647时为longint型。常量中无unsigned型。但非负值的整型量可以赋值给unsigned型整变量,只要不产生溢出。在整型常量后面跟一个字母l或L,则认为是longint型常量。2.3整型数据1)整型变量的分类基本型以int表示。-32768~32767(-215~215-1)短整型以shortint或short表示,取值范围同int型。长整型以longint或long表示。-2147483648~2147483647(-231~231-1)无符号型用全部二进制位(bit)存放数据,不能存放负数。u
7、nsignedint与unsignedshort:0~65535(0~216-1)unsignedlong:0~4294967295(0~232-1)2)整型变量的定义inta,b;unsignedshortc,d;longe,f;3.整型变量1.实型常量十进制数形式:0.123、.123、123、123.0、…。指数形式:123e3或123E3都代表123103。2.实型变量单精度float:占用4Bytes,7位有效数字,10–38~1038。双精度double:占用8Bytes,15/16位