《C++语言程序设计》自检自测题及解答(一)(共12页).doc

上传人:飞****2 文档编号:5235624 上传时间:2021-12-13 格式:DOC 页数:12 大小:41KB
返回 下载 相关 举报
《C++语言程序设计》自检自测题及解答(一)(共12页).doc_第1页
第1页 / 共12页
《C++语言程序设计》自检自测题及解答(一)(共12页).doc_第2页
第2页 / 共12页
点击查看更多>>
资源描述

《《C++语言程序设计》自检自测题及解答(一)(共12页).doc》由会员分享,可在线阅读,更多相关《《C++语言程序设计》自检自测题及解答(一)(共12页).doc(12页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、精选优质文档-倾情为你奉上C+语言程序设计自检自测题及解答(一)2002年07月28日宁夏电大教学处一、单选题(每小题1分,共6分)1. 由C+目标文件连接而成的可执行文件的缺省扩展名为_。2. 在下面的一维数组定义中,哪一个有语法错误。_ A、 int a=1,2,3; B、int a10=0; C、 int a;D、 int a5;3. 在下面的函数声明中,存在着语法错误的是_。A、 void BC(int a, int); B、void BD(int, int);C、void BE(int, int=5); D、int BF(int x; int y);4. 假定AB为一个类,则该类的拷

2、贝构造函数的声明语句为_。 A、 AB&(AB x); B、 AB(AB x) C、 AB(AB&); D、 AB(AB* x)5. 对于结构中定义的成员,其隐含访问权限为_。A、 public B、 protectedC、 privateD、 static6当使用fstream流类定义一个流对象并打开一个磁盘文件时,文件的隐含打开方式为_。A、 ios:in B、 ios:out C、 ios:in | ios:out D、 没有 二、填空题(每小题2分,共24分)1. 1.    执行"cout<<43<<&#

3、39;-'<<18<<'='<<43-18<<endl;"语句后得到的输出结果为_。2. 2.    已知'A''Z'的ASCII码为6590,当执行"char ch=14*5+2;cout<<ch<<endl;"语句序列后,得到的输出结果为_。3. 3.    使用const语句定义一个标识符常量时,则必须对它同时进行_。4. 4.    表达式x

4、=x+1表示成增1表达式为_。5. 5.    若x=5,y=10,则x>y和x<=y的逻辑值分别为_和_。6. 6.    执行"typedef int ABC10;"语句把ABC定义为具有10个整型元素的_。7. 7.    假定p所指对象的值为25,p+1所指对象的值为46,则执行"(*p)+;"语句后,p所指对象的值为_。8. 8.    假定一个二维数组为aMN,则ai的地址值(以字节为单位)为_。 9. 9.&#

5、160;   假定要访问一个结构指针p所指对象中的b指针成员所指的对象,则表示方法为_。10. 10.设px是指向一个类动态对象的指针变量,则执行"delete px;"语句时,将自动调用该类的_。11. 11.若需要把一个函数"void F();"定义为一个类AB的友元函数,则应在类AB的定义中加入一条语句:_ 。12. 12.若要在程序文件中进行标准输入输出操作,则必须在开始的#include命令中使用_头文件。 三、给出下列程序运行后的输出结果(每小题6分,共36分)1、#include<iostream.h>voi

6、d main() int s=0;for(int i=1;i+)if(s>50) break;if(i%2=0) s+=i;cout<<"i,s="<<i<<","<<s<<endl; 2、#include<iostream.h>void main() char a="abcdabcabfgacd"int i1=0, i2=0, i=0;while(ai) if(ai='a') i1+;if(ai='b') i2+;

7、i+;cout<<i1<<' '<<i2<<endl;3. #include<iomanip.h>void main()int a9=2,4,6,8,10,12,14,16,18;for(int i=0;i<9;i+) cout<<setw(5)<<*(a+i);if(i+1)%3=0) cout<<endl;4. #include<iomanip.h>void LE(int* a, int* b) int x=*a;*a=*b; *b=x;cout<<

8、*a<<' '<<*b<<endl;void main() int x=10, y=25;LE(&x,&y); cout<<x<<' '<<y<<endl;5. #include<iostream.h>class Aint a,b;public:A() a=b=0;A(int aa, int bb) a=aa; b=bb;cout<<a<<' '<<b<<endl;void main()A

9、 x,y(2,3),z(4,5);6#include<iostream.h>template<class TT>class FFTT a1, a2, a3; public:FF(TT b1, TT b2, TT b3) a1=b1; a2=b2; a3=b3;TT Sum() return a1+a2+a3;void main()FF<int> x(2,3,4),y(5,7,9);cout<<x.Sum()<<' '<<y.Sum()<<endl;四、写出下列每个函数的功能(每小题6分,共24分

10、)1、double SF(double x, int n) /n为大于等于0的整数double p=1,s=1;for(int i=1;i<=n;i+) p*=x;s+=p/(i+1);return s;2. float FH() float x,y=0,n=0;cin>>x;while(x!=-1) n+; y+=x;cin>>x;if(n=0) return y; else return y/n;3. #include<iostream.h>void WA(int a, int n) for(int i=0;i<n-1;i+)int k=i;

11、for(int j=i+1;j<n;j+)if(aj<ak) k=j;int x=ai; ai=ak; ak=x;4#include<iomanip.h>#include<fstream.h>void JB(char* fname) /可把以fname所指字符串作为文件标识符的文件称为fname文件,/假定该文件中保存着一批字符串,每个字符串的长度均小于20。ifstream fin(fname);char a20;int i=0;while(fin>>a)cout<<a<<endl;i+;fin.close();cout

12、<<"i="<<i<<endl;五、编写一个函数,统计出具有n个元素的一维数组中大于等于所有元素平均值的元素个数并返回它。(10分)int Count(double a, int n); /此为该函数的声明参考解答:一、单选题(每小题1分,共6分)评分标准:选对者得1分,否则不得分。1B 2C 3D 4C 5A 6D二、填空题(每小题2分,共24分)评分标准:每题与参考答案相同者得2分,否则酌情给分。143-18=25 2. H3. 初始化 4. +x5. false 或0 true 或1 6. 数组类型7. 26 8. a+(i*N)*

13、sizeof(a00) 或a+i*sizeof(ai)9. *(p->b) 或 *(*p).b) 10. 析构函数11. friend void F(); 12. iostream.h 或 iomanip.h三、给出下列程序运行后的输出结果(每小题6分,共36分)评分标准:每题与参考答案的数据和显示格式完全相同者得6分,否则酌情给分。1. i,s=15,56 2. 4 3 3. 2 4 6 8 10 12 14 16 18 4. 25 10 5. 2 3 6. 9 21 25 10 4 5四、写出下列每个函数的功能(每小题6分,共24分)评分标准:每题与参考答案的叙述含义相同者得6分,否

14、则酌情给分。1. 计算 的值并返回。2. 求出从键盘上输入的一批常数的平均值,以-1作为结束输入的标志。3. 采用选择排序的方法对数组a中的n个整数按照从小到大的次序重新排列。4. 从文件fname中依次读取每个字符串并输出到屏幕上显示出来,同时统计并显示出文件中的字符串个数。五、编写一个函数,统计出具有n个元素的一维数组中大于等于所有元素平均值的元素个数并返回它。(10分)评分标准见参考程序中的注释。int Count(double a, int n)double m=0; int i;for(i=0;i<n;i+) m+=ai; /计算出所有元素之和得3分m=m/n; /计算出平均值

15、得1分int c=0;for(i=0;i<n;i+) if(ai>=m) c+; /按条件统计出元素个数得4分return c; /返回统计结果得2分C+语言程序设计自检自测题及解答(二) 一、填空(每空2分,共20分)1 C+目标程序经_后生成扩展名为exe的可执行程序文件。2 16位计算机中整型占_个字节存储空间。3 要在屏幕上显示"Hello,world!"应执行语句cout<<_。4 表达式8&3的结果是_。5 作为语句的函数调用是通过_来体现的。6 执行if (x>=0|x<=0) cout<<&q

16、uot;abcd";else cout<<"wxyz";屏幕上显示的是_。7 设一维整型数组data已进行了初始化,则其元素个数可由操作符sizeof通过表达式_计算出来。8 若一全局变量只允许本程序文件中的函数使用,则定义它时应加上修饰符_。9 设有int w34;,pw是与数组名w等价的数组指针,则pw应初始化为_。10.要使引用pr代表变量char * p;,则pr应初始化为_。二、单项选择题(每空2分,共20分) 1下列变量名中,( )是合法的。 A CHINA B byte-size C double D A+a2下列各种函数中,( )不是类

17、的成员函数。 A 构造函数 B 析构函数 C 友元函数 D 拷贝构造函数3下列( )是正确的语句。 A ; B a=17 C x+y D cout<<"n"4循环while(int i=0) i-;执行次数是( )。 A 0 B 1 C 5 D 无限5设int f(int);和int g(int);是函数f和g的原形,以下将f作为语句调用的是( )。A g(f(3); B f(g(3); C g(f(3)+2); D p= f(g(3)1);6设int * p2=&x,* p1=a;p2= *b;则a和b的类型分别是( )。 A int * 和int B

18、 int * 和int * C int 和int * D int * 和int *7设int x;,则经过( )后,语句*px=0;可将x值置为0。 A int * px; B int const * px=&x; C int * const px=&x; D const int * px=&x;8设void f1(int * m,long & n);int a;long b;则以下调用合法的是( )。 A f1(a,b); B f1(&a,b); C f1(a,&b); D f1(&a,&b);9以下结构类型可用来构造链表的是(

19、 )。 A struct aa int a;int * b; B struct bb int a;bb * b; C struct cc int * a;cc b; D struct dd int * a;aa b;10使用操作符setw对数据进行格式输出时,需要包含( )文件。 A iostream.h B fstream.h C iomanip.h D stdlib.h三、回答问题(每题4分,共20分)1设int * p;,判断下列表达式的正确性(用T表正确,用F表错误)。 -+p( ) +(p-)( ) p- ( ) (+p)- ( )2请初始化一维指针数组color,其初值表初值为&q

20、uot;red","blue","white"和"black"。3设int x 99,98,97,& y=x1;, 写出语句 cout<<y-<<','; cout<<y*2<<endl;执行结果。 4设int fp(char a,int b=0,double c=100.0);,判断下列重载函数的正确性。(用T表正确,用F表错误)。int fp( );( ) void fp(char);( ) int fp(char,int);( ) voi

21、d fp(char,int,int);( ) 5要使语句p1=new long * ;p2=new float * 15;能正常执行,写出p1和p2的定义。 四、(每题10分,共20分)1写出下列程序的执行结果。 # include <iostream.h> void fun(int,int,int * ); void main() int x,y,z; fun (2,3,&x); fun (4,x,&y); fun (x,y,&z); cout<<x<<','<<y<<&#

22、39;,'<<z<<endl; void fun(int a,int b,int * c ) b*=a;*c=b-a; 2下列程序向a盘上的文本文件aaa.dat输出0至100间的整数,请将程序补充完全。 # include <stdlib.h> # include _ void main(void) ofstream f1(_); if (_) cerr<<"a:aaa.dat file not open!"<<endl; exit(1); for (int i=0;i<=100;i+) _<

23、<i<<' '; f1._;  五、(每题10分,共20分)1 编程求数列1,的所有大于等于0.的数据项之和并输出结果。2用递归方法设计函数int ArrayMin (int d ,int size);,其中d为数组,size为数组元素个数;ArrayMin返回d中的最小元素。参考解答:一、填空(每空2分,共20分)1 连接2 23 ""Hello,world!""4 05 函数的副作用6 abcd7 sizeof(data/data0)8 static9 int (* pw)4=w;10. char * &a

24、mp;pr=p;二、单项选择题(每空2分,共20分)1A 2C 3A 4A 5B6B 7C 8B 9B 10C三、回答问题(每题4分,共20分)1-+p( T ) +(p-)( F ) p- ( F ) (+p)- ( T )2 char * color="red","blue","white","black";398,1944 int fp( );( T ) void fp(char);( F )int fp(char,int);( F ) void fp(char,int,int);( T )5 long *

25、p1; float * p2;四、(每题10分,共20分)14,12,442<fstream.h> "a:aaa.dat" !f1(或f1.fail() f1 close()五、(每题10分,共20分)1、#include <iostream.h>void main()int n=1,d=1;double s=0.0,s0;while(s0=double(n)/d)>=0.)s+=s0;d+; cout<<s<<endl; 2int ArrayMin(int d,int size)int k=dsize-1;if(size=1) return k;if(k<=ArrayMin(d,size-1) return k;else return ArrayMin(d,size-1);专心-专注-专业

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

当前位置:首页 > 应用文书 > 教育教学

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

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁