cp2C语言程序设计--数据类型(9-10)

上传人:宝路 文档编号:48187919 上传时间:2018-07-11 格式:PPT 页数:17 大小:991.57KB
返回 下载 相关 举报
cp2C语言程序设计--数据类型(9-10)_第1页
第1页 / 共17页
cp2C语言程序设计--数据类型(9-10)_第2页
第2页 / 共17页
cp2C语言程序设计--数据类型(9-10)_第3页
第3页 / 共17页
cp2C语言程序设计--数据类型(9-10)_第4页
第4页 / 共17页
cp2C语言程序设计--数据类型(9-10)_第5页
第5页 / 共17页
点击查看更多>>
资源描述

《cp2C语言程序设计--数据类型(9-10)》由会员分享,可在线阅读,更多相关《cp2C语言程序设计--数据类型(9-10)(17页珍藏版)》请在金锄头文库上搜索。

1、第二章 数据类型l基本数据类型 l常量与变量 l不同类型数据间的转换本章内容 C语言数据类型分类及其意义 标识符的概念 基本数据类型的数值表达和存储 C语言中的常量 C语言中的变量 不同数据类型之间的数据转换必须掌握的内容 基本数据类型的存储方式和表达范围 标识符的概念 符号常量和一般常量 变量的定义和使用 数据类型转换规则 2.1 数据类型数据类型总表C 数 据 类 型基本类型构造类型指针类型空类型 void定义类型 typedef字符类型 char枚举类型enum整 型实型单精度型 float双精度型 double数组结构体struct共用体union短整型 short长整型 long整型

2、 int数据类型决定: 1. 数据占内存字节数 2. 数据取值范围 3. 其上可进行的操作n基本数据类型类型符号关键字数的表示范围所占位数整型字符型实型有无(signed)int32-21474836482147483647 (signed)short16-3276832767 (signed)long32-21474836482147483647 32unsigned int042949672953204294967295unsigned unsigned long short16065535有float323.4e-383.4e38 有double641.7e-3081.7e308有cha

3、r8-128127无unsigned char80255说明:数据类型所占字节数随机器硬件不同而不同,上表以32机为例:例:判断下列标识符号合法性 sum Sum M.D.John day Date 3days student_name #33 lotus_1_2_3 char ab _above $123M.D.John3days #33 char$123ab2.2 常量与变量标识符 定义:用来标识变量、常量、函数等的字符序列 组成:只能由字母、数字、下划线组成,且第一个字 母必须是字母或下划线 大小写敏感 不能使用关键字 长度:最长32个字符 命名原则: 见名知意 不宜混淆 如l与I, o

4、与0n一般用大写字母n是宏定义预处理命令,不是C语句n直接常量:n整型常量 n实型常量 n字符常量 n字符串常量如 #define PRICE 30 w定义:程序运行时其值不能改变的量(即常数)w分类:n符号常量:用标识符代表常量n定义格式: #define 符号常量 常量 例1:符号常量举例 (ch2_001.c) #define PRICE 30 main() int num,total;num=10;total=num*PRICE;printf(“total=%d“,total); n常量ch2_001.cfloat data;决定分配字节数 和数的表示范围合法标识符例:int a=2,

5、b,c=4;float data=3.67;char ch=A;int x=1,y=1,z=1;int x=y=z=1;w变量的使用:先定义,后使用例1 int student;stadent=19; /Undefined symbol statent in function main 例2 float a,b,c;c=a%b; /Illegal use of floating point in function main w变量定义位置:一般放在函数开头 /*ch2_003.c*/ main() int a,b=2;float data;a=1;data=(a+b)*1.2;printf(“

6、data=%fn”,data);变量定义可执行语句main() int a,b=2;a=1;float data;data=(a+b)*1.2;printf(“data=%fn”,data); 变量ch2_003.c可执行语句变量定义a=111111.111; /* a=111111.1*/ double b; b=111111.111; /* b=111111.111*/float total;char ch1,ch2=D;total=num*PRICE;ch1=ch2-A+a;printf(“total=%f,ch1=%cn”,total,ch1);宏定义变量定义输出结果ch2_005.c

7、隐式转换 什么情况下发生 运算转换-不同类型数据混合运算时 赋值转换-把一个值赋给与其类型不同的变量 时 输出转换-输出时转换成指定的输出格式 函数调用转换-实参与形参类型不一致时转换 运算转换规则:不同类型数据运算时先自动转换成同一 类型 一般形式:(类型名)(表达式) 例 (int)(x+y)(int)x+y(double)(3/2)(int)3.6 说明:强制转换得到所需类型的中间变量,原变 量类型不变 /*ch2_006.c*/ 例 main() float x;int i;x=3.6;i=(int)x;printf(“x=%f,i=%d”,x,i);精度损失问题较高类型向较低类型转换时可能发生显式转换(强制转换)ch2_006.c

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

当前位置:首页 > 中学教育 > 教学课件

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