第1章C++程序设计入门.ppt

上传人:tang****xu1 文档编号:514865 上传时间:2018-09-24 格式:PPT 页数:113 大小:2.03MB
返回 下载 相关 举报
第1章C++程序设计入门.ppt_第1页
第1页 / 共113页
第1章C++程序设计入门.ppt_第2页
第2页 / 共113页
点击查看更多>>
资源描述

《第1章C++程序设计入门.ppt》由会员分享,可在线阅读,更多相关《第1章C++程序设计入门.ppt(113页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、第 1 章 C+程序设计入门,C+程序设计语言,重庆大学计算机学院,重庆大学 葛垚Email: ,C+程序设计语言,总复习,第1章 C+语言编程入门,第2章 函数,第3章 类与对象,第4章 指针与引用,第5章 继承,第6章 运算符重载,第7章 多态与虚函数,第8章 群体类,第9章 模板,第10章 I/O流,第11章 标准模板类库STL,第12章 异常处理,第1章 C+语言编程入门,第2章 函数,第3章 类与对象,第4章 指针与引用,第5章 继承,第6章 运算符重载,第7章 多态与虚函数,第8章 群体类,第9章 模板,第10章 I/O流,第11章 标准模板类库STL,第12章 异常处理,进程,总

2、复习, 课程概述,1.1 C+语言的产生1.2 C+语言是一种面向对象的 程序设计语言 1.2.1 C+语言和面向对象的 程序设计 1.2.2 C+语言与C语言的关 系1.3 C+程序的开发步骤1.4 一个简单C+程序的组成1.5 C+语言的词法记号 1.5.1 字符集 1.5.2 词法记号,1.6 数据类型 1.6.1 基本数据类型 1.6.2 变量 1.6.3 常量 1.6.4 自定义数据类型1.7 运算符与表达式 1.7.1 运算符 1.7.2 表达式 1.7.3 表达式中数据类型的转换1.8 控制语句 1.8.1 选择语句 1.8.2 循环语句 1.8.3 转移语句,第 1 章C+语言

3、编程入门,本章主要内容,C简介:历史、开发工具、程序框架数据类型运算符和表达式控制语句,本章重点和难点,重点数据类型和表达式难点C程序框架结构Class数据类型,本章教学方式,理论讲解程序分析上机实践,【 1.1 C+语言的产生 】,【 1.1 C+语言的产生 】,【 1.2.1 C+语言和面向对象的程序设计语言】,【 1.2 C+语言是一种面向对象的程序设计语言 】,【 1.2.2 C+语言与C语言的关系】,【 1.3 C+程序的开发步骤 】,【 1.4 一个简单C+程序的组成】,This is my first C+ program!,【 1.4 一个简单C+程序的组成】,例 1-3,【

4、1.5.1 字符集】,【 1.5 C+语言的词法记号】,【 1.5.2 词法记号 】,. 常量,数据是程序处理的对象,在C+语言中,所有的对象都属于某种数据类型。,【 1.6.1 基本数据类型】,关键字又被称作修饰符,用来作为前缀修饰字符型、整型、浮点型。,【 1.6 数据类型】,【表C+语言的基本数据类型】,【计算机记数法】,在计算机内部,一切信息(包括数值、字符、指挥计算机动作的指令等)的存储、处理与传送均采用二进制的形式。一个二进制数在计算机内部是以电子器件的物理状态来表示的,这些器件具有两种不同的稳定状态(低电平表示0,高电平表示1),并且,这两种稳定状态之间能够互相转换,既简单又可靠

5、。但由于二进制数的阅读与书写比较复杂,为了方便,在阅读与书写时又通常用十六进制(有时也用八进制)来表示,这是因为十六进制(或八进制)与二进制之间有着非常简单的对应关系.,【计算机中数的表示】,1. 正负数的表示,在计算机中分别用符号“0”和“1”表示。,例如,十进制数50和50用8位二进制数表示以及转换成相应的十六进制数分别为 (50)10(00110010)2(32)16 (50)10(10110010)2(B2)16其中二进制表示中最左边的二进制位(称为最高位)为符号位,“0”表示正,“1”表示负。如果用十六进制表示,则只要每四位作为一组,每一组分别用十六进制表示对应一个十六进制位。,2.

6、 定点数,所谓定点数是指小数点位置固定的数。在计算机中,通常用定点数来表示整数与纯小数,分别称为定点整数与定点小数。,(1)定点整数,在定点整数中,一个数的最高二进制位是符号位,用以表示数的符号;而小数点的位置默认为在最低(即最右边)的二进制位的后面,但小数点不单独占一个二进制位。因此,在一个定点整数中,符号位右边的所有二进制位数表示的是一个整数值。,(2)定点小数,在定点小数中,一个数的最高二进制位是符号位,用以表示数的符号;而小数点的位置默认为在符号位的后面,它也不单独占一个二进制位。因此,在一个定点小数中,符号位右边的所有二进制位数表示的是一个纯小数。,3. 原码、反码、补码与偏移码,不

7、管是定点整数还是定点小数,它们均是有符号的数,最高二进制位是符号位。, (1) 原码 所谓原码就是前面所介绍的二进制定点数表示。即原码的符号位在最高位,“0”表示正,“1”表示负,数值部分按一般的二进制形式表示。, (2) 反码 反码表示法规定:正数的反码和原码相同;负数的反码是对该数的原码除符号位外各位取反(即将“0”变为“1”,“1”变为“0”)。,(3) 补码 补码表示法规定:正数的补码和原码相同;负数的补码是在该数的反码的最后(即最右边)一位上加1。,4. 浮点数,对于既有整数部分、又有小数部分的数,由于其小数点的位置不固定,一般用浮点数表示。在计算机中,通常所说的浮点数就是指小数点位

8、置不固定的数。,最后需要指出的是,在用二进制浮点数表示一个数时,尾数S的二进制位数决定了所表示浮点数的精度(即有效数字的位数),阶码N的二进制位数决定了所能表示的浮点数的范围。,【 1.6.2 变量】,整型常量就是以文字形式出现的整数,包括三种形式。各种表示形式前均可加上正或负号以表示它们值的正负,正号可以省略。,【 1.6.3 常量】,【 1.6.3 常量】,C+语言中,还有一种转义序列的表示方法可用来表示字符常量。,在这里ASCII码用八进制或十六进制表示,这里八进制和十六进制的表示与前面表示整型常量的方式不同,应无第一个“0”。例如X62就表示字符b。,【 1.6.3 常量】,字符串常量

9、又称字符串或串常量,是用一对双引号括起来的字符序列。例如:xyz, I am a student,This is a string都是字符串。,【 1.6.3 常量】,表两种声明符号常量的方法,在声明枚举类型时,用户需要把变量的可能取值一一枚举出来,形式如下:enum 枚举类型名 变量值1,变量值2,变量值n;,【 1.6.4 自定义数据类型】,在声明枚举类型时,枚举出的变量的可能取值又称枚举常量。,【 1.6.4 自定义数据类型】,例 1-8,coutflowerendl; coutSorry,we have only red flowerendl; ,(续),数据类型 数组名常量表达式1常

10、量表达式2常量表达式n;,在内存分配时,数组对应着一组顺序排放的存储单元,数组的每个元素按照声明时的次序在其中存放。,数组的声明形式如下:,下标表达式的个数应与数组的维数相同,下标表达式的值从0开始。,一维数组声明的数组在内存中的存放顺序组,就是按下标顺序存储。例如: int i5;,二维数组,可以把它看成是由多个一维数组构成的。例如: int i23;,三维数组,可把它看成是由多个二维数组构成的。例如: int i234;,数组元素在内存中是顺序存储的。,一个n维数组可看成是由多个n-1维数组构成的。,例如: int i23=1,2,3,4,5,6;,多维数组也可以只初始化部分元素,例如:

11、int i23=1,2,3,4 ;,如果在声明的同时给元素赋初值,最多可以省略第一维中的下标个数,例如: int i3= 1,2,3, 4,5,6;,int i= 1,2,3, 4,5,6;,多维数组的初始化与一维数组相似,需要注意的是必须按照前面所讲的存储顺序列出数组元素的值。,int i3=1,2,3 ;,与数组元素的初始化不同,在给数组元素赋值时,必须逐一赋值。例如:对于下述的数组初始化:,char str4= abcd;,C+语言中,一个字符串是用一个以0结尾的一维字符数组来表示的,这个字符数组的声明和初始化可以采用和其他数组相同的方式。,对于多个字符串,就可以采用多维字符数组来表示。

12、多维字符数组的初始化同样有两种方法。,C语言中提供结构类型,它能把不同类型的数据组合成一个集合体。,3. 结构类型,声明结构变量的一般形式如下:,在声明一个结构变量时,也可以同时对其进行初始化。,例 1-9,(续),联合变量在使用方法上与结构变量相同。,联合变量声明的一般形式如下:,例 1-10,C+语言中,还允许使用“无名联合”。,例 1-11,(续),5. 关键字typedef的使用,【 1.7.1 运算符】,【 1.7 运算符与表达式】,【 1.7.1 运算符】,(续),C+语言中的算术运算符包括基本算术运算符和增1、减1运算符。,(续),(2)增1、减1运算符,2. 关系运算符,siz

13、eof运算符用于计算其操作数在内存中所占的字节数。它是一个一元运算符,操作数可以是C+语言中任一合法的数据类型。,3. 逻辑运算符,5. 位运算符,(2)按位与(&),(5)移位,(4)按位异或(),左移位举例:表达式41,结果为8,舍弃,0,舍弃,舍弃,1,1,图 4abc; if(a=b) if(a=c) cout=c) coutbendl; else coutcendl; ,改写成,它的一般形式如下: switch(表达式) case 常量表达式1:语句1; case 常量表达式2:语句2; ; case 常量表达式n:语句n; default: 语句n+1; ,2. switch 语句

14、,例 1-19,case blue: coutblue flowerendl; break; case white: coutwhite flowerendl; break; case black: coutblack flowerendl; break; case green: coutgreen flowerendl; break; default: coutSorry , I beg your pardon!b; color=flowercolor(b); switch(color) case red: coutred flowerendl; break; case blue: cout

15、blue flowerendl; break; case white: coutwhite flowerendl; break; case black: coutblack flowerendl; break; case green: coutgreen flowerendl; break; default: coutSorry, I beg your pardon! which color?endl; break; ,(续),break; default:coutSorry, I beg your pardon! What do you want?endl; break; ,(续),一般形式

16、为: while(表达式) 语句,【 1.8.2 循环语句】,例 1-21,例 1-22,dowhile语句的一般形式如下: do 语句while (表达式);,(续),例 1-23,for语句的语法形式如下: for(表达式1;表达式2;表达式3)语句,例 1-24, int a(1),total(0); do total+=a; +a; while(a=100); couttotal=totalendl;,(续),例 1-25,例 1-26,coutaijt; while(+j10); coutendl; i+; ,(续),break语句的格式: break;,continue语句的格式是

17、: continue;,【 1.8.3 转移语句】,例 1-28,goto 语句标号;,语句标号标识语句的形式如下: 语句标号:语句;或 语句标号: 语句;,goto语句的使用形式如下:,例 1-29,趣例,if( day = girl.生日) if( boy.givegirl(玫瑰) ) girl.感情+; else girl.感情-; boy.拼命赚钱(); if( boy.有房() and boy.有车() ) boy.set(nothing); return girl.嫁给(boy); 年龄+; girl.感情-; return girl.goto( another_boy);,本章小

18、结,1、C+语言是一种已得到广泛使用的面向对象的程序设计 语言,它与C语言的本质差别在于C+语言支持面向对象的程序设计。不过,为了保持与C语言兼容,C+语言也支持面向过程的程序设计。2、面向对象系统最突出特点是封装性、继承性和多态性。 C+语言通过类、继承、函数和运算符重载等对之提供了良好的支持。3、开发一个C+程序至少需要经过编辑程序、编译、链接、运行程序4个步骤。4、每个C+程序有且仅有一个main函数,它是程序的主函 数。主函数是程序的开始执行点,也即程序生成可执行 文件后,将在此处开始运行。,本章小结,5、每种计算机语言都必须具有输入、输出功能。C+语言的基本输入、输出分别通过cin和cout来实现6、程序中添加注释,可以提高程序的可读性。可读性是衡量程序好坏的标准之一。另外,采用良好的书写格式也可以提高程序可读性7、C中的数据类型又分为基本类型和自定义类型,基本类型有bool、char、int、float、double等,自定义数据类型有枚举、结构、联合、数组、类等类型8、程序设计工作主要包括数据结构和算法的设计,顺序、选择、循环结构是程序设计中最基本的控制结构,

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

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁