C 程序设计试卷

发布 2021-04-24 20:38:28 阅读 7787

一、 填空题(15分,每空1分)

1、变量的四种作用域分别是和___

2、下面的函数fun未使用中间变量实现了对两个数的交换,请完成下列函数的定义。

voidfun(int&x,int&y)

x+=y;y

3、函数的调用方式分为两种:__调用和___调用。其中,第一个空对应的调用又根据c++中变量值的不同分为:传递变量本身值的调用___和___的调用。

4、在类的定义形式中,数据成员、成员函数和组成了类定义体。

5、有如下定义语句:myclass*p;,则执行p=newmyclass;语句时,将自动调用该类的___执行deletep;语句时,将自动调用该类的___

6、在一个函数的定义或声明前加上关键字___时,该函数就声明为内联函数。

7、执行完下列三条语句后,,指针变量c指向。

inta,b,*c=&a;

int*&p=c;

p=&b;二、 选择题(20分,每空2分)

1、c++源程序文件的扩展名为___

a)cppb)c

c)dlla) exe

2、c++语言中,main函数默认返回一个___类型的值。

a) int b)fioat c)char d)void

3、关于函数返回值类型和返回值表达式的类型的描述中,错误的是。

a)函数返回值类型决定了返回值表达式的类型。

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

c)函数返回值的类型就是返回值表达式的类型。

d)函数返回值表达式类型与返回值类型不同时,函数表达式类型应转换成函数返回值类型

4、函数定义为fun(int&i),变量定义n=100,则下面调用正确的是。

a) fun(n) b)fun(20+n) c) fun(20) d)fun(&n)

5、对于下面定义的类myclass,在函数f()中将对象成员n的值修改为50的语句应该是。

classmyclass

public:

myclass(intx)

voidsetnum(intnl)

private:

intn;intf()

myc1ass*ptr=newmyclass(45);

a)myclass(50) b)setnum(50) c)ptr->setnum(50) d)ptr->n=50

6、关于new运算符的错误的描述是。

a)使用运算符new创建对象数组时必须定义初始值

b)使用运算符new创建对象时,会调用类的构造函数。

c)运算符new可以用来动态创建对象和对象数组

d)使用new运算符创建的对象可以使用运算符delete删除

7、局部变量可以隐藏全局变量,那么在有同名全局变量和局部变量的情形时,可以用提供对全局变量的访问。

a)域运算符 b)类运算符 c)重载 d)引用

8、基类的不能为派生类的成员访问,基类的在派生类中的性质和继承的性质一样,而基类的在私有继承时在派生类中成为斯又成员函数,在共有和保护继承时在派生类中仍为保护成员函数。

a)共有成员 b)私有成员 c)私有成员函数 d)共有成员函数。

三、 阅读程序填空(15分,第一个空1分,其它空2分)

1. 下面的程序用于求出1~1000之间的完全平方数。所谓完全平方数是指能够表示成为另一个整数的平方的数。要求每行输出8个数。

#include <>

#include <>

void main ()

int i,n=0;

for ( i=1;i<=(inti++)

n++;ifcout

cout <

2、下面是一个求数组元素之和的程序。主程序中定义并初始化了一个数组,然后计算该数组各元素之和,并输出结果。

函数totalsum计算数组元素之和。请完成下列程序。

#include<>

voidmain()

inta[5]=;

total=totalsum(a,5);

cout<<"sumofarray:"<

inttotalsum(intarray,intlen)

for(inti=0i++)

returnsum;

四、 阅读程序,并写出结果(20分,每题5分)

#include<>

void main()

int i,j;

for(i=4;i>=1;i--)

#include<>

void main()

int a=pa=a;

int *&pb=pa;

pb++;cout<<*pa<}

#include <>

#include <>

void print (int n)

if (n!=0)

print (n-1);

for (int i=1;i<=n;i++)

cout <

cout <

void main ()

int n=4;

print (4);

#include <>

void func (int),func (double);

void main ()

double a=88.18;

func (a);

char b=’a’;

func (b);

void func (int x)

cout <

void func (double x)

cout <

五、编程题(30分,每题10分)

1、 编写一个程序求一元二次方程ax2+bx+c=0 的解。

讨论下述情况:

1)b2-4ac=0,有两个相等实根;

2)b2-4ac >0,有两个不相等实根;

3)b2-4ac<0,无实根;

4)a=0,不是二次方程;

2、假设一只公鸡值五钱,一只母鸡值三钱,三只雏鸡值一钱,若有一百钱用来买这三种鸡,公鸡、母鸡和雏鸡各能买几只?一共有几种可能的买法?编写一个程序求解。

3、编写一个程序计算两个给定长方形的周长。其中在设计类成员函数tlength()(将两个长方形的周长合并为一个临时长方形)以对象作为返回值。

C程序设计试卷1C程序设计

c 程序设计试卷。一 选择题。每小题3分,共15分 1 派生类能够直接访问的基类的成员是 a 公有成员 b 保护成员 c 私有成员 d 静态。2 下面是几条定义类的语句,不能被继承的类是 a abstract class figure b class figure c public class fi...

C 程序设计试卷C

面向对象的程序设计c 试卷c 一 填空 每空2分,共20分 1 定义于函数外的变量称为。2 假定class1为一个类,则执行 class1 a 5 b 2 p 3 语句时,自动调用该类构造函数的次数为。3 利用操作符 语句序列p p 1 f p 5 的功能可以由一个语句完成。4 不借助于其他变量交换...

C 程序设计试卷 A

c 程序设计课程期末考试试题 a卷 一判断题 正确打 a 错误打 b 每小题1分,共计20分 1在面向对象的编程中,和数据合并为一个不可分割的对象。2对象是有确定简介且与要处理的问题相关的概念或事物。3每个对象都称为它的类的一个示例。类中的对象具有相同的属性和共同的行为。4多态性是指相同的函数可以在...