第2章 基本IO和基本数据类型.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《第2章 基本IO和基本数据类型.ppt》由用户(最好的沉淀)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第2章 基本IO和基本数据类型 基本 IO 数据类型
- 资源描述:
-
1、第第2章章程序设计方法学基础程序设计方法学基础基本基本I/O和基本数据类型和基本数据类型哈尔滨工业大学哈尔滨工业大学2.1初识初识C语言语言【例例2.1】向屏幕输出向屏幕输出Hello world!分两行输出分两行输出“Hello world!”呢?呢?#include int main(void)printf(Hello worldn);return 0;以#开头,编译预处理指令Every C program must have a main functionThe execution of C program starts from main()function头文件2.2常量与变量常量与
2、变量常量(常量(Constant)在程序中不能改变其值的量在程序中不能改变其值的量变量(变量(Variable)其值在程序执行过程中是可以改变的其值在程序执行过程中是可以改变的2.2.1变量的类型和变量的定义变量的类型和变量的定义 (1)声明变量的同时为变量声明变量的同时为变量赋值赋值(Assignment)变量的初始化(变量的初始化(Initialize)未被初始化的未被初始化的变量的值会是什么?变量的值会是什么?其值为随机数(乱码)其值为随机数(乱码)n变量的声明(Variable Declaration)类型关键字 变量名;2.2.1变量的类型和变量的定义变量的类型和变量的定义n使用变量
3、的基本原则变量必须先声明,后使用n一条声明语句可声明若干个同类型的变量nint a,b,c;n声明的顺序无关紧要2.2.2最佳编码原则:最佳编码原则:标识符的命名规则和程序注释标识符的命名规则和程序注释n(1)标识符由英文字母、数字和下画线组成,且必须以英文字母或下画线开头。n(2)不允许使用关键字作为标识符,同时标识符也不应与系统预定义的库函数重名。n(3)C语言的标识符可以是任意长度。一般也会有最大长度(与编译器相关)限制。n(4)标识符应直观、易于拼读、易于记忆,即做到“见名知意”,最好使用英文单词及其组合,切忌使用汉语拼音。2.2.2最佳编码原则:最佳编码原则:标识符的命名规则和程序注
4、释标识符的命名规则和程序注释n(5)标识符应尽量与所采用的操作系统或开发工具的风格保持一致。例如,Windows应用n程序的标识符通常采用“大小写混排”方式,如MaxValue,而UNIX应用程序的标识符通常采用n“小写加下画线”方式,如max_value。不要将两类风格混在一起使用。n(6)C语言的标识符是区分大小写(对大小写敏感)的。n在程序中不能改变其值的量在程序中不能改变其值的量n包括包括:整型整型(如如 0,67,2,123L,123u,022,0 x12)l默认为基本整型默认为基本整型int实型实型(如如 2.3,1.2e-5,2.73F,2.73L)l默认为双精度实型默认为双精度
5、实型double字符型字符型(如如 z,3,$)字符串字符串(如如 UKM,1,5a”)枚举型枚举型2.2.3常量的表示形式常量的表示形式长整型长整型 无符号整型无符号整型八进制八进制十六进制十六进制单精度实型单精度实型长双精度实型长双精度实型十进制小数十进制小数指数形式指数形式十进制十进制2.2.3常量的表示形式常量的表示形式2.2.3常量的表示形式常量的表示形式11/532.2.4最佳编码原则:最佳编码原则:使用宏常量和使用宏常量和const变量变量n在程序中直接使用的常数,称为在程序中直接使用的常数,称为幻数幻数(Magic Number)n问题:使用幻数存在什么问题?问题:使用幻数存在
6、什么问题?程序的可读性变差程序的可读性变差容易发生书写错误,产生不一致性容易发生书写错误,产生不一致性当常数需要改变时,要修改所有引用它的代码,繁琐,还可能有遗漏当常数需要改变时,要修改所有引用它的代码,繁琐,还可能有遗漏n良好的程序设计风格建议把幻数定义为良好的程序设计风格建议把幻数定义为n宏常量宏常量nconst常量常量n优点优点n减少重复书写常数的工作量减少重复书写常数的工作量n提高程序的可读性和可维护性提高程序的可读性和可维护性宏常量(宏常量(Macro Constant)用一个标识符号来表示的常量用一个标识符号来表示的常量宏定义宏定义#define 标识符标识符 字符串字符串 编译预
7、处理命令编译预处理命令:在源程序编译之前,先对程序中的编译预处理命令进行处理:在源程序编译之前,先对程序中的编译预处理命令进行处理然后将处理的结果和源程序一起进行编译,以得到目标代码然后将处理的结果和源程序一起进行编译,以得到目标代码2.2.4最佳编码原则:最佳编码原则:使用宏常量和使用宏常量和const变量变量宏常量(宏常量(Macro Constant)宏定义宏定义#define 标识符标识符 字符串字符串#define PI 3.14159 符号常量符号常量(Symbolic Constant)宏名宏名(Macro Name),一般全大写),一般全大写不区分数据类型不区分数据类型2.2.
8、4最佳编码原则:最佳编码原则:使用宏常量和使用宏常量和const变量变量宏常量存在的问题是什么?宏常量存在的问题是什么?没有数据类型,编译器在宏替换时不进行类型检查没有数据类型,编译器在宏替换时不进行类型检查只进行简单的字符串替换,极易产生意想不到的错误只进行简单的字符串替换,极易产生意想不到的错误2.2.4最佳编码原则:最佳编码原则:使用宏常量和使用宏常量和const变量变量nconst double pi=3.14159;nconst常量与宏常量相比的优点是什么?常量与宏常量相比的优点是什么?常量有常量有数据类型,编译器能对其进行类型检查数据类型,编译器能对其进行类型检查某些集成化调试工具
9、可以对某些集成化调试工具可以对常量进行调试常量进行调试占用内存空间的大小占用内存空间的大小数据的存储形式数据的存储形式合法的表数范围合法的表数范围可参与的运算种类可参与的运算种类 2.32.3变量的类型决定了什么?变量的类型决定了什么?(1)不同数据类型可参与的运算不同不同数据类型可参与的运算不同n整型整型加、减、乘、除、求余加、减、乘、除、求余n实型实型加、减、乘、除加、减、乘、除n字符型字符型加、减(整数)加、减(整数)对对ASCII码值的运算码值的运算指针类型指针类型加、减(整数)和比较运算加、减(整数)和比较运算(2)不同类型数据占用的内存大小不同不同类型数据占用的内存大小不同如何计算
10、变量或类型占内存的大小如何计算变量或类型占内存的大小n计算变量占内存空间的大小计算变量占内存空间的大小n用用sizeof运算符运算符n一元运算符一元运算符n用用sizeof运算符计算变量占内存空间的大小的好处运算符计算变量占内存空间的大小的好处n增加程序的可移植性增加程序的可移植性n编译时执行的运算符,不会导致额外的运行时间开销编译时执行的运算符,不会导致额外的运行时间开销语法形式语法形式运算结果运算结果sizeof(类型类型)类型类型占用的内存字节数占用的内存字节数 sizeof(变量或表达式变量或表达式)变量或表达式所属类型变量或表达式所属类型占的内存字节数占的内存字节数n整型数整型数n一
11、个多字节的数据是如何存放到存储单元中的呢?一个多字节的数据是如何存放到存储单元中的呢?n小端次序小端次序n便于计算机从低位字节向高位字节运算便于计算机从低位字节向高位字节运算n大端次序大端次序n与人们从左到右的书写顺序相同,便于处理字符串与人们从左到右的书写顺序相同,便于处理字符串(3)不同类型数据的存储形式不同不同类型数据的存储形式不同高位字节低位字节低位字节高位字节高位字节低位字节n如何存储如何存储实型数实型数呢?呢?n关键:确定小数点的位置关键:确定小数点的位置n问题:如何表示实型数?问题:如何表示实型数?n小数形式小数形式n指数形式指数形式科学计数法科学计数法(3)不同类型数据的存储形
12、式不同不同类型数据的存储形式不同小数部分n定点数(定点数(Fixed Point)n小数点的位置固定小数点的位置固定n定点整数定点整数n定点小数定点小数定点数定点数定点定点小数小数(纯小数)(纯小数)小数点位于符号位和最高数值位之间小数点位于符号位和最高数值位之间定点定点整数整数小数点位于数值位的最低位小数点位于数值位的最低位(3)不同类型数据的存储形式不同不同类型数据的存储形式不同.0N1N2N3NmN符号位符号位固定小数点固定小数点数值部分数值部分.0NmN1-mN2mN1N符号位符号位固定小数点固定小数点数值部分数值部分n问题:如何表示实型数?问题:如何表示实型数?n小数形式小数形式n指
13、数形式指数形式科学计数法科学计数法(3)不同类型数据的存储形式不同不同类型数据的存储形式不同小数部分小数部分n定点数(定点数(Fixed Point)n小数点的位置固定小数点的位置固定n浮点数(浮点数(Floating-Point)n小数点的位置不固定小数点的位置不固定浮点数实现小数点位置可浮动的主要原因浮点数实现小数点位置可浮动的主要原因将实数拆分成了将实数拆分成了阶码阶码(Exponent)和和尾数尾数(Mantissa)分别存储分别存储对于同样的尾数,阶码的值越大,则浮点数所表示的数值的绝对值就越大对于同样的尾数,阶码的值越大,则浮点数所表示的数值的绝对值就越大(3)不同类型数据的存储形
14、式不同不同类型数据的存储形式不同阶码阶码E(指数部分)指数部分)尾数尾数M(小数部分)小数部分)N=r E Mr 为基数为基数通常取通常取 2决定实数的表数精度决定实数的表数范围同样是同样是4个字节(个字节(32位)位)定定点数表数范围受其二进制位数的限制点数表数范围受其二进制位数的限制值域都是有限的值域都是有限的n在计算机中通常是用在计算机中通常是用定点数定点数来表示整数和纯小数来表示整数和纯小数n用用浮点数浮点数表示既有整数部分、又有小数部分的实数表示既有整数部分、又有小数部分的实数(3)不同类型数据的存储形式不同不同类型数据的存储形式不同定点数定点数-231 231-1单精度单精度浮点数
15、浮点数-3.40282346610383.4028234661038n字符型数据字符型数据(英文字母、数字、控制字符)(英文字母、数字、控制字符)n以二进制编码方式存储,一个字节保存一个字符以二进制编码方式存储,一个字节保存一个字符n字符编码方式字符编码方式取决于计算机系统所使用的字符集取决于计算机系统所使用的字符集ASCII(美国标准信息交换码)字符集(美国标准信息交换码)字符集每个字符有一个编码值(查每个字符有一个编码值(查ASCII码表)码表)字符常数就是一个普通整数字符常数就是一个普通整数(3)不同类型数据的存储形式不同不同类型数据的存储形式不同01001000H72(4)不同数据类型
16、的表数范围不同不同数据类型的表数范围不同(2)不同数据类型的表数范围不同不同数据类型的表数范围不同以以2字节(字节(16位)短整型为例位)短整型为例有符号整数的最高位有符号整数的最高位是是符号位,使其数据位比无符号整数的数据位少了符号位,使其数据位比无符号整数的数据位少了1位位2.4键盘输入和屏幕输出键盘输入和屏幕输出单个字符的输入输出函数单个字符的输入输出函数n格式化输入输出函数格式化输入输出函数2.4.1单个字符的输入输出单个字符的输入输出字符输出函数字符输出函数putchar()putchar(ch)向屏幕输出一个字符,字符型变量向屏幕输出一个字符,字符型变量ch的值的值n字符输入函数字
展开阅读全文