C++语言程序设计-谭浩强.doc
《C++语言程序设计-谭浩强.doc》由会员分享,可在线阅读,更多相关《C++语言程序设计-谭浩强.doc(228页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、-作者xxxx-日期xxxxC+语言程序设计-谭浩强【精品文档】第1章 C+的初步知识一、面向对象的基本概念v 对象/实例(object/instance)v 类(class)v 封装(encapsulation)v 继承(inheritance)v 多态(polymorphism)v 重载(overload)v 消息(message)二、C+的开发运行环境1、Visual C+2、GCC:是一个用于Linux系统下编程的编译器3、WinTC4、Dev-C+三、最简单的C+程序#includeusing namespace std;int main()coutThis is a C+ prog
2、ram.;return 0;程序功能:输出一行字符:This is a C+ program.程序注释:(1)预处理命令#include iostream输入、输出流(2)using namespace std; 使用命名空间std。 第一行和第二行是每个C+都有的语句。(3)C+的主函数名与C一样,都是main。(4)C+的输出使用cout cout是输出流对象,是插入运算符。 若要输出一个字符串,将要输出的字符串写在双引号中;若要输出一个整数,1;若要输出一个变量,a;例如:#includeusing namespace std;int main()int a=2;coutThis is
3、a C+ program.1a;return 0;#includeusing namespace std;int main()int a,b,sum;cinab;sum=a+b;couta+b=sumab; cin:输入流对象:提取运算符C+中的输入、输出比C更简洁,无需格式控制。输入时用空格或者回车分隔都可以。若想输入一个整数,一个实数,一个字符怎么写?#includeusing namespace std;int main()int a;float b;char c;cinabc;couta=aendl;coutb=bendl;coutc=cendl;return 0;或者#include
4、using namespace std;int main()int a;float b;char c;cinabc;couta=aendlb=bendlc=cendl;return 0;(2)/C+的注释符,若注释内容较少,一行即可,那么可以使用/,若注释内容较多,需要多行,那么使用/* */。(3)endl是回车换行符,与n的作用一样。#includeusing namespace std;int max(int x, int y)int z;if(xy) z=x;else z=y;return(z);int main()int a,b,m;cinab;m=max(a,b);coutmax=
5、mn;return 0;程序功能:给两个数x和y,求两数中的大者。程序解释:(1)与C完全一致。涉及到子函数和主函数。#includeusing namespace std;class Studentprivate: int num; int score;public: void setdata() cinnum; cinscore; void display() coutnum=numendl; coutscore=scoreendl; ;Student stud1,stud2;int main()stud1.setdata();stud2.setdata();stud1.display()
6、;stud2.display();return 0;程序功能:定义一个学生类和两个学生对象,输入并显示这两个学生的学号和成绩。程序解释:(1)class Student 类的定义class是类定义的关键字。 Student是我们自定义的类名。(2)private和public private后定义的内容(包括数据和函数)只允许类的成员函数使用,类外不能使用。例如: int main() couta) a=b;if(ca) a=c;return a;int max4(int a, int b)if(ab) return a; else return b;而C+通过函数重载,可以使用同一个函数名,
7、实现上述六个子函数的功能。 int max(int a, int b, int c); float max(float a, float b, float c); long max(long a, long b, long c); int max(int a, int b); float max(float a, float b); long max(long a, long b);程序代码:#includeusing namespace std;int max(int a, int b, int c)if(ba) a=b;if(ca) a=c;return a;float max(float
8、 a, float b, float c)if(ba) a=b;if(ca) a=c;return a;int main()int a,b,c;float d,e,f;cinabc;coutmax(a,b,c);coutdef;coutmax(d,e,f);/coutmax(1.1,1.2,1.3);return 0;注意:语句coutmax(1.1,1.2,1.3); 编译器提示错误。error C2668: max : ambiguous call to overloaded function作业:P16P175、6、7、8、9、10第二讲第8章 类和对象一、面向过程的程序设计方法和面向对
9、象的程序设计方法1、程序功能 对学生基本信息(学号、姓名、性别)进行输入输出。2、面向过程的程序设计方法#includeusing namespace std;struct Studentint num;char name20;char sex;Student get_information()Student stud;int i;coutstud.num;coutstud.name0;while(stud.namei!=#)i+;cinstud.namei;coutstud.sex;return stud;void display(Student stud)int i;coutnum:stu
10、d.numendl;coutname:;i=0; while(stud.namei!=#) coutstud.namei; i+; coutendl;coutsex:stud.sexendl;int main()Student stud1;stud1=get_information();display(stud1);return 0;程序运行结果:3、面向对象的程序设计方法#includeusing namespace std;class Studentprivate:int num; char name20; char sex;public: void get_information() i
11、nt i; coutnum; coutname0; while(namei!=#) i+; cinnamei; coutsex; void display( ) int i; coutnum:numendl; coutname:; i=0; while(namei!=#) coutnamei; i+; coutendl; coutsex:sexendl; ;int main()Student stud1;stud1.get_information();stud1.display();return 0;程序运行结果:程序解释:(1)类如何定义(包括数据和对数据的操作,数据的操作用函数来实现,它们
12、之间的关系更加紧密。)(2)private和public的作用(3)类与结构体的区别(4)定义对象的方法(类是抽象的,而对象是具体的)(5)面向过程的程序设计中,数据与数据的操作是分离的,而面向对象的程序设计中,封装的思想用类来实现。二、类的成员函数1、类的成员函数与一般函数的区别 它是属于一个类的成员,出现在类体中。 它可以被指定为私有的,也可以被指定为公用的。将需要被外界调用的成员函数指定为public。无需或不能被外界调用的成员函数指定为私有的。例如:#includeusing namespace std;class Studentprivate:int num; char name20
13、; char sex; void get_name() int i; i=0; cinname0; while(namei!=#) i+; cinnamei; public: void get_information() coutnum; coutname=; get_name(); coutsex; void display( ) int i; coutnum:numendl; coutname:; i=0; while(namei!=#) coutnamei; i+; coutendl; coutsex:sexendl; ;int main()Student stud1;stud1.get
14、_information();stud1.display();return 0;程序运行结果:或者:#includeusing namespace std;class Studentprivate:int num; char name20; char sex; void get_name() int i; i=0; cinname0; while(namei!=#) i+; cinnamei; void display_name() int i; i=0; while(namei!=#) coutnamei; i+; public: void get_information() coutnum
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C+ 语言程序设计 谭浩强
限制150内