C++程序设计试题.docx
- 文档编号:5382884
- 上传时间:2022-12-15
- 格式:DOCX
- 页数:13
- 大小:19.86KB
C++程序设计试题.docx
《C++程序设计试题.docx》由会员分享,可在线阅读,更多相关《C++程序设计试题.docx(13页珍藏版)》请在冰豆网上搜索。
C++程序设计试题
一、填空题:
(20")
1、以下正确的C++标识符是
(1):
A、friendB、ClassC、autoD、ab.cpp
2、一个C++程序的执行是从
(2):
A、main函数开始;
B、第一个函数开始;`
C、第一个语句开始;
D、包含文件的第一个文件开始。
3、设有说明“inta[10]={0,1,2,3,4,5,6,7,8,9},*p=a;”,下列对数组a元素不正确的引用是(3):
A、a[p-a]B、*(&a[2])C、p[10]D、*(a+3)
4、若有说明:
chars[]=“246”,*ptr=s;
cout<<(char)(*(ptr+1)+1)<<’\n’;
则执行上述语句后,输出为(4)。
A、字符'3'B、字符'4'C、字符'5'D、字符'6'
5、设有说明
inta=0,b=1,m=1,n=0,c;
c=((m=a>b)&&(n=--b||a++));
则执行上述语句后,a和b的值分别为(5)
A.1、1B.1、0C.0、1D.0、0
6、设有inta;以下能正确的表达数学表达式10≤a<15的是(6):
A、10≤a<15B、a=10||a==11||a==12||a==13||a==14
C、a>=10||a<15D、!
((a<10)&&(a>=15))
7、对于for(表达式1;;表达式3)可以理解为(7):
A、for(表达式1;0;表达式3)
B、for(表达式1;1;表达式3)
C、for(表达式1;表达式1;表达式3)
D、for(表达式1;表达式3;表达式3)
8、设有类型说明"enumWORKDAY{Monday,Tuesday=4,Wednesday,Thursday,Friday};",则执行语句"cout< A、3B、1C、0D、4 9、用#include命令包含的文件是(9)。 A、目标文件B、可执行文件C、源程序文件D、二进制文件 10、设有说明"chars1[11],*s2=s1;",则下列语句正确的是(10): A、*s2="VisualC++";B、s2="VisualC++"; C、s1="VisualC++";D、s1[10]="VisualC++"; 11、若有定义union{intx;charch;}xc;则执行"cout< A、4B、1C、3D、5 12、设有说明"char*str="\t\'Visual\\C++\n";",则指针str所指向字符串的长度为(12) A、16B、13C、15D、非法说明 13、设有如下函数: func(floata){return2*a;}, 则该函数的类型为(13): A、intB、floatC、voidD、无法确定 14、以下属于函数重载的是(14)。 A、floatfun(floaty);和voidfun(floaty); B、floatfuna(floaty);和voidfun(floaty); C、floatfun(floaty);、voidfun(floaty);和floatfuna(floaty) D、floatfun(floatx,floaty)和voidfun(floaty); 15、下列说明中有关构造函数的正确说法是(15)。 A、任一类必定有构造函数; B、构造函数不能带参数; C、构造函数不能重载; D、任一类必定有缺省的构造函数。 16、C++中cin是(16)。 A、一个标准的语句B、预定义的类C、预定义的函数D、预定义的对象 17、下列叙述中不正确的是(17)。 A、含纯虚函数的类称为抽象类B、抽象类不能直接建立对象 C、抽象类不能作为派生类的基类D、纯虚函数不能定义其实现部分 18、有关类的说法下列不正确的是(18): A、类是用户自定义的类型B、类中的成员函数能存取类的私有数据 C、缺省时,所有数据均为私有的D、类的成员函数都是内联函数 19、下列说法正确的是(19): A、析构函数可以有一个或多个参数 B、可以重载析构函数 C、析构函数可以定义为虚函数 D、必须自定义析构函数 20、下列叙述,正确的是(20): A、派生类对象不可以赋给基类对象 B、派生类对象的地址不可以赋给基类的指针变量 C、基类对象不可以赋给派生类对象 D、通过指向基类的指针变量不可访问基类对象中的成员 二、填空(35分) 1、若有说明inta[2][3]={1,2,3,4,5},(*p)[3]=a,*pa=*a;设数组a首地址为2000H,则a的值为 (1),p[1]的值为 (2),pa[1]的值为(3),*(*(a+1)+1)的值为(4)。 (4") 2、C++支持面向对象程序设计的4个要素是: 封装性,多态性,(5)、(6)。 (2") 3、#include intf(inta) {intb=0;b=b+1; staticintc=3;c+=1; returna+b+c; } voidmain(void) {inta=2,i;for(i=0;i<3;i++)cout< 程序的输出是(7)。 (3") 4、#include classdata {intx; public: data(inty=0){x=y;cout<<"classdata"< }; classa {public: a(intx){cout<<"classa"< classb: publica {datad; public: b(intx): a(x),d(x){cout<<"classb"< }; classc: publicb {public: c(intx): b(x){cout<<"classc"< voidmain() {cobj(5);} 程序的输出是(8)。 (4") 5、#include classA{ protected: intx; public: A(){x=50;} virtualvoidprint(){cout<<"x="< }; classB: publicA{ inty; public: B(){y=200;} voidprint(){cout<<"y="< }; classC: publicA{ intz; public: C(){z=300;} voidprint(){cout<<"z="< }; voidmain(void) {Aa,*pa; Bb; Cc; pa=&a;pa->print(); pa=&b;pa->print(); pa=&c;pa->print(); } 程序的输出是(9),若删去A行的virtual则输出(10)。 (4") 6、#include #defineMAX(a,b)a>b? a: b voidmain() {intm=2,n=1,k=3; cout<<(MAX(MAX(m,n),k))< } 程序的输出是(11)。 (2") 7、#include voidmain() {charch; cin>>ch; if((ch>='a')&&(ch<='z')) ch=ch-'a'+'A'; elseif((ch>='A')&&(ch<='Z')) ch=ch+'a'-'A'; cout< } 若输入A,则程序的输出(12),程序功能为(13)。 (4") 8、#include longintf(intn) {if(n==0||n==1)return (1); elsereturnn*f(n-1); } voidmain(void) {intn; cin>>n; cout< } 若输入5,则程序的输出(14),程序功能为(15)。 (4") 9、#include classA{ public: intx; A(inta=0){x=a;} }; classB: publicA{ public: inty; B(inta=0,intb=0): A(b){y=a;} }; classC: publicA{ public: intz; C(inta=0,intb=0): A(b){z=a;} }; classD: publicB,publicC{ public: intm; D(inta,intb,intd,inte,intf): B(a,b),C(d,e){m=f;} voidPrint(void){ cout< cout< cout< } }; voidmain(void) {Dd1(100,200,300,400,500); d1.Print(); } 以上程序有无错误(16),如有如何改正(如没有写出输出结果)(17)(4") 10、#include voidswap(float*x,float*y) {float*t;t=x;x=y;y=t;} voidmain(void) {floata=40,b=70; cout<<"a="< swap(&a,&b);
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C+ 程序设计 试题
![提示](https://static.bdocx.com/images/bang_tan.gif)