ImageVerifierCode 换一换
格式:DOCX , 页数:69 ,大小:46.19KB ,
资源ID:20920605      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/20920605.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(计算机二级C++考点及试题汇编Word文件下载.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

计算机二级C++考点及试题汇编Word文件下载.docx

1、函数原型的语法为:返回类型函数名(形参列表);(注意在函数原型后要有分号)实际上函数原型说明有两种形式:(1)直接使用函数定义的头部,并在后面加上一个分号。(2)在函数原型说明中省略参数列表中的形参变量名,仅给出函数名、函数类型、参数个数及次序。注意:在C+中,在调用任何函数之前,必须确保它已有原型说明。函数原型说明通常放在程序文件的头部,以使得该文件中所有函数都能调用它们。实际上,标准函数的原型说明放在了相应的头文件中,这也是为什么在调用标准函数时必须要包含相应的头文件的原因之一。在了解了函数定义、函数调用和函数原型之后,就可以写出一个完整的C+程序,并可将其编译和运行。4函数返回类型根据函

2、数是否带有参数以及函数是否有返回值,可以将函数分为如下四类。1带参数的有返回值函数定义形式为:返回类型函数名(参数列表)语句序列2不带参数的有返回值函数返回类型函数名()3带参数的无返回值函数void函数名(参数列表)4不带参数的无返回值函数void函数名()5函数参数C+中,函数之间传递参数有传值和传地址两种传递方式。此外,C+还提供了默认参数机制,可以简化复杂函数的调用。1参数的传递方式(1)传值传值是将实参值的副本传递(拷贝)给被调用函数的形参。它是C+的默认参数传递方式,在此之前的多数函数参数传递都是传值。由于传值方式是将实参的值复制到形参中,因此实参和形参是两个不同的变量,有各自的存

3、储空间,可以把函数形参看作是函数的局部变量。传值的最大好处是函数调用不会改变调用函数实参变量的内容,可避免不必要的副作用。(2)传地址有时我们确实需要通过函数调用来改变实参变量的值,或通过函数调用返回多个值(return语句只能返回一个值),这时仅靠传值方式是不能达到目的。2默认参数在C+中,可以为参数指定默认值,在函数调用时没有指定与形参相对应的实参时就自动使用默认值。默认参数可以简化复杂函数的调用。默认参数通常在函数名第一次出现在程序中的时候,如在函数原型中,指定默认参数值。指定默认参数的方式从语法上看与变量初始化相似。6函数重载如果能用同一个函数名字在不同类型上做相类似的操作就会方便很多

4、,这种情况即为函数重载。其实这一技术早已用于C+的基本运算符。例如加法操作只有一个运算符+,但它却可以用来做整型数、浮点数和指针的加法运算。将这一思想推广到函数,即为函数重载。7内联函数C+引入内联(inline)函数的原因是用它来取代C中的预处理宏函数。内联函数和宏函数的区别在于,宏函数是由预处理器对宏进行替换,而内联函数是通过编译器来实现的,因此内联函数是真正的函数,只是在调用的时候,内联函数像宏函数一样的展开,所以它没有一般函数的参数压栈和退栈操作,减少了调用开销,因此,内联函数比普通函数有更高的执行效率。在C+中使用inline关键字来定义内联函数。inline关键字放在函数定义中函数

5、类型之前。不过,编译器会将在类的说明部分定义的任何函数都认定为内联函数,即使它们没有用inline说明。8递归函数如果一个函数在其函数体内直接或间接地调用了自己,该函数就称为递归函数。递归是解决某些复杂问题的十分有效的方法。递归适用以下的一般场合。(1)数据的定义形式按递归定义。(2)数据之间的关系(即数据结构)按递归定义,如树的遍历,图的搜索等。(3)问题解法按递归算法实现,例如回溯法等。使用递归需要注意以下几点:(1)用递归编写代码往往较为简洁,但要牺牲一定的效率。因为系统处理递归函数时都是通过压栈/退栈的方式实现的。(2)无论哪种递归调用,都必须有递归出口,即结束递归调用的条件。(3)编

6、写递归函数时需要进行递归分析,既要保证正确使用了递归语句,还要保证完成了相应的操作。9变量作用域与生存周期1C+中变量的存储类型分为如下几种类型:auto函数内部的局部变量(auto可省略不写)。static静态存储分配,又分为内部和外部静态。extern全局变量(用于外部变量说明)。register变量存储在硬件寄存器中。(1)自动变量在函数内部定义的局部变量即为自动变量,用于说明自动变量的关键字auto可以省略。在函数头部定义的自动变量作用域为定义它的函数;而在块语句中定义的自动变量作用域为所在块。与C不同,C+还允许在变量使用之前才定义变量。编译程序不给自动变量赋予隐含的初值,故其初值不

7、确定。因此,每次使用自动变量前,必须明确地赋初值。形参可以看成是函数的自动变量,作用域仅限于相应函数内。自动变量所使用的存储空间由程序自动地创建和释放。当函数调用时为自动变量创建存储空间,函数调用结束时将自动释放为其创建的存储空间。因此,自动变量随函数的调用而存在并随函数调用结束而消失,由一次调用到下一次调用之间不保存值。(2)外部变量在函数外部定义的变量即为外部变量。外部变量的作用域是整个程序(全局变量)。在C+中,程序可以分别放在几个源文件上,每个文件可作为一个编译单位分别编译。外部变量只需在某个文件上定义一次,其他文件若要引用此变量时,应用extern加以说明。(外部变量定义时不必加ex

8、tern关键字)。在同一文件中,若前面的函数要引用在其后面定义的外部(在函数之外)变量时,也应用extern加以说明。外部变量是由编译程序在编译时给其分配空间,属于静态分配变量,对于数值型(整型、浮点型和字符型)外部变量来说,其有隐含初值0。引进外部变量的原因:其一是只要程序运行外部变量的值是始终存在的;其二是外部变量可以在所有函数间共享。在C+中,可以使用外部变量,但是,必须要清楚使用外部变量的副作用。使用外部变量的函数独立性差,通常不能被移植到其他程序中,而且,如果多个函数都使用到某个外部变量,一旦出现问题,就很难发现问题是由哪个函数引起的。在C+中,尽量不用或少用外部变量,可使用参数在函

9、数间进行数据的传递。基本控制结构1C+语句C+语句按照不同功能大体分为6种类型,它们是:(1)声明语句:用于对程序中的各种实体进行声明、定义及初始化。(2)表达式语句:用于对程序中的数据进行具体操作和处理。(3)选择语句:用于实现程序的选择结构。(4)循环语句:用于实现程序的循环结构。(5)跳转语句:用于实现程序执行流程的转移。(6)复合语句:用于表示程序中的语句块概念。应当指出的是,C+中并不存在赋值语句和函数调用语句,赋值和函数调用都属于表达式而不是语句。2顺序结构1声明语句声明语句又称为说明语句,它可以用来对程序中出现的各种名称进行声明。这些名称通常是表示变量、常量、函数、结构、类、对象

10、等实体的标识符。在C+程序中,一个名称在使用之前必须先被声明。声明的目的是告诉编译器某个名称所指代的实体类型。使用声明语句能够在程序中进行如下操作:(1)变量声明(2)常量声明(3)函数声明(4)类型声明声明语句可以完成的工作不仅局限于为名称指定类型,同时也是定义语句。另外,使用声明语句还可以在定义变量时对其进行初始化。2表达式语句C+中所有对数据的操作和处理工作都是通过表达式语句来完成的。表达式语句的语法格式为:表达式;(1)赋值操作。(2)复合赋值操作。(3)增量、减量操作。(4)函数调用操作。(5)输入输出操作。3基本输入输出一个程序通常会向用户输出一些信息,一般也会要求用户输入一些信息

11、。C+程序的输入输出操作是通过标准库中的输入/输出流对象来完成的。在头文件iostream中定义了代表屏幕的标准输出流对象cout和代表键盘的标准输入流对象cin。cin和cout具有强大的输入输出功能和极为灵活的用法。在程序中使用cin和cout之前,应首先加入预处理命令:#includeiostream,以包含标准头文件iostream。使用cout进行数据输出操作的一般格式为:coutExpr;这是一条表达式语句。其中,Expr代表一个表达式;“”称为插入运算符。整条语句的含义是:将表达式Expr的值输出(显示)到屏幕上当前光标所在位置。4复合语句和空语句复合语句又称为块语句,它是用一对

12、花括号“”将若干条语句包围起来而组成的一条语句,其语法格式为:语句语句语句n其中,语句i(i1,2,n)可以是声明语句、表达式语句、选择语句、循环语句或跳转语句等任何合法的C+语句,当然,也可以是一个复合语句。分隔符“”和“”的作用是把若干条语句组成的序列包围起来,使它们在逻辑上成为一条语句。复合语句可以出现在程序中任何需要语句的.地方,但在通常情况下复合语句可以作为以下成分出现在程序中。(1)函数的函数体;(2)循环语句的循环体;(3)if语句的分支;(4)switch语句的执行部分。实际上,空语句是一种特殊的表达式语句。其语法格式为:;即空语句只由一个分号组成。3选择结构1语句if语句又称

13、为条件语句,它是程序设计语言中最常见的一种选择语句。(1)基本if语句基本if语句的功能是根据给定条件是否成立来决定要不要执行一条语句或语句块,它的语法格式如下:if(条件)语句其中,if为关键字;条件通常是一个表达式且必须用圆括号包围起来;语句称为if子句,它可以是任何类型的语句(包括复合语句和空语句)。基本if语句的执行过程是:首先计算条件的值,如果此值不为0(“真”),则执行语句;如果此值为0(“假”),则忽略语句(即不执行)而继续执行if语句之后的下一条语句。说明:C+中规定:如果条件是一个表达式,则当此表达式的值不为0时,条件结果为“真”;只有当此表达式的值为0时,条件结果才为“假”

14、。条件也可以是一条声明语句,其中必须定义一个变量并对它进行初始化。这时,若此变量的值不为0,则条件结果为“真”;若此变量的值为0,则条件结果为“假”。(2)ifelse语句ifelse语句是基本if语句的扩展,其功能是根据给定条件是否成立来决定执行两部分语句中的哪一部分,其语法格式如下:if(条件)语句1else语句2其中,if和else为关键字;语句1称为if子句,语句2称为else子句,它们可以是单条语句或复合语句。ifelse语句的执行过程是:首先计算条件的值,如果此值不为0(“真”),则执行语句1,然后忽略语句2而去执行if语句之后的下一条语句;如果此值为0(“假”),则忽略语句1,执

15、行语句2,然后继续执行if语句之后的下一条语句。(3)if语句的嵌套if子句和else子句可以是任何类型的C+语句,当然也可以是ifelse语句本身。通常将这种情况称为if语句的嵌套。2switchswitch语句又称为开关语句,它也是一种选择语句。switch语句的功能是根据给定表达式的不同取值来决定从多个语句序列中的哪一个开始执行,其语法格式如下:switch(表达式)case常量表达式1:语句序列1case常量表达式2:语句序列2case常量表达式n:语句序列ndefault:语句序列n+1其中,switch,case和default为关键字;表达式的值必须属于整型、字符型或枚举型。常量

16、表达式i(i=1,2n)是取值互不相同的整型常量、字符常量或枚举常量,其具体类型应与表达式的值相一致。语句序列i(i=1,2n,n+1)可以是任意多条语句。switch语句的执行过程是:(1)首先计算出表达式的值,设此值为E;(2)然后计算每个常量表达式i的值,设它们分别为C1,C2,Cn;(3)将E依次与C1,C2,Cn进行比较。如果E与某个值相等,则从该值所在的case标号语句开始执行各个语句序列,在不出现跳转语句的情况下,将一直执行到switch语句结束。(4)如果E与所有值都不相等且存在default标号,则从default标号语句起开始向下执行,直到switch语句结束(同样,在不出

17、现跳转语句的情况下)。(5)如果E与所有值都不相等且不存在default标号,则switch语句不会执行任何操作。(1)多个case标号可以共用一组语句序列,以实现对于几个常量值都执行同一操作。(2)default标号语句是可选的。当default不出现时,如果表达式的值与所有常量表达式i(i=1,2n)的值都不相等,则程序执行流程会跳过switch语句。(3)switch语句是可以嵌套的。case和default标号只与包含它们的最内层的switch组合在一起。(4)当需要针对表达式的不同取值范围进行不同处理时,使用ifelseif阶梯结构比较方便。因为switch语句只能对相等关系进行测试

18、,而if语句却可以用关系表达式对一个较大范围内的值进行测试。4循环结构1for语句for语句是C+中最常用且功能最强的循环语句,其语法格式如下:for(表达式1;表达式2;表达式3)语句其中,for为关键字;表达式1是for循环的初始化部分,它一般用来设置循环控制变量的初始值;表达式2是for循环的条件部分,它是用来判定循环是否继续进行的条件;表达式3是for循环的增量部分,它一般用于修改循环控制变量的值;语句称为for循环的循环体,它是要被重复执行的代码行,for循环体可以是单条语句,也可以是由花括号包围起来的复合语句。for语句的执行过程是:(1)计算表达式1的值;(2)计算表达式2的值,

19、如果此值不等于0(即循环条件为“真”),则转向步骤(3);如果此值等于0(即循环条件为“假”),则转向步骤(5);(3)执行一遍循环体语句:(4)计算表达式3的值,然后转向步骤(2);(5)结束for循环。C+中for语句的书写格式非常灵活,这主要表现为:(1)表达式1可以是变量声明语句,即循环控制变量可在其中定义。(2)表达式1可以省略。这时,应在for语句之前给循环控制变量赋初始值。注意:省略表达式1时,其后的分号不能省略。(3)表达式2可以省略。这时,for语句将不再判断循环条件,循环会无限次地执行下去。这种情况通常称为“死循环”。(4)表达式3可以省略。这时,应在循环中对循环控制变量进

20、行递增或递减操作,以确保循环能够正常结束。(5)三个表达式可同时省略。这时,for语句显然也是一个“死循环”。(6)表达式1、表达式2和表达式3都可以是任何类型的C+表达式。2while语句while语句是一种形式较为简单的循环语句,其语法格式如下:while(表达式)语句其中,while为关键字:表达式是while循环的条件,它用于控制循环是否继续进行;语句称为while循环的循环体,它是要被重复执行的代码行;while循环体可以是单条语句,也可以是由花括号括起来的复合语句。实际上,while语句是for语句省略掉表达式1和表达式3的特殊情况。while语句的执行过程是:(1)计算表达式的值

21、,如果此值不等于0(即循环条件为“真”),则转向步骤(2);如果此值等于0(即循环条件为“假”),则转向步骤(4);(2)执行一遍循环体语句;(3)转向步骤(1);(4)结束while循环。从中可以看出,while语句将在表达式成立的情况下重复执行语句;如果在第一次进入while循环时表达式就不成立,则语句一次也不会执行。(1)由于while语句中缺少对循环控制变量进行初始化的结构,因此在使用while循环之前对循环控制变量进行初始化显得很重要。(2)在while循环体中不要忘记对循环控制变量的值进行修改,以使循环趋向结束。3dowhile语句;dowhile语句也是一种循环语句,它的功能类似

22、于while语句,只是将循环的判定条件移到了循环体之后,其语法格式如下:do语句while(表达式);其中,do和while为关键字;语句称为dowhile循环的循环体,它是要被重复执行的代码行,dowhile循环体可以是单条语句,也可以是由花括号包围起来的复合语句;表达式是dowhile循环的条件,它用于控制循环是否继续进行。在dowhile语句中最后的分号不能丢掉,它用来表示dowhile语句的结束。dowhile语句的执行过程是:(1)执行一遍循环体语句;(2)计算表达式的值,如果此值不等于0(即循环条件为“真”),则转向步骤(1);如果此值等于0(即循环条件为“假”),则转向步骤(3)

23、;(3)结束dowhile循环。(1)在使用dowhile循环之前同样需要对循环控制变量进行初始化;在dowhile循环中仍然不要忘记对循环控制变量进行修改,以使循环趋向结束,避免死循环的发生。(2)dowhile循环与while循环的不同之处在于:dowhile循环的循环体在前,循环条件在后,因此dowhile循环体在任何条件下(即使不满足循环条件)都至少被执行一次。而while循环条件在前,循环体在后,当条件不满足时,循环体有可能一次也不会执行。这一点正是在构造循环结构时决定使用while语句还是dowhile语句的重要依据。循环的嵌套在一个循环结构中又完整地包含着另一个循环结构称为循环的

24、嵌套。C+中三种类型的循环语句都可以相互嵌套,并且嵌套的层数没有限制。程序设计中有许多问题需要使用循环结构的嵌套来解决。5跳转语句C+中有4种跳转语句,它们是:break语句、continue语句、return语句和goto语句。1break语句break语句又称为跳出语句,其语法格式如下:break;即由关键字break加上一个分号构成。break语句只能用在switch语句和循环语句中。在switch语句中,break用来使执行流程跳出switch语句,而继续执行switch后面的语句。在循环语句中,break用来使执行流程无条件地跳出本层循环体。另外,break语句还经常用于使执行流程跳

25、出死循环。2continue语句continue语句又称为继续语句,其语法格式如下:continue;即由关键字continue加上一个分号构成。continue语句仅用在循环语句中,它的功能是:结束本次循环,即跳过循环中尚未执行的语句,接着进行下一次是否执行循环的条件判定。在while和dowhile循环中,continue语句将使执行流程直接跳转到循环条件的判定部分,然后决定循环是否继续进行。在for循环中,当遇到continue时,执行流程将跳过循环中余下的语句,而转去执行for语句中的表达式3,然后根据表达式2进行循环条件的判定以决定是否继续执行for循环体。3return语句return语句又称为返回语句,它具有两种语法格式:(1)return;(2)return表达式;其中,return为关键字,第2种格式中的表达式可以是任何类型的C+表达式。return语句只能用在函数体中。在返回类型为void的函数体中,若想跳出函数体,将执行流程转移到调用该函数的位置,应使用return语句的第1种格式。在返回类型不是void的函数体中,应使用return语句的第2种格式,使执行流程转移到调用该函数的位置,并将表达式的值作为函数的

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1