《第一章C 语言简介.docx》由会员分享,可在线阅读,更多相关《第一章C 语言简介.docx(22页珍藏版)》请在优知文库上搜索。
1、第一章C+语言简介本章内容 C+语言的发展简史 C+语言的特点 C+语言的程序结构第一节c+语言的发展简史常考考点: C+语言的发展历史 C+语言与C语言的关系 C+是高级程序设计语言:易懂(接近于自然语言)、易读 高级语言需要编译(将程序编译为计算机指令进行运行) C+是由C发展而来的,与C兼容,是C的超集 C+既可用于面向过程的结构化程序设计,又可用于面向对象的程序设计,是一种功能强大的混合型的程序设计语言 面向对象和面向过程不是矛盾的,而是各有用途、互为补充第二节C+语言的特点常考考点: C+语言与C语言之间的主要异同点 C+的基本输入/输出语句,程序的输入/输出方法 函数的声明、参数传
2、递方式、参数默认值、内联函数等相关知识、函数重载的概念,const的含义及作用 指针的概念,C+中动态内存分配及释放的方法,并在程序中灵活运用、引用的基本概念,引用的定义与使用,类String的基本功能,声明类String对象,调用类string中的成员函数进行基本操作1.C+语言是一种编译式的、通用的、大小写敏感的编程语言,完全支持面向对象的开发模式。2.C+语言的主要特点表现在以下方面:它是C语言的继承,尽量兼容C语言,同时也增强了C语言对类型的处理;加入了面向对象的特征:抽象、封装、继承、多态;支持过程化编程、面向对象编程和泛型编程;C+语言可运行于多种平台上,如WindOWs、UAC操
3、作系统及UNIX的多种版本。一、基本的输入/输出1个头文件:include2个流类、2个流类对象、2个运算符号、2条语句:istream输入流类stream输出流类cin输入流对象COUt输出流对象流提取运算符(流插入运算符cin输入语句cout输出语句两个对象都不支持用户自定义类型数据的直接输入/输出,需要对两个运算符进行鳏操作【牛刀小试】在C+中使用流进行输入/输出,其中用于屏幕输出的对象是()。A.cerrB. cinC. coutD. Cfile正确答案C答案解析在C+中使用流进行输入/输出,其中用于屏幕输出的对象是“c。Ul【牛刀小试】在C+程序中,用来读取从键盘输入值的标准输入流对
4、象是O正确答案cin答案解析在C+程序中,用来读取从键盘输入值的标准输入流对象是“cin”【程序1-11输入/输出示例#include#includeusingnamespacestd;intmain()intonelntl,onelnt2;charStrArray20;stringstr;doubleoneDouble;charoneChar=*a;CoUt输入两个整型值,一个字符,一个字符串和一个浮点值,”;COUt以空格、Tab键或(Enter)键分隔:oneIntloneInt2oneCharstrArrayoneDouble;Str=StrArray;CoUt输入的数据是:“endl
5、;CoUt”字符串是:ttz,strendl两个整型值分别是:tOnelnt1和tonelnt2endl字符是:ttz,oneCharz,n“浮点值是:ttz,oneDoubleleaseinputtheint/char/str/doublenuaber:1M%aChifWl3.H1926 定义变量,字母大小写敏感 ,符号之后只能跟随一项(变量、表达式、函数调用语句等) 在输入数据过程中,使用空格、Tab、Enter将数据分开 输入完数据以后,回车,结束输入过程,并显示输出结果 加入适当的引导语,可以帮助用户实现操作二、头文件和命名空间1.C语言中使用头文件保存程序中用到的声明:包括函数声明、
6、常量的定义等等。2 .C+中也是如此,使用头文件保存:函数声明、类体的定义等等。3 .2includeGoStreamC+标准输入/输出流,使用Cin或COUt对象时,必须使用该库,可以包含多个头文件。4 .头文件包含:J系统提供的头文件includeJ用户自定义头文件includestudent,h”J当使用尖括号时,C+编译器将指令中指定的目录中去查找J采用双引号时,C+编译器在用户当前目录下或指令中指定的目录下寻找要包含的文件5 .常用头文件有:,标准输入输出流:标准文件流:,标准字符串处理函数:标准数学函数:【牛刀小试】指示编译器将一个源文件嵌入到带该指令的源文件中的指令是O正确答案i
7、nclude答案解析指示编译器将一个源文件嵌入到带该指令的源文件中的指令是“include”。6 .命名空间USingIIameSpaCeStd;C+中为了避免标识符之间命名重复现象,引入“命名空间”概念,即namespace 命名空间的作用是为了消除同名引起的歧义 这是C+的一种机制,使用关键字namespace把大量有逻辑联系的程序实体组合在一个标识符下 C+-标准程序库中的所有标识符都定义在一个名为Std的命名空间中 使Cir1、coutendl合法化,不能缺少命名空间(即std:Cin、std:COUt、std:endl)三、强制类型转换运算符当不同类型的量进行混合算术运算时,系统自动
8、进行合理的类型转换,也可以在程序中使用强制类型转换运算符static_cast或是const_cast进行转换。1. static_cast用于将一种数据类型转换成另一种数据类型,-一般情况下,Statijcast可以缺省。StatiCcast(表达式)#includeusingnamespacestd;intmain()doublea=34.23;cout(int)aendl;coutint(a)endl;coutstatic_cast(a)(表达式) 这个运算符的功能是,将常量指针转化成非常量的指针,并且仍然指向原来的对象; 或是将常量引用转换成非常量的引用,并且仍然指向原来的对象。int
9、nain()Inte;constintapft)constintc30jIntqjcout*txtndljcoutp,t*ptnjcout*tndljq三constwcast(p)j C LMerAdrwutrtoD*top*endl;W划couttt,xnJcoutpt*pendljcoutqtv*endl)cout*qconst.cMt(p)jcoutAct*candl;coutptpndljcoutqt*endl)rturn9四、函数参数的默认值常考知识点:1.选择题一一函数声明原型 函数原型的声明形式是否正确 基于函数原型,调用形式是否正确2.选择题、程序填空题一一函数默认参数函数原型
10、如果带有默认参数,如何定义,如果实现传参将带有默认参数的函数原型,补充完整【牛刀小试】一个C+源文件中包含3个函数:main,fa和fb函数,它们之间不正确的调用是()。A.在mainO函数中调用fb()函数B.在faO函数中调用fbO函数C.在fa()函数中调用faO函数D.在fb()函数中调用mainO函数正确答案D答案解析一个工程中有且仅有一个主函数(main),mian函数有调用任意其它用户自定义函数或库函数的权限;其它函数或用户自定义函数是没有调用主函数(main)的权限。任意其它用户自定义函数或库函数之间可以互相调用。【牛刀小试】有函数原型“intfun4(int,int);,以下
11、正确的语句是()。A. inta=fun4(1);B. coutfun4(3,4);C. inta=fun4(1)+fun4(1);D. coutfun4(3+4);正确答案B答案解析定义了两个整形参数,输出也要是两个整形参数,所以B正确。intfun4(int,int);cout,intCreturna+b+c;includeusingnamespaceStdjintfun(inta三10intb三2Gjintc36)rturnbc;intmain()Bcoutfun()endl;coutfun(le)endl;coutfun(lej2e)endl;coutfun(l8i208j30)end
12、l;return0;调用函数时,主调函数的实参与被调函数的形参按从左至右的顺序进行匹配对应,如果实参的个数与形参的个数相等,则它们:一一对应intfun(inta=10,intb3intc三30)returna+b+c;MeSSgInfunctionintfun(intmtint(ErrordefaultWgUmentmissingforparameter2ofIntfn(inint呻如果实参的个数m少于形参的个数n,则函数原型形参表中最前面的m个形参与m个实参相对应,后面的n-m个形参则使用默认值进行初始化*includeusingnamespacestd;intfun(inta1intb2,intc30)returnabc)intmain()(cotfun(l0)endl;coutfun(10020)endl;coutfun(100j200j300)usingn