内容发布更新时间 : 2024/12/29 0:10:39星期一 下面是文章的全部内容请认真阅读。
《面向对象程序设计》课程试题(B卷)
本试卷适用于2016级信息与计算科学专业 (时量:120分钟;总分为100分)
命题人:戴亚滨
注 意: 1、所有答案和解答均应写在答题纸上,答在试卷上不记分 2、答案必须写明题目序号,并按题号顺序答题 3、请保持行距,保持卷面整洁
一、选择:(每题2分,共20分)
1.下列变量名中,( )是合法的。
A CHINA B byte-size C double D A+a 2.C++的数组定义可以有多种形式。下面定义中不正确的是:____ A. char ac[4]; B. char ac[4] = ['a','d','e']; C. char ac[] = {'a', 'd', 'e'}; D. char ac[] = \3.下列( )是正确的语句。
A ; B a=17 C x+y D cout<<\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 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.C++的代码注释有两种形式。下面代码片断运行后,a的值为_____ a = /* a= 3 */ 2; // a ++ a++;
b = 2; //will add b to a /** a += b; */
a += b;
A. 3 B. 4 C. 5 D. 6
10.使用操作符setw对数据进行格式输出时,需要包含( )文件。 A iostream.h B fstream.h C iomanip.h D stdlib.h
二、 程序理解题(20分)
1.写出下列程序的执行结果。 # include
第 1 页 共 1 页
int x,y,z;
fun (2,3,&x); fun (4,x,&y); fun (x,y,&z);
cout< void fun(int a,int b,int * c ) { b*=a;*c=b-a;} 2.下列程序读入一个文件aaa.txt的数据到向量中,文件中为一些整数,要判断向量中的元素有多少个两两相等的数对,请将程序补充完全。 # include { ifstream in(_______________); vector for(int a; in>>a;) __________ int pair=0; for(int i=0;i cout< 三..写出下列程序的运行结果。(每题10分,共20分) 1. #include studentID(int id=0){ value=id; cout<<”assigning student id “< Class student { String name; StudentID id ; Public: student (string n=”no name “, int ssID ): id( ssID),name(n){ cout<<”constructing student “< Int main(){ student s (“randy”,98); 第 2 页 共 2 页 student t (“jenny”); } 2.有如下程序: #include A(int i,int j); ~A(){cout<<\ void print(); private: int a,b; }; A::A() { a=b=10;cout<<\A::A(int i,int j) { a=i,b=j;cout<<\void A::print() {cout<<\void main() { A m,n(15,18); m.print(); n.print();} 四、编程题(1、2小题每题15分,3小题10分,共40分) 1.有一些日期,在文件abc.txt中,后面加*号的表示要加班的日期,试汇总所有每个月25号的天数,如果是加班日,则改天乘2. Oct. 25 2003 Oct. 26 2003 Sep. 12 2003* abc.txt Juy. 25 2002* 2.编程求解母牛问题。若一头母牛,从出生起第四个年头开始每年生一头母牛,按此规 律,第n年是有多少头母牛? 3.编程求解1到1亿之间素数的个数,要求用筛法解决该问题。 第 3 页 共 3 页