联大学堂周口师范学院面向对象程序设计网上考试答案
在int a[][3]={{1},{3,2},{4,5,6},{0}}中,a[2][2]的值是 |
A.3 B.2 C.4 D.6 |
|
设有定义:float a=2,b=4,h=3;,以下C语言表达式与代数式计算结果不相符的是 |
A.(a+b)*h/2 B.(1/2)*(a+b)*h C.(a+b)*h*1/2 D.h/2*(a+b) |
|
是C++语言关键字的是 |
A. while B.printf C.main D. FILE |
|
C++对C语言作了很多改进,即从面向过程变成为面向对象的主要原因是 |
A. 增加了一些新的运算符 B.允许函数重载,并允许设置缺省参数 C.规定函数说明符必须用原型 D.引进了类和对象的概念 |
|
应在下列程序划线处填入的正确语句是【 】 #include class Base { public: void fun(){cout<><> |
A.fun() B.Base.fun(); C.Base::fun(); D.Base->fun(); |
|
for(i=0;i<5;i++)语句执行循环的次数是 |
A.5 B.6 C.1 D.无限 |
|
错误的C++标识符是 |
A.e2 B.name_ C.A_B D.2e |
|
下面描述中,表达错误的是 |
A.A、 公有继承时基类中的public成员在派生类中仍是public的 B.B、 公有继承是基类中的private成员在派生类中仍是private的 C.C、 公有继承时基类中的protected成员在派生类中仍是protected的 D.D、 私有继承时基类中的public成员在派生类中是private的 |
|
一个类可包含析构函数的个数是 |
A. 0个 B.1个 C.至少一个 D.0个或多个 |
|
如果没有为一个类定义任何构造函数的情况下,下列描述正确的是 |
A.编译器总是自动创建一个不带参数的构造函数 B.这个类没有构造函数 C.这个类不需要构造函数 D.该类不能通过编译 |
|
执行语句:cout<<'aaaa bbbb';输出的结果是 |
A.aaaa\nbbbb B. aaaabbbb C.aaaa bbbb D.不能输出 |
|
通常拷贝构造函数的参数是 |
A.对象 B.对象的成员 C.对象的指针 D.对象的引用 |
|
每个C++程序中都必须有且仅有一个 |
A.类 B.主函数 C.预处理命令 D.语句 |
|
以下关于switch语句和break描述中 ,正确的是 |
A.在switch语句中,可以根据需要使用或不使用break语句 B.switch语句中必须用break语句 C.break语句只能用于switch语句 D.break语句是switch语句必须的一部分 |
|
C++语言的基本数据类型包括 |
A.char B. struct C. string D.typedef |
|
class Student { int studentNo; static int count; public: Student() { count++;StudentNo=count;} void print(){ cout<<StudentNo<<endl; }};int Student::count=0;main(){ Student student1;student1.print(); Student student2;student2.print();student *p;p= new Student;p->print();} |
|
|
#include “iostream.h”class A{ public: A( ) { cout<<”A begins” ; } ~A( ){ cout<<”A ends”; } void print( ){ cout<<”I am A”; } virtual void show(){ cout<<”A is great”; } } };class B :public A{ public: B( ) { cout<<”B begins” ; } ~B( ){ cout<<”B ends” ; }void print ( ){ cout<<”I am B” ; }void show(){ cout<<”B is great” } };void main( ){ A obj_b;A *p;p=new B;p->show();p=&obj_b;p->print();} |
|
|
#include<iostream.h>int f1(int x,int y){x=x+y;y=x+y;cout<<”x=”<<x<<”,y=”<<y<<endl;return x+y;}void main(){int x=5,y=8;int z=f1(x,y);cout<<”x=”<<x<<”,y=”<<y;cout<<”,z=”<<z<<endl;} |
|
|
#include<iostream.h>void fun10(int *a[],int m,int n){ int i,j; for(i=0;i<m;i++) a[i]=new int [n]; for(i=0;i<m;i++) for(j=0;j<n;j++) a[i][j]=(i+1)*(j+1);}void main(){int m1=2,n1=2;int **b=new int *[m1];fun10(b,m1,n1);for(int i=0;i<m1;i++){ for(int j=0;j<n1;j++) cout<<b[i][j]<<’ ’; cout<<endl;}} |
|
|
以下程序的功能是:从键盘上输入若干个学生的成绩,统计并输出最高成绩和最低成绩,当输入负数时结束,请填空。#include void main(){[ ];cin>>x;amax=x;amin=x;while([ ]){if(x>amax)amax=x;if([ ])amin=x;cin>>x;}cout<<'amax='<<amax<<', amin='<<><> } |
|
|
函数fun的功能是计算x^n。主函数中已经正确定义m、a、b变量并赋值,并调用fun函数计算:m=a^4+b^4-(a+b)^3。(说明:x^n即x的n次幂)#include double fun(double x,int n){int i; double y=1;for(i=1;i<=n;i++)[ ];[ ]}void main(){double m,a,b;a=7.3;b=5.1; m=[ ];cout<<'m='<<><> } |
|
|
#include void f(int *p1, int *p2) { int *t;t=p1;p1=p2;p2=t;}main(){ int a=10,b=20;cout<<><> f(&a,&b);cout<<><>} |
|
|
#include #include #include main(){int a=4,b=5,c,d;cout<<”sqrt(a)=”<< sqrt(a)<c=a>b?a:b;cout<<”c=”<<>cout<<><><><>d=a;if(a>b)d=8;else if (a==b)d=0;else d=-1;cout<<”d=”<<><>}程序运行结果为: |
|
|
8题目:函数fun的功能是:实现交换两个整数的值。例如给a和b 分别输入3和6 ,输出为a=6 b=3 程序中共有 条错误语句。void fun (int a, b){ int t;t=a;a=b;b=t;}main(){int a,b;cout<<'enter a,b:');cin>>a>>b;fun(&a,&b);cout<<><>< p=''> <a<<b;} |
|
|
2题目:用起泡法对10个整数从小到大排序。 程序中共有 条错误语句。 void sort(int x,int n){int i,j,k,t;for(i=0;i<>< p=''> i<n;i++) for(j=0;j<> <n-i;j++)if(x[j]>x[j+1]) { t=x[j];x[j]=x[j+1];x[j+1]=t;}}main(){int i,n,a[100];cout<<'please input the length of the array:';cin>>n; for(i=0; i<=n-1;i++) <><>< p=''> cin>>a[i];sort(a,n);cout<<'output the sorted array:';for(i=0;i<=n-1;i++) cout<<a[i]<<' ';} |
|
|
4 题目:以下程序的功能是求如下表达式:(注意符号、标点符号、括号用半角) S = 1 + 1/(1+2)+1/(1+2+3)+1/(1+2+3+4)… 程序中共有 条错误语句。main(){int n;float fun();cout<<'Please input a number:';cin>>n; cout<<>< p=''> <fun(n);}fun(int n) {int i,j,t;float s;s=0;for(i=1;i<=n;i++); { t=0; for(j=1;j<=i;j++) t=t+j; s=s+1/t; } return s;} |
|
|
6题目:函数fun的功能是:求1到20的阶乘的和。程序中共有 条错误语句。fun(){ int n,j; float s=0.0,t; for(n=1;n<=20;n++) { s=1; for(j=1;j<=n;j++) t=t*n; s+t=s; }cout<<'jiecheng'<<>< p=''> <s;}main(){fun();} |
|
|
9题目:函数fun的功能是:计算并输出k以内最大的10个能被13 或17整除的自然数之和。k的值由主函数传入,若k的值 为500,则函数值为4622。 程序中共有 条错误语句。int fun(int k){ int m=0,mc=0,j;while ((k>=2)||(mc<10)){ if((k%13=0)||(k%17=0)) {m=m+k; mc++;} k++; } return ; }main(){cout<<>< p=''> <fun(500);} |
|
|
要表示年龄(age)在18至25之间,正确的表达式是 |
A.18<=age<=25 B. 18<=age && age<=25 C. 18<=age || age<=25 D.18<=age and age<=25 |
|
在声明语句const char *ps;中,ps表示 |
A.指向字符串的指针 B.指向字符串的const型指针 C. 指向const型字符串的指针 D.指向const型字符串的const型指针 |
|
设x=2.5,a=7,y=4.7 ;表达式x+a%3*(int)(x+y)%2/4的值是 |
A.4 B.3 C.2.5 D.2 |
|
下面有关重载函数的说法,正确的是 |
A.重载函数必须具有不同的返回值类型; B.重载函数形参个数必须不同; C.重载函数必须有不同的形参列表 D.重载函数名可以不同; |
|
若已经定义 char a[10]={'abcd'}, *p=a; 则表达式 *(p+1) 的值是 |
A.“abcd” B.“bcd” C.‘b’ D.语法错误 |
|
下面程序段的运行结果是 char a[ ]='language',*p ; p=a ; while (*p!='u') { cout |
A.LANGUAGE B.language C.lang D.langUAGE |
|
结构化程序设计的一种基本方法是 |
A.筛选法 B.递归法 C.逐步求精法 D.归纳法 |
|
有以下程序段 int j=0; while(j=1) j++; while 循环执行的次数是 |
A.无限次 B.有语法错,不能执行 C.一次也不执行 D.执行1次 |
|
在函数调用过程中,如果函数funA调用了函数 funB,函数funB又调用了函数funA,则 |
A.称为函数的直接递归调用 B.称为函数的间接递归调用 C.称为函数的循环调用 D.C语言中不允许这样的递归调用 |
|
设a、b和c都是int型变量,且a=7,b=8,c=9,则表达式(a*b)/c+6-14%c的值为 |
A.6 B.7 C.8 D.9 |
|
C++语言是从早期的C语言逐渐发展演变而来的,与C语言相比,它在求解问题方法上进行的最大改进是 |
A.面向对象 B.面向过程 C.安全性 D.复用性 |
|
下列不是描述类的成员函数的是 |
A. 构造函数 B.析构函数 C. 友元函数 D.拷贝构造函数 |
|
以下程序从读入的整数数据中,统计大于零的整数个数和小于零的整数个数.用输入零来结束输入,程序中用变量i统计大于零的整数个数,用变量j统计小于零的整数个数.请填空.#include #include main(){int n,i,j;cout<<'输入非零的整数(输入零结束程序)';i=j=0;cin>>n;while[ ]{if(n>0)i=[ ];if(n<0)[ ];cin>>n}cout<<'i='<<setw(4)<<i<<' j='<<><><> } |
|
|