全套课件·Visual2.ppt
- 【下载声明】
1. 本站全部试题类文档,若标题没写含答案,则无答案;标题注明含答案的文档,主观题也可能无答案。请谨慎下单,一旦售出,不予退换。
2. 本站全部PPT文档均不含视频和音频,PPT中出现的音频或视频标识(或文字)仅表示流程,实际无音频或视频文件。请谨慎下单,一旦售出,不予退换。
3. 本页资料《全套课件·Visual2.ppt》由用户(三亚风情)主动上传,其收益全归该用户。163文库仅提供信息存储空间,仅对该用户上传内容的表现方式做保护处理,对上传内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!
4. 请根据预览情况,自愿下载本文。本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
5. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007及以上版本和PDF阅读器,压缩文件请下载最新的WinRAR软件解压。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 全套 课件 Visual2
- 资源描述:
-
1、第1章 C+语言概述程序设计语言的分类C+语言的发展历史机器语言 机器语言的语句是由0/1代码组成的。它与硬件紧密相关,是机器硬件惟一能识别的语言。使用机器语言进行程序设计的最大优点是可以获得高效的代码,因为它可以充分使用硬件的所有特性 代码由0/1组成,很难理解。用机器语言为一种机器硬件编写的程序很难应用到另一种机器上汇编语言 是一种使用助记符编写程序的语言,与机器语言相比从形式上相对简单易学 汇编语言并没有改变针对硬件进行程序设计的本质,汇编语言到机器语言的翻译十分容易,几乎是一一对应的关系。机器语言与汇编语言都是针对机器硬件的程序设计语言,通常称为低级语言。高级语言 与低级语言相比,高级
2、语言所使用的语句更加接近于自然语言,符合人类的记忆习惯,并且使用了人类语言中的某些语句来表述控制过程和程序结构,易学易用。需要一个翻译软件将高级语言的语句翻译成机器可以理解的指令才能够正确运行编译和解释 编译 在程序的所有源代码都编写完成之后,再用高级语言的编译程序将所有的源代码翻译成机器可以理解的指令 可以对翻译过来的机器指令进行整体的优化,解释 在源代码的输入过程中,一行代码输入完成就将这行代码翻译成机器指令。无法对程序进行整体的优化 方便调试程序中级语言 由于C语言和C+语言能够实现其他高级语言不能够实现,但是汇编语言能够实现的某些功能,因此它既具有高级语言的特性,又具有低级语言的特性,
3、集高级语言与低级语言的优点于一身,因此有些文献称之为中级语言 对内存地址的操作 对内存地址的位操作C+语言的发展历史(1)1963年,英国的剑桥大学推出了CPL(Combined Programming Language)语言。1970年,美国Bell实验室的Ken Thompson又以BCPL语言为基础,设计出更加简单并接近硬件的B语言。1973年Bell实验室的D.M.Ritchie在B语言的基础上设计出C语言1978年,B.W.Kernighan和D.M.Ritchie合写了The C Programming Language,成为现在广泛使用的C语言的基础,通常被称为标准C。1983年
4、,ANSI(American National Standards Institute)制定了C的标准,称为ANSI C。1990年ISO(International Standards Organization)接受87 ANSI C标准,从而形成ISO C。C+语言的发展历史(2)1979年,Bjarne Stroustrup在Bell实验室发明了C+语言。1994年,ANSI和ISO成立了一个联合标准化委员会共同为C+定制标准,并制定了第一个草稿。程序设计方法C+语言的特色结构化程序设计方法 又称为面向过程程序设计方法 通常要使用的方法是:自顶向下、逐步求精、模块化设计和结构化编码。结构
5、化程序设计方法是面向数据和过程的程序设计方法。很难实现软件的可重用,并且要保持数据和过程的完全一致也十分困难面向对象程序设计方法 世界是由对象组成的,而各个对象都有反映其个性的属性;另外,世界上所有的对象都是处于不断运动和发展过程中,对象之间通过消息相互作用,而对象的行为是对象运动发展的体现。所有的OOP程序设计语言都有3个共有的特性:即封装性、多态性和继承性。封装性 封装性是指将代码和代码所要处理的数据绑定在一起,并采用一定的机制保证代码和数据的安全,使其不受外部因素的干扰。将数据(或称为数据成员)和处理数据的函数(或称为成员函数)封装到一个类(Class)中,而在程序中通过对象来使用类。数
6、据成员和成员函数的属性可以是私有的(Private),也可以是公有的(Public)。私有数据成员和成员函数只能被对象内部的其他代码访问;而公有的数据成员和成员函数则可以被对象之内和对象之外的代码所访问。多态性 多态性允许使用同一个接口来访问一类通用的操作。“一个接口,多种方法”一旦定义好了接口,那么用户只要知道如何使用这个接口就可以得到不同方法的执行结果,而选择哪个方法进行处理则由编译器来完成。继承性 继承性是指一个对象从其他对象中获取成员的过程。在现实生活中,有许多继承的例子。如果没有继承性,那么所有的对象都需要定义自己的所有特性,这样就会重复定义很多特性;而有了继承性,那么一种特性在系统
7、中只有一次惟一的定义。C+语言的特色 在原来面向过程的机制基础上,对C语言的功能进行了扩充。增加了面向对象的机制。什么是VS.NET第一个C+程序 什么是VS.NET Visual Studio.NET 是一套完整的开发工具,用于生成 ASP Web 应用程序、XML Web Services、桌面应用程序和移动应用程序。在安装了Visual Studio.NET之后,就可以得到一个集Visual Basic.NET、Visual C+.NET、Visual C#.NET 和 Visual J#.NET 为一体的集成开发环境(IDE)。由于所有的语言都使用同样的开发环境,因此可以在使用它们的时
8、候共享工具并创建混合语言解决方案。.NET Framework是所有这些语言的基础。而这个框架是Microsoft.NET计划的基础,是一种新的计算平台,使用它可以简化在高度分布式 Internet 环境中应用程序的开发。公共语言运行库CLR 公共语言运行库是.NET Framework 的基础。可以将运行库看作一个在执行时管理代码的代理,它提供的核心服务有内存管理、线程管理和远程处理等,还强制实施严格的类型安全以确保安全性、可靠性和准确性。被运行库管理的代码称为托管代码,而不被运行库管理的代码称为非托管代码。在托管应用程序中,所有的代码在编译时生成的都是中间语言(IL,Intermediat
9、e Language)而不是机器可以识别的机器代码,由.NET Framework的CLR将IL文件真正翻译成机器语言。类库 是一个综合性的面向对象的可重用类型集合,可以使用它开发多种应用程序第一个C+程序/*This is a Hello World programme2003-10-8*/#include using namespace std;void main()coutHello world!;第2章 数据类型、运算符和表达式整型字符型浮点型布尔型空型C+提供的基本数据类型修饰符 C+还允许在不同的数据类型前面增加修饰符来更改基本类型的含义。signed,unsigned,long和
10、short。其中int前面可以单独使用siged,unsigned,long和short,并且signed和unsigned还可以与long和short组合在一起放在int前面 char前面可以单独使用signed和unsigned;double前面可以单独使用long。C+的数据类型整型 C+中定义了9种类型的整型,其中包括普通的整型(int)、长整型(long int)和短整型(short int)。这3种数据类型的前面还可以加上signed和unsigned修饰符来表示有符号整型和无符号整型。符号整数和无符号整数#include using namespace std;void main
11、()short int i;unsigned short int j;i=-1;j=i;couti=i;j=j;字符型 在计算机中保存字符采用的是8位的ASCII码。要把字符用单引号扩起来 x、0 如果所需的整数表示范围很小(在128到127之间,或者在0到255之间),可考虑使用字符型数据字符型数据和整型数据的互换使用#include using namespace std;void main()char c;short int i;c=A;i=c;coutc=c;i=i;浮点型 浮点型数据有3种:float,double和long double。选用的数据类型应该能够表示所需要的数字,不能
12、超出数据类型的表示范围,还要考虑不同的数据类型可以表示数据的精度是否符合程序要求。一种数据类型占用的内存空间越大,能够表示的数据范围就越大,但是使用这样的数字进行计算的速度也越慢,因此在选择数据类型的时候也不要没有任何依据地使用long double类型表示数据以求保险(一般的数字用double类型就足够了)或者贪图不必要的精度而损失了程序的运行速度。浮点数的舍入误差#include using namespace std;void main()float a,b;a=555555.555e5;b=a+40;couta=a;b=b;布尔型 true和false 如果在布尔表达式中使用了数字,那
13、么C+会把0作为false,非0的数字作为true。如果在一个非布尔表达式中使用bool类型的数据,那么会把true转换为1,把false转换为0。bool和int类型数据的转换#include using namespace std;void main()bool b1,b2;int i,j;b1=true;i=20;j=b1;b2=i;coutj=j;b2=b2;空型 空型是一种十分特别的数据类型,它表示没有任何值,因此并没有一个实际存在的数字可以定义成void类型。空型通常用在定义函数的时候表示一个函数没有返回值。常量和变量常量变量常量 常量是一个具有实际值的量,并且其值在程序中不可以改
14、变。整型常量 整型常量用于表示整数。可以使用十进制、十六进制、八进制的整数。十进制的数字:10、25。十六进制整数需要在整数的前面加上一个0 x:0 x123 八进制数需要在整数的前面加上一个O:O123 如果在程序中遇到了一个整数常量,通常认为这个整数的数据类型是int。如果要表示的数字超出了int类型数据的表示范围,但是在unsigned int数据类型的表示范围之内,就在这个数据类型中在数据的后面增加一个u后缀:3213213213u。如果希望定义long int 类型的常量,在这个数据后加l后缀。浮点型常量 如果在程序中遇到的一个数字带有小数部分,那么C+编译器就认为这个数字是一个浮点
15、型常量 12.3,1.0,0.123E2 浮点型数据具有舍入误差字符型常量 如果要定义字符型常量,只要用单引号将这个字符括起来就可以了。x、2、#字符串常量 把字符串用双引号括起来 Hello world!“一个字符串中的各个字符会占用内存中连续的字节,使用0字符表示字符串的结束。a与a完全不同符号常量 对于一些经常使用并且有特定意义的常量允许采用符号的方式代替,在程序中所有使用这个常量的地方都可以使用这个符号常量进行替代 使用C+提供的预编译指令#define#define PI 3.14变量 变量就是可以在程序中保存数据的量。由于这个量的值是可以改变的,因此被称为变量变量的命名 组成变量名
16、的字符必须是大写字母、小写字母、数字或者下划线,并且只能以字母或者下划线开头。变量名不能使用C+语言保留的关键字变量的声明 数据类型 变量名列表;int Count;double Price,Total;所有的变量在声明时都要求指明它的数据类型。变量的初始化 变量的初始化是指在变量被正式使用之前给变量一个初值。(1)在定义变量时给变量赋一个初值。(2)在使用变量之前给变量赋一个初值。(3)动态初始化。int Count=2;double Price,Total;Price=28.7;Total=Price*Count;常数型变量 使用const关键字创建常数型变量,这样就可以把一个变量作为常数
17、来使用 const 数据类型 变量名=表达式;const float PI=3.14;输 入 输 出coutcin流 C+中定义的输入输出都是采用流的方式进行的。在输入操作中,输入数据以字节的形式从输入设备(例如键盘、磁盘、网络等)经过输入流流入计算机的内存;在输出操作中,输出数据又以字节的形式从内存经过输出流流出到输出设备(例如显示器、打印机、磁盘、网络等)。在C+中,可以使用它提供的标准输入对象cin和标准输出对象cout实现输入输出操作。cin表示的是C+的输入流 cout表示的是C+的输出流 cerr流用于实现标准的出错输出 clog流实现cerr流的缓冲输出。cout 使用操作符来实
18、现输出,的作用是实现向流中插入。int i=10;couti=i;在输出中使用转义字符#include using namespace std;void main()coutabcdetfgbhijrkn;coutI say:hello!n;coutn的意思是回车换行n;用t和setw()实现输出#include#include using namespace std;void main()coutabctdefendl;coutghitjklendl;coutsetw(6)abcsetw(6)defendl;coutsetw(6)ghisetw(6)jkl操作符。int a;double b
19、;cinab;输入一个矩形的长和宽,输出矩形的面积#include using namespace std;void main()double Length;double Width;coutLength;coutWidth;coutArea=Length*Width的作用是将一个数的所有位向右移动指定的位数 左移位运算符的作用是将一个数的所有位向左移动指定的位数 运算符的左边是需要移位的数据,而运算符的右边放置的是一个正整数,表示要移位的位数。使用移位运算赋值运算符和赋值表达式 赋值运算符就是一个等号(=),表示把“=”右面的表达式的值赋值给左边的变量 变量=表达式 一个用赋值运算符连接运算
20、对象的式子就是赋值表达式。复合赋值运算符 只要在赋值运算符前面加上一个其他的二目运算符,就形成了复合赋值运算符。+=、=、*=、/=、%=、=、&=、=、|=逗号运算符 使用逗号运算符可以将几个表达式连接起来,这样构成的表达式就是逗号表达式,整个表达式的值就是最右边一个表达式的值。a=(b=12,c=34,d=56);首先计算b=12,然后计算c=34,再计算d=56。逗号表达式b=12,c=34,d=56的结果就是最右边的表达式的值56,因此a的值是56。sizeof运算符 sizeof运算符可以计算出数据类型所占用空间 sizeof运算符有两种使用方式:sizeof(数据类型)sizeof
21、 变量名使用sizeof运算符数据类型的转换赋值运算中的数据类型转换表达式中的数据类型转换赋值运算中的数据类型转换 如果把一种类型的数据赋值给另一种类型的变量,那么在赋值的过程中就会发生数据类型的转换。由于各种数据类型所占用的内存空间不同,因此当占用内存空间大的数据类型向占用内存空间小的数据类型转换的时候,会导致高位数据丢失的情况。数据类型转换导致的错误表达式中的数据类型转换 在表达式中,如果各个运算对象的数据类型不同,那么C+会自动把它们转换成同样的数据类型再进行计算。在进行类型转换的时候,都是从占用内存空间少的数据类型向占用内存空间多的数据类型进行转换。C+还允许使用强制类型转换来实现显式
22、的类型转换(数据类型)表达式构造数据类型结构体共用体枚举自定义数据类型结构体 将所有相关的数据项组合在一起,形成一种新的数据结构,称为结构体 struct 结构体名 数据类型 成员名;.;使用“.”运算符访问一个结构体变量的各个成员,这个运算符称为成员运算符。结构体变量名.成员名计算一个三角形的面积(1,9)(4,2)(1,2)yx共用体 将几个不同数据类型的变量保存到同一个内存空间中,实际上是这些不同数据类型的变量占用从同一个地址开始的内存空间,各个变量相互覆盖。这种使几个变量占用同样内存空间的结构称为共用体。union 共用体名 数据类型 成员名;.;使用共用体枚举 所谓枚举类型,就是指在
23、定义类型的时候一一列出这个类型的数据可能的取值。enum WeekDaysun,mon,tue,wed,thu,fri,sat;使用枚举类型自定义数据类型 使用typedef关键字将一个标识符定义为一个数据类型标识符。typedef 数据类型 标识符;第3章 控 制 结 构顺序结构选择结构循环结构顺序结构顺序结构 顺序结构程序设计是最基本的程序设计方法。指程序中的每一条语句都是顺序执行的,不存在分支、循环和跳转。选择结构if语句switch语句if 语句的第一种格式 if (表达式)语句;首先判断“表达式”的值,如果为true或者非0的数,那么就执行“语句”,否则什么也不做。“语句”部分可以是
24、单独的一条语句,也可以是复合语句。复合语句就是用括起来的多条语句,又称为分程序。表达式语句truefalse输入大写字符,输出小写字符if语句的第二种格式 if (表达式)语句1;else 语句2;首先判断“表达式”的值是否是true或非0的值,如果是,那么就执行“语句1”否则就执行“语句2”。其中“语句1”和“语句2”都可以是复合语句。表达式语句 1truefalse语句 2对前面例子的改进if语句的第三种格式 if (表达式1)语句1;else if (表达式2)语句2;else if (表达式3)语句3;else 语句n;首先判断“表达式1”的值是否是true或者非0的值,如果是,那么就
25、执行“语句1”,否则就判断“表达式2”的值是否是true或者非0的值,如果是,就执行“语句2”,否则就判断“表达式3”一直执行下去,直到最后一个else,如果前面的条件都不满足,就执行语句n。表达式语句 1truefalse表达式语句 2truefalse语句 3将百分制成绩转换成优良中及格和不及格条件运算符 表达式1?表达式2:表达式3 如果表达式1的值是true或者非0的数,那么就求解表达式2,否则求解表达式3。switch语句witch(表达式)case 常量表达式1:语句1;case 常量表达式2:语句2;case 常量表达式n:语句n;default:语句n+1;首先计算首先计算“表
展开阅读全文