admin 管理员组

文章数量: 887021


2023年12月20日发(作者:如何在mysql官网下载mysql)

第二章 C++基础知识练习题

1结果,.请先阅读下面的然后再上机运行程序,2个程序,写出程序运行的验证自己分析的结果是否正确。

程序包含头文件命令#include

1:

//使用名字空间using namespace std;

std

//int main()

{

cout<<"This "<<"is ";

cout<<"a "<<"C++ ";

cout<< "program."<

}

return 0;

程序2:

包含头文件命令#include

//使用名字空间using namespace std;

std

//int main()

//定义三个变量{ int a,b,c;

a、

b

输出提示信息到屏幕 cout<<"Please input to a and b:"<

、c

//等待用户从键盘输入数据 cin>>a>>b;

//

cout<< "a+b=" ;

c=a+b;

cout<

cout<

}

return 0;

2

如果有错误,请修改程序,再进行编译,直到没.输入以下程序,进行编译,观察编译结果,有错误,然后进行连接和运行,并分析运行结果。

包含头文件命令#include

//使用名字空间using namespace std;

std

//int main()

//定义两个变量{ int a,b;

a

b

cout<<"Please input to a and b: "<

//输出提示信息到屏幕等待用户从键盘输入数据 cin>>a>>b;

//输出结果信息至屏幕 cout<< "Max="<< max(a,b)<

//主函数返回 return 0;

0至操作系统

//}

//3求两个数中的大者的函数int max(int x, int y) { return (x> y) ?x:y;

}

的最大数,并在主函数中调用此函数。.编写一个函数,用来求2个或3个正整数中

(1) 用不带默认参数的函数实现。

(2) 用带默认参数的函数实现。

对比两种方法,分析使用带默认参数的函数的优点和应用场合。总结如何选择默认参数的值。请分析本题中默认参数的值应该在什么范围选取。

4大的顺序排序,并在主函数中调用此函数。要.编写一个函数,用来实现对3个数按由小到求函数的形参用以下两种形式实现:

(1)使用指针形参

(2)使用引用形参

5升序排序,数据类型可以是整型、单精度型、.编写程序,用同一个函数名实现n个数据的字符串型。用重载函数实现。

6代第一个字符串。.编写程序,将两个字符串连接起来,结果取

第2章 C++基础知识补充习题

一、选择题

1、下列关于C++A C++语言起源于C++语言的发展说法错误的是C语言

)B

在1983C

语言最初被称为“带类的 在年1980C++被命名年C++

被命名C

D

2变而成的一种程序设计语言。、C++语言是以 语言为基础逐渐发展而演( )

Basic

A Pascal B C C

3是(、下列关于 D Simula67

)。

C++与C语言关系的描述中错误的

A

B

C++C++是是CC语言的超集语言进行了扩充

语言C

C++

和C语言都是面向对象的程序设计4D C++包含C语言的全部语法特征

(、下列 )。

C++标点符号中表示行注释开始的是//

A # B ;

5、每个 D }

C

函数A

预处理命令C++程序都必须有且仅有一个( D 语句

B 主函数

C

6一项使得、C++对CC语言做了很多改进,下列描述中哪语言发生了质变,即从面向过程变成面向对象( )。

允许函数重载,并允许设置默认参数A 增加了一些新的运算符

B

引进类和对象的概念C 规定函数说明必须用原型

7

D

(、对定义重载函数的下列要求中,错误的是 )。

要求参数中至少有一个类型不同A 要求参数的个数不同

B

要求函数的返回值不同C 要求参数个数相同时,参数类型不同

D

8的描述中,错误的是(、在函数的返回值类型与返回值表达式的类型 )。

在函数调用时是不能改变的A 函数返回值的类型是在定义函数时确定,

类型B

函数返回值的类型就是返回值表达式的同时,函数表达式类型应转换成返回值类型C 函数返回值表达式类型与返回值类型不

类型D

函数返回值类型确定了返回值表达式的9、下列不正确的选项是(计,又支持面向对象程序设计的混合型语言A C++语言是一种既支持面向过程程序设 )。

范围作用的一类单词B 标点符号是在程序中起分割内容和界定

些输入输出流对象C iostream是一个标准的头文件,定义了一

10、下列表示引用的方法中,正确的是(D 类与类之间不可以进行通信和联络已知:int k=1000;

)。

int &z=1000;

A int &x=k; B char &y;

二、填空题

D float &t=&k;

C

1设计,又可以进行面向、C++既可以用来进行面向

程序设计。 程序

2另一种是、常量分成两种,一种是 常量。

常量,3变量直接操作完全一样。、 就是某一变量的别名,对其操作与对

4种函数调用方式:、按函数在语句中的地位分类,可以有以下 ,

3

5

是、函数与引用联合使用主要有两种方式:一 ;二是 。

6成:、

由 ,三

组,

三、程序阅读题 。

1、分析下面的执行结果#include

using namespace std;

int main()

{

整型变量int

a,b,sum; // 定义a,b,sum三个a=43;

b=37;

// 把整数常量赋给变量a

量sum

sum=a+b;

// a与b相加的和赋给变cout<<"The sum is"<

cout<

}

return 0;

2、分析以下程序的执行结果#include

int main()

using namespace std;

{

int a;

int &b=a;

b=10;

//变量引用

cout<<"a="<

return 0;

3、下列程序的执行结果为}

#include

void mian()

using namespace std;

{

int n=10;

int* pn=&n;

int* &rn=pn;

(*pn)++;

cout<<"n="<

4、下面程序的运行结果是}

(*rn)++;

cout<<”n=”<

#include

void fun(int &a,int &b)

using namespace std;

{

}

int p;

p=a; a=b; b=p;

void exchange(int &a,int &b,int &c)

{

if(a

}

if(a

if(b

int main()

{

int a,b,c;

a=12;

b=639;

cout<<"a="<

c=78;

exchange(a,b,c);

}

return 0;

5、下面的程序输出结果为

#include

int main()

using namespace std;

{

int *ir;

int i;

ir=&i;

i=17;

cout<<"int i="<

cout<<"int ir="<<*ir<

6、下面程序的输出结果为}

#include

int fun(char *s);

using namespace std;

int main()

{

cout<

}

return 0;

int fun(char *s)

{

while(*t!='0')

char *t=s;

t++;

}

return(t-s);

第2章 C++基础知识补充习题答案

一、选择题

1(、下列关于 C )。

C++语言的发展说法错误的是C++A

语言最初被称为“带类的 C++语言起源于C语言C” B

在1983C 在年1980C++被命名年C++

被命名

D

2变而成的一种程序设计语言。、C++语言是以 语言为基础逐渐发展而演( B )

Basic

A

3

Pascal B C C

是(、下列关于

C )。

C++D

与Simula67

C语言关系的描述中错误的

A

B

C++C++是是CC语言的超集语言进行了扩充

语言C

C++

和C语言都是面向对象的程序设计

4D C++包含C语言的全部语法特征(、下列 C )。C++

标点符号中表示行注释开始的是

//

A # B

5、每个

; C

函数A

预处理命令C++

程序都必须有且仅有一个(D }

D 语句

B 主函数

B

。C

6一项使得、C++对CC语言发生了质变,语言做了很多改进,下列描述中哪即从面向过程变成面向对象( D )。

允许函数重载,并允许设置默认参数A 增加了一些新的运算符

B

引进类和对象的概念C 规定函数说明必须用原型

D

7(、对定义重载函数的下列要求中,错误的是 D )。

A 要求参数的个数不同

B

要求函数的返回值不同C

要求参数中至少有一个类型不同 要求参数个数相同时,

参数类型不同

D

8的描述中,错误的是(、在函数的返回值类型与返回值表达式的类型 B )。

定,在函数调用时是不能改变的A 函数返回值的类型是在定义函数时确类型B

函数返回值的类型就是返回值表达式的同时,函数表达式类型应转换成返回值类型C 函数返回值表达式类型与返回值类型不

类型D

函数返回值类型确定了返回值表达式的9、下列不正确的选项是( D )计,又支持面向对象程序设计的混合型语言A C++语言是一种既支持面向过程程序设。

围作用的一类单词B 关键字是在程序中起分割内容和界定范

些输入输出流对象C iostream是一个标准的头文件,

定义了一10、D

已知:下列表示引用的方法中, 类与类之间不可以进行通信和联络int k=1000;

正确的是( A

)。

C

A int &x=k; B

二、填空题 int &z=1000;

D float &t=&k;

char &y;

1计,又可以进行面向、C++既可以用来进行面向 过程

程序设计。 对象 程序设

2一种是、常量分成两种,一种是 符号 常量。

直接 常量,另3对变量直接操作完全一样。、 引用 就是某一变量的别名,对其操作与

4种函数调用方式:、按函数在语句中的地位分类,可以有以下 函数语句 ,

3

5 函数表达式 , 函数参数

函数的参数是引用、函数与引用联合使用主要有两种方式:一是 。

;二是 函数的返回值

是引用 。

6的文件头注释、头文件由三部分内容组成: , 预处理块

,头文件开头处 函数和类结构声明 。

三、程序阅读题

(略)

第5章 多态性与虚函数

@@@@@@@@@@@@@@@@@@@@@@@@@@@

1.为求图形面积的函数。下列shape类是一个表示形状的抽象类,请从shape类派生三角形area( )类(triangle)、矩形类(rectangle),并用一个函数printArea()

分别输出以上三者的面积。

class shape

{public:

virtual double area()const=0;

};

~~~~~~~~

2.下列shape类是一个表示形状的抽象类,area( )为求图形面积的函数,要求:

(1)请从shape类派生三角形类(triangle)、矩形类(rectangle),并给出具体的求面积函数。

(2)写一个通用的用以求不同形状的图形面积总和的函数total() 。

class shape

{public:

virtual double area()const=0;

};

答案1:

#include

#include

class shape{ public: virtual float area()=0; };

class triangle:public shape{ int x,y,z;

public: triangle(int xx,int yy,int zz)

{ x=xx;y=yy;z=zz; }

float area(){

return

float(sqrt((x+y+z)*(x+y-z)*(x+z-y)*(y+z-x)/16)); }};

class rectangle:public shape{

int x1,y1,x2,y2;

public:

rectangle(int xx1,int yy1)

{x1=xx1;y1=yy1;}

float area(){

return float(x1*y1); }};

void main(){

triangle *pc=new triangle(3,4,5);

rectangle* pr=new rectangle(2,6);

shape* pS[2]; pS[0]=pc; pS[1]=pr;

for(int i=0;i<2;i++)

{ cout<area()<


本文标签: 函数 程序 类型 语言 返回值