C语言程序设计试题试题及答案.pdf

上传人:文*** 文档编号:88947493 上传时间:2023-05-04 格式:PDF 页数:59 大小:3.30MB
返回 下载 相关 举报
C语言程序设计试题试题及答案.pdf_第1页
第1页 / 共59页
C语言程序设计试题试题及答案.pdf_第2页
第2页 / 共59页
点击查看更多>>
资源描述

《C语言程序设计试题试题及答案.pdf》由会员分享,可在线阅读,更多相关《C语言程序设计试题试题及答案.pdf(59页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、C语言程序设计试卷,C+语言程序设计试题及答案一、单项选择题(每题1 分,共 2 0分)1 .C语言规定:在一个源程序中,m ain 函数的位置(C )。A.必须在最开始B.必须在系统调用的库函数的后面C.可以任意D.必须在最后2 .下面四个选项中,均是合法浮点数的选项是(B)。A.+l e+l 5 e-9.4 03 e2B.60 1 2 e-4 -8 e5C.1 2 3 e 1.2e.4 +2 eTD._e3 .8 e_4 5.e_03 .若 a=T4,b=3,则条件表达式a b?a:b+l 的值为(A )A.-1 4 B.-1 3 C.3 D.44 .已知:in t n,i=l,j=2;执

2、行语句 n=i j?i+:j+;则 i 和 j 的值是(c ).A.1,2 B,1,3 C.2,2 D.2,35 .为了判断两个字符串s i和 s 2 是否相等,应当使用(D )A.if (s l=s 2)B.if(s l=s 2)C.if (s t r c m p(s l,s 2)D.if (s t r c m p(s l,s 2)=0)6.以下正确的描述是(B)。A.函数的定义可以嵌套,但函数的调用不可以嵌套。B.函数的定义不可以嵌套,但函数的调用可以嵌套。C.函数的定义和函数的调用均不可以嵌套。D.函数的定义和函数的调用均可以嵌套。7 .在 C语言中,下面对函数不正确的描述是(D)。A.

3、当用数组名作形参时,形参数组值的改变可以使实参数组之值相应改变。B.允许函数递归调用。C.函数形参的作用范围只是局限于所定义的函数内。D.子函数必须位于主函数之前。8 .如果在一个函数中的复合语句中定义了一个变量,则以下正确的说法是(A)。A.该变量只在该复合语句中有效B.该变量在该函数中有效C.该变量在本程序范围内均有效D.该变量为非法变量9 .以下正确的函数形式是(D )。A.d o u bl e f u n (in t x,in t y)z=x+y;r et u r n z;B.f u n(in t x,y)in t z;r et u r n z;C.f u n(x,y)in t x,y

4、;d o u bl e z;z=x+y;r et u r n z;D.d o u bl e f u n(in t x,in t y)d o u bl e z;z=x+y;r et u r n z;1 0.以下程序的输出结果是(B)。#in c l u d e#d ef in e F(y)8.1 9 y#d ef in e PRI NT(a)pr in t f (,/%d,/,(in t)(a)v o id m ain(v o id)(in t x=2;PRI NT(x*F(3);)A.1 0 B.1 3 C.1 1 D.报错1 1.以下程序中编译和运行结果均正确的一个是(C )。A.A.v o

5、 id m ain(v o id)(u n io n(in t n;f l o at x;c o m m=l ;pr in t f(%d ,c o m m,n);)B.B.v o id m ain (v o id)(u n io n(in t n;f l o at x;c o m m=1 2.5 ;pr in t f (%f ,c o m m,x);)C.C.v o id m ain (v o id)(u n io nf l o at x;in t n;c o m m=1 2.5 pr in t f(%f”,c o m m,x);)D.D.v o id m ain(v o id)(u n io

6、 n(in t n;f l o at x;c o m m=5;pr in t f(%d ,c o m m,n);1 2 .设有定义:in t a=l,*p=&a;f l o at b-2.0;c har c=A;以下不合法的运算是(A)。A.p+;B.a-;C.b+;D.c-;1 3 .以下程序中调用s c an f函数给变量a输入数值的方法是错误的,其错误原因是(B)。m ain()(in t *p,*q,a,b;P=&a;pr in t f(z,in pu t a:);sca nf*p);A.*p表示的是指针变量p的地址B.*p表示的是变量a的值,而不是变量a的地址C.*p表示的是指针变量

7、p的值D.*p只能用来说明p是一个指针变量1 4 .若n u m、a、b和c都 是in t型变量,则执行表达式n u m=(a=4,b=1 6,c=3 2);后n u m的值为(C )oA.4 B.1 6 C.3 2 D.5 21 5 .已有如下定义和输入语句,若要求al,a2,c l,c 2的值分别为1 0,2 0,A和B,当从第一列开始输入数据时,正确的数据输入方式是(C ),(注:一表示空格)in t al,a2,c har c l,c 2;s c an f (,%d%c%d%c&al,&c l,&a2,&c 2);A.1 0A _ 2 0_ B B.1 0_ A _ 2 0_ B C.

8、1 0A 2 0B D.1 0A 2 0_ B1 6.若有说明:in t a 1 0;则对a数组元素的正确引用是(C )。A.a 1 0 B.a 3.5 C.a 5-3 D.a-l 1 7 .在C语言中,一维数组的定义方式为类型说明符 数组名;(A)A.整型常量表达式B.表达式C.整型常量D.整型表达式1 8 .以下能对一维数组a进行正确初始化的语句是(C )。A.in a 1 0 =(0,0.0,0,0);B.in t a 1 0 =;C.in t a =0;D.in t a 1 0 =1 0*l);1 9.以下程序段(C)。x=-l;d o(x=x*x;w h i 1 e (!x);A.是

9、死循环B.循环执行二次C.循环执行一次D.有语法错误2 0.以下关于do-while循环的不正确描述是(B)。A.do-while的循环体至少执行一次B.do-while循环由do开始,用 w hile结 束,在 while(表达式)后面不能写分号C.在 do-while循环体中,一定要有能使w hile后面表达式的值变为零(假)的操作D.do-while的循环体可以是复合语句二、是非判断题(每 题 1 分,共 15分)1.C语言规定,标识符中的字母一般区分大、小写。T2.控制台标准输入设备一般是指键盘。T3.使 用 w hile和 do-while循环时,循环变量初始化的操作应在循环语句之前

10、处理。T4.循环体中continue语句的作用是结束整个循环的执行。F5.关系表达式的值是0 或 1。T6.若有说明:int a34=0 ,则只有元素a0 0可得到初值0。T7.字符串作为一维数组存放在内存中。T8.字符数组中的一个元素存放一个字符T。9.字符数组中的最后一个字符必须是 0。F10.形参为指针变量时,实参必须是数组名。F11.用数组名作函数参数时传递的是数组的值。F12.全局变量可以被任何一个函数中的任何一个表达式使用。T13.一个函数可以带回一个整型值、字符值、实型值等,也可以带回指针型的数据。14.表达式i+与+i在任何场合功能完全相同。15.在赋值表达式中,赋值号左边的变

11、量和右边的表达式之值的数据类型可以不相同。三、多项选择题(每 题 1 分,共 5 分)1.若要求在i f 后一对圆跨括号中表示a 不等于0 的关系,则不能正确表示这一关系的表达式为(ABC).A.a0B.!aC.a=0D.aE.a!=02.选出所有合法的常量(CEGIJ)。A.3e22.5B.-e-3C.le-lD.BASICE.045F.OfdG.OxfdaLH.e8J.3 .以下关于函数原型说法错误的是:(A D F H I)(1)对变量的定义”和“声明”是一回事,对函数的“定义”和“声明”也是一回事。(2)在声明函数原型时,允许只写出参数的类型,而不必写出参数的名称。(3)如果在定义函数

12、时不指定函数类型,系统会隐含指定函数类型为i n t 型。(4)调用一个函数时,函数名、实参个数、实参类型必须与函数原型一致。(5)如果被调函数的定义出现在主调函数之前,可以不必加以声明。(6)所有的函数之间可以互相调用。(7)在 C语言中,所有函数都是平行的,一个函数不能从属于另一个函数,即不能嵌套定义的。(8)如果函数没有返回值,在定义时可以省略函数类型。(9)在 C语言中,任何函数的定义都不允许为空。(1 0)C 语言规定,实参变量对形参变量的数据传递是“值传递”。4 .请从下面关于指针的叙述中,选出5个正确的叙述。(A BD E H)(1)指针即地址。(2)指针须先赋值后使用。(3)当

13、指针p 指向数组a的首址后,由于p 和 a都能引用数组元素,所以这里p 和 a 是等价的。(4)i n t *p 表示定义了一个指向i n t 类型数据的指针变量p。(5)数组的指针是指数组的起始地址。(6)若有定义i n t a 4,*p=a,则 p+后 p 指向数组a 所占内存的第二个字节。(7)使用指针变量作函数参数采取的是“值传递”的方式。(8)相同类型的指针可以进行减法运算。(9)指针变量和许多变量一样可以进行四则运算。(1 0)指针P 指向数组元素a 2,若要其指向a 4,执行p=p*2 即可。5 .以下关于数组的叙述中,5 个最确切的说法是:(B EG HI)(1)在声明一个数组

14、变量时必须指定大小。(2)必须用常量表达式来说明一个数组变量的大小。(3)在对数组进行初始化时大括号中的数据个数必须和数组的大小相同。(4)有变量定义i n t a 3 =0,l,2,b 3;,可以用b=a,使数组b的每个元素和a 的每个元素相等。(5)在 C 语言中,可以将字符串作为字符数组来处理。(6)定义了字符数组c h ar c 1 1;为了给它赋值,可以用c=c h i n a;。(7)如果有 c h ar s 1 5 =/zI am a 0 s t u d e n t”;,则 s t r l e n (s)的值为 6。(8)C语言中,二维数组中元素排列的顺序是:按行存放。(9)在

15、C 语言中,不能对局部的数组变量进行初始化。(1 0)在声明时对数组进行进行初始化必须指定数组大小。四、程序运行结果题(每题4分,共 2 0 分)1.(4 分)下面程序的运行结果是()。#i n c l u d e v oi d m ai n(v oi d)i n t i;c h ar a口=T i m e”,b 二 T om ;f or(i=O;a!=O&b!=0 ;i+)i f (a=b)i f (a=,a&a=z)p r i n t f(c ,a-3 2);e l s e p r i n t f(c”,a+3 2);e l s e p r i n t f(*);)2.(4 分)下面程序段

16、的运行结果是()。i=l;s=3d o(s+=i+;i f (s%7=0)c on t i n u e;e l s e +i;w h l i e(s =0&x =3 0 0 0&x=5 9 9 9)y=3 6+0.6*x;i f (x 二 6 0 0 0&x=1 0 0 0 0)y=5 4+0.3*x;p r i n t f (z,%6.l fz,,y);)4.(4 分)以下程序的运行结果是()。v oi d m ai n(v oi d)i n t a=l,k;f or(k=0;k 3;k+)p r i n t f(%4 d”,f l(a)i n t f l(i n t x)(s t at i

17、 c i n t z=3,y=0;y+;z+;r e t u r n (x+y+z);5.(4 分)以下程序的功能是计算函数F(x,y,z)=(x+y)/(x-y)+(z+y)/(z-y)的值,请选择填空。#i n c l u d e#i n c l u d e f l oat f u n l(f l oat,f l oat);v oi d m ai n(v oi d)(f l oat x,y,z,s u m;s c an f&x,&y,&z);s u m=f u n l()+f u n l ();p r i n t f(s u m=%f n ,s u m);)f l oat f u n l(

18、f l oat a,f l oat b)(f l oat n u m;n u m=a/b;r e t u r n n u m;)五、程序填空题(每题2分,共 2 0 分)1 .下面程序的功能是用公式:n X n/6=l/(l X l)+l/(2 X 2)+l/(3 X 3)+.求 n的近似值,直到最后一项的值小于1 0 e-6 为止。f t i n c l u d e#i n c l u d e v oi d m ai n(v oi d)(l on g i=l;p i=0;w h i l e (i*i=1 0 e+6)p i=;i+;p i=s q r t(6.0*p i);p r i n t

19、 f (z/p i=%1 0.6 f n ,p i);)2.下面程序的功能是把以下给定的字符按其矩阵格式读入数组s t r l 中,并输出行列号之和是 3的数组元素。v oi d m ai n(v oi d)c h ar s t r l 4 3 =A ,b ,C,d ,E,f ,G ,h ,I,j ,K ,i);i n t x,y,z;f or(x=0;x l)#i n c l u d e i n t ag e(i n t n)(i n t c;i f (n=l)c=1 0;e l s e c=;r e t u r n c;)4 .以下程序的功能是判断输入的年份是否是闰年。v o id m a

20、 in(v o id)in t y e a r,y e s;s c a n f(%d,f e y e a r);if (y e a r%4 0 0=0)y e s=l;e l s e if ()y e s=l;e l s e ;if (y e s)p r in t f (/z%d is ,y e a r);e l s e p r in t f (z,%d is n o t ”,y e a r);p r in t f (/za l e a p y e a r.n,?);)5 .以下程序实现:输入三个整数,按从大到小的顺序进行输出。v o id m a in(v o id)(in t x,y,z,

21、c;s c a n f(%d%d%d ,&x,&y,&z);if ()c=y;y=z;z=c;if (2)c=x;x=z;z=c;if()c=x;x=y;y=c;p r in t f (d,%d,x,y,z);)六、填空题(每题1 分,共 2 0 分)1.在 C语言中,一个f l o a t 型数据在内存中所占的字节数为()个字节;一个d o u b l e 型数据在内存中所占的字节数为()个字节。一、单项选择题1.下面正确的字符常量是:A)c B)C)N D)2.下列字符串中不能作为C+标识符使用的是:A)WHILE B)user C)_lvar D)9stars3.执 行 语 句 序 列

22、的 输 出 结 果 是。int i=0;while(i25)i+=3;couti;A)24 B)25 C)27 D)284.下列符号中可以用作C+标 识 符 的 是。A)radius B)foobar C)else D)3room5.若 a 是 int类型变量,则表达式a=25/3%3的值是:A)3 B)2 C)1 D)06.以下叙述中不正确的是:A)在不同的函数中可以使用相同名字的变量B)函数中的形参是局部变量0在一个函数内部定义的变量只在本函数范围内有效D)在一个函数内部定义的变量在所有函数内部有效7.变量的引用,其含义是指该变量的:A.值B.类型C.别名D.地址8 .已知定义:c h a

23、 r s 1 0 ;则下面不表示s 1 的地址的是:A.s+1 B.*(s+l)C.&s O+l D.&s l 9 .通常拷贝构造函数的参数是:A.对象 B.对象的成员 C.对象的引用 D.对象的指针1 0 .派生类对象的构造顺序是先调用:A.派生类的构造函数 B.基类的构造函数C.内嵌对象的构造函数 D.友元类的构造函数二、填空题1 .动态多态是指在(1)_ _时才确定使用哪个(2)_函数的方式。2 .友员不是类的成员,但必须在(3)予以声明,它具有存取类的(4)_ 成员的特权。3 .C+中 c l a s s 与 s t r u c t 的主要区别是在缺省访问权限时,(5)一的成员为私有的

24、,而(6)一的成员为公有的。4 .若有定义语句:in t a=3,b=2;,则表达式a b?a :b的值是(7)。5 .表达式:2 6%3=(8)_ _,3 2/5=(9)。6 .类的成员包括_(1 0)_ 和(H)两种,在面向对象的术语中,前者称为属性、后者称为方法。其访问权限有三种,由符号_(1 3)_ 和_(1 4)_ 指定,其中具有一(1 5)_权限的成员只有类中的成员函数才能访问、而具有(1 6)_ 权限的成员在任何函数中都可访问。7 .对基类成员的初始化,必须在派生类构造函数的(1 7)中进行。8 .C+源程序文件的扩展名是(1 8),头文件的扩展名是(1 9)。9 .若 n为整型

25、,则表达式片(f l o a t)2/3 的值是(2 0)。三、写出程序的运行结果1.写出程序运行结果i n cl u de#include class CRect(private:char color10;int left;int top;int length;int width;public:CRect();CRect(char*c,int t,int lef,int len,void SetColor(char*c);void SetSize(int 1=100,int w=100);void Move(int t,int 1);void Draw();;CRect:CRect()str

26、cpy(color,“Black);top=0;int wid);left=0;length=0;width=0;CRect:CRect(char*c,int t,int lef,int len,int wid)strcpy(color,c);top=t;left=lef;length=len;width=wid;)void CRect:SetColor(char*c)strcpy(color,c);void CRect:SetSize(int 1,int w)Ilength=l;width=w;void CRect:Move(int t,int 1)t o p =t;l eft =1;v o

27、 i d CR ect:Dr a w()co u t 矩形左上角坐标为(l eft 、t o p )en dl;co u t 矩形长和宽分别为 l en gt h ,w i dt h en dl;co u t 矩形的颜色是 co l o r en dl;1v o i d m a i n()ICR ect r;r.S et Co l o r (R ed);r.Mo v e(1 0,2 0);r.S et S i ze(1 0 0,2 0 0);r.Dr a w ();r.Mo v e(5 0,5 0);r.S et Co l o r(Bl u e);r.Dr a w ();2.写出程序运行结果#

28、include class A(int x,y;public:A()(x=0;y=0;A (int a,int b)(x=a;y=b;A()(if(x-y)cout x=y endl;elsecout x!=y endl;)v o i d Di s p l a y()co u t x=x,y=y en dl;);v o i d m a i n()(A a l,a 2 (2,3);a l.Di s p l a y();a 2.Di s p l a y();)3.写出程序运行结果#i n cl u de cl a s s A(p r i v a t e:i n t n;p u b l i c:A(

29、i n t i)n=i;o p er a t o r +()n+;)o p er a t o r +(i n t )(n+=2;v o i d Di s p l a y()(co u t n=n en dl;);v o i d m a i n()(A a (2),b(2);a+;+b;a.Di s p l a y();b.Di s p l a y();4.写出程序运行结果#include int fund(int n);int func2(int n);void main()!int sum;sum=func2(5);cout sum endl;)int fund(int n)Iif(n=l)

30、return 1;elsereturn n*funcl(n-1);1int func2(int n)int s=0;for(int i=l;i=n;i+)s+=fund(i);r et u r n s;)四、编程(根据要求填上程序缺少的部分)1.完成如下的程序,使得输出为:1 2 3 4#i n cl u de#i n cl u de cl a s s A(p r i v a t e:_ _ _ _ _ _ _ _(1)_ _ _ _ _ _ _ _ _ _ _ _p r o t ect ed:_ _ _ _ _ _ _ _(2)_ _ _ _ _ _ _ _ _ _p u b l i c:A

31、(i n t a,i n t b,i n t c)(X=a;Y=b;Z=c;i n t Get X()return X;int GetY()(return Y;)int GetZ()(return Z;);class B (3)(private:int K;public:B(int a,int b,int c,int d)(4)(K=d;void Show()co u t Get X()Get Y ()Z K en dl :;v o i d m a i n()(B b (1,2,3,4);b.S ho w ();2.在主函数中定义有3 0 个元素的数组s,函数fu n cl ()的功能是将2、

32、4、6、5 6、5 8、6 0 分别赋给数组元素 s 0 、s l 、s 2 、s 2 7 、s 2 8 、s 2 9 函数 fu n c2 ()的功能是按顺序将数组的每5个元素求平均值并存入数组w中(即将s 0 、s 、s、s 、s 4 的平均值存入w 。中,s 5 、s 6 、s 7 、s 8 、s 9 的平均值存入w l 中,)。请填空使程序正确运行。#i n cl u de#i n cl u de v o i d fu n cl(do u b l e s 口)(i n t i,k;fo r(k=2,i=0;i 3 0;i+)(s i =k;_ _ _ _ _ _(5)_ _ _ _ _

33、 _ _ _ _v o i d fu n c2(do u b l e s ,do u b l e w )do u b l e s u m;i n t i,k;fo r (k=0,i=0,s u m=0;i 3 0;i+)(_ _ i f(i+l)%5=0)(w k =s u m/5;_ _ _ _ _ _ _ _ _ _(7)k+;)v o i d m a i n()(do u b l e s 3 0 ,w 6 ;fu n d(s);fu n c2 (s,w);)C+程 序 设 计 试 题 及 答 案(一)答案一、单项选择题1.C2.D3.A4.A5.B6.D7.D8.A9.c1 0.bp r

34、 o t ect,-*、填空题1.执 行,成员2.类 中,私有3.cl a s s,s t r u ct4.25.2,66.数据成员,函数成员7.p u b l i c,p r i v a t e,私有,公共8.cp p.h9.0.5三、写出程序的运行结果1.矩形左上角坐标为5 0,5 0矩形长和宽分别为1 0 0,1 0 0矩形的颜色是Bl u e2.x=0,y=0 x=2,y=3x=yx!=y3,n=3n=44,5四、编程(根据要求填上程序缺少的部分)1.i n t X,Y;2.i n t Z;3.p u b l i c A4.:A(a,b,c)5.k+=2;6.s u m +=s i ;

35、7.s u m =0;C+程序设计试题及答案(二)一、填 空 题(2 0 分,每 空 1 分)1 .当使用关键字(1)_作为函数返回类型时,该函数不返回任何值。2 .在类中必须声明成员函数的一(2)成员函数的一(3)_ 部分可以写在类外。3 .如果需要在被调函数运行期间,改变主调函数中实参变量的值,则函数的形参应该是_(4)一类型或(5)类型。4.当一个变量被声明为另一个变量的引用时,此变量就成为被引用变量的_(6)一。此时,对其中一个变量值的修改,_(7)_ (会/不会)影响到另一个变量的值。5 .友员不是类的成员,但必须在_(8)一予以声明,它具有存取类的一(9)_ 成员的特权。6 .如果

36、需要在被调函数运行期间,改变主调函数中实参变量的值,则函数的形参应该是_(1 0)一类型或(1 1)_ 类型。7 .友员不是类的成员,但必须在_(1 2)一予以声明,它具有存取类的.(1 3)成员的特权。8 .如果需要在被调函数运行期间,改变主调函数中实参变量的值,则函数的形参应该是_(1 4)_ 类型或类型。9 .下面程序将字符数组a复制到字符数组b中。m a i n()cha r a口 二“I a m a b o y.,b 2 0 ;i n t i;fo r (i=_(1 6)_;a i !=,0,;i+)(1 7)(1 8)I1 0.下面程序的功能是计算3+5-7+-9 9+1 0 1的

37、值存在s中,请填空。#i n cl u de m a i n()i n t i,t=l,s=0;fo r(i=l;i =1 0 1;_(1 9)_):s=s+i*t;t=_(2 0)_;)二、判断以下说法的正确性,正 确 的 划 错 误 的 划 X (1 0 分,每个题目2 分)1 .如果派生类的成员函数的原型与基类中被定义为虚函数的成员函数原型相同,那么,这个函数自动继承基类中虚函数的特性。2 .在 C+中,关键字c l a s s 与 s t r uc t 具有完全相同的作用。3 .若有定义:d o ub l e x 3 5;则 x 数组行下标的上限是3,下 限 是 1。4 .说明函数原型

38、时不需要指明每个参数的类型,只需要说明每个参数的名字就可以了。5.如果在一个程序块中有两个变量具有相同的名字,并且都有效,只是它们的作用域不同,则优先访问作用域较大的那个变量。三、单项选择题(3 0分,每题2分)1 .程序段i n t a,b;a=5;b=a+;c o ut b;的输出应为:A)4 B)5 C)6 D)72 .程序段i n t i,a;f o r(i=0;i=1 0;i+)a=i;c o ut i;的输出应为:A)0 B)9 C)1 0 D)1 13 .下列有关函数重载的叙述中,错误的是.A)函数重载就是用相同的函数名定义多个函数B)重载函数的参数列表必须不同0重载函数的返回值

39、类型必须不同D)重载函数的参数可以带有默认值4 .i n t *p l,*p 2,a 1 0;p l=a;p 2=&a 5;则 p 2-p l 的值为:A)无法确定 B)1 0 C)5 D)1 25.变量的指针,其含义是指该变量的:A)值 B)地址 C)名 D)一个标志6.派 生 类 的 成 员 函 数 不 能 访 问 基 类 的。A)公有成员和保护成员 B)公有成员0私有成员 D)保护成员7.数字字符。的 A S C I I 值为4 8,若有以下程序vo i d m a i n()c h a r a-1,b=2;c o ut b+“,”;c o ut b-a e n d l;I程序运行后的输

40、出结果是:A)3,2 B)50,2 C)2,2 D)2,508.有以下程序vo i d m a i n()!i n t a 3 3 ,*p,i;p=&a 0 0;f o r(i=0;i 9;i+)p i =i;f o r(i=0;i 3;i+)c o ut a l i ;)程序运行后的输出结果是:A)01 2 B)1 2 3 C)2 3 4 D)3 4 59 .以下叙述中错误的是:A)对于d o ub l e类型数组,不可以直接用数组名对数组进行整体输入或输出B)数组名代表的是数组所占存储区的首地址,其值不可改变C)程序执行中,数组元素的下标越界时,系统给出“下标越界”的出错信息D)可以通过赋

41、初值的方式确定数组元素的个数1 0.有以下程序vo i d m a i n Oi n t a =l,2,3,4,5,6,7,8,9,0),*p;f o r(p=a;p a+1 0;p+)c o ut *p ;I程序运行后的输出结果是:A)1,2,3,4,5,6,7,8,9,0,B)C)0,1,2,3,4,5,6,7,8,9,D)1 1.有以下程序vo i d m a i n()i n t c=3 5;i n t b=c&c;c o ut b;)程序运行后的输出结果是:A)0 B)70 C)3 5 D)11 2.执行下列程序段后,正确的结果是:2,3,4,5,6,7,8,9,1 0,1,1,1,

42、1,1,1,1,1,1,1,1,i n t i=0,s=l;w h i l e (i 3)s+=i;i+;c o ut s;A)5 B)6 C)4 D)31 3.执行下列程序段后,正确的结果是:c h a r a 7=v a b c d e f”;c h a r b 4 =A B C”;s t r c p y(a,b);c o ut a 5;A)eB)fC)0D)无输出1 4 .下列带缺省值参数的函数说明中,正确的说明是A)i n t Fun(i n t x,i n t y=2,i n t z=3);B)i n t Fun(i n t x=l,i n t y,i n t z=3);C)i n

43、t Fun(i n t x,i n t y=2,i n t z);D)i n t Fun(i n t x=l,i n t y,i n t z);1 5.拷贝构造函数的作用是:A)进行数据类型的转换B)用对象调用成员函数0用对象初始化对象D)用一般类型的数据初始化对象四、写出程序的运行结果(2 0分,每 题 1 0分)1.函数s ub 的功能是什么?写出运行结果。1.函数s ub 的功能是什么?写出运行结果。#i n cl u de l o n g s u b(i n t n u m)i n t i;l o n g s u bs u m=l;fo r (i=l;i =n u m;i+)s u b

44、s u m *二 i;r et u r n(s u bs u m );!vo i d m ai n()i n t i;l o n g s u m=0;fo r(i=l;i =5;i+)s u m +=s u b(i);co u t i ,s u m en dl;)I2.写出程序运行结果#i n cl u de cl as s B as e(p u bl i c:vo i d W h o A m l()(co u t C l as s B as s”en dl;vi r t u al vo i d W h o()cout Class Bass”endl;;class Derived:public

45、 Basepublic:void WhoAml()cout ”Class Derived endl;void Who()cout ”Class Derived W h o A m I ();p-W h o ();p =&d;p-W h o A m I ();p-W h o ();五、编 程(根据要求填上程序缺少的部分)(2 0分,每 题10分)1.函数C o n ver t ()将一个数字字符串转换为对应的整数,请填空,实现函数的功能。#i n cl u de i n t C o n ver t(ch ar *s t r);vo i d m ai n()ch ar s 10 =123 45”;

46、i n t n =C o n ver t (s);co u t n en dl;i n t C o n ver t(ch ar *s t r)Ii n t n u m=0,di g i t;fo r (i n t i=0;(1);i+)(di g i t =(2);n u m =n u m*10+di g i t;r et u r n n u m;)2.函数C o n ver t ()将一个数字字符串转换为对应的整数,请填空,实现函数的功能。#i n cl u de i n t C o n ver t(ch ar *s t r);vo i d m ai n()ch ar s 10 =123 4

47、5;i n t n =C o n ver t(s);co u t n en dl;i n t C o n ver t(ch ar *s t r)i n t n u m=0,di g i t;fo r (i n t i=0;(3);i+)(di g i t =(4);n u m =n u m*10+di g i t;r et u r n n u m;)C+程序设计 试题及答案(二)一、填空题1.vo i d2.函数头,函数体3 .引用,4.别名,5.类中,6.引用,7.类中,8.引用,9 .a i =b i 10.i=i+2指针会私有指针私有指针a 八 0二、判断以下说法的正确性1.V2.X3.

48、X4.X5.X三、单项选择题1.C2.B3.A4.D5.B6.D7.B8.A9.D10.B11.D12.B13.A14.C15.D四、写出程序的运行结果1.从 1 连乘到n u m5,1532.C l as s B as sC l as s B as sC l as s D er i vedC l as s D er i ved五、编程(根据要求填上程序缺少的部分)1.(1)i s t r l en(s t r)(2)s t r i 2.(1)i 10(2)s i C+程序设计试题及答案(三)时间:2011-07-17 18:54来源:未知 作 者:adm i n 点 击:2840次标签:C+

49、程序设计试题及答案(三)学号:专业:层次:姓名:题 号 一 二 三 四 五 六 七八 九 十 总 分 得 分 注 意:所有答案都要写在答题卡上一、单项选择题1.设有数组定义:ch ar ar r ay =C h i n a;则数组ar r ay所占的空间为:A)4 个 字 节 B)5 个 字 节 C)6 个C+程序设计试题及答案(三)学号:专业:层次:姓名:题号四五六七八九十总分得分注意:所有答案都要写在答题卡上一、单项选择题1.设有数组定义:ch ar ar r ay =C h i n a;则数组ar r ay所占的空间为:A)4 个字节 B)5 个字节 C)6 个字节 D)7 个字节2.下

50、列选项中,与 实 现 运 行 时 多 态 性 无 关 的 是。A)重载函数 B)虚函数 C)指针 D)引用3 .若 a 是 i n t 类型变量,则计算表达式a=1000%9 9 9 的值是:A)0 B)1 C)2 D)34.下面程序段中,fo r 循环的执行次数是:i n t i=10;fo r(i=l;i 10;i+)co u t “*”;A)9 B)10 C)8 D)75.有以下程序vo i d m ai n O(i n t a 3 3 ,*p,i;p=&a O 0;fo r(i=0;i 9;i+)p i =i;fo r(i=0;i 3;i+)co u t a l i ;程序运行后的输出

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com