河北科技大学 面向对象程序设计基础学习提纲(3)

2019-08-28 23:59

}

cout<

4. #include #include struct Worker {

char name[15]; //姓名 int age; //年龄 float pay; //工资 };

void main() { Worker x;

char *t=\

int d=45; float f=1235; strcpy(x.name,t); x.age=d; x.pay=f;

cout<

四、编程题

1.设计一程序,它输入10个整数到一个数组中,调整这10个整数在数组中的排列位置,使得其中最大的一个数成为数组的首元素,最小的一个数成为数组的末元素。

2.用递归方法设计函数int arraymin(int d[],int size);其中d 为数组,size为数组元素个数;arraymin返回d中的最小元素。

3.定义描述圆柱体的结构体类型Cylinder,该结构体类型的数据成员为圆柱体底半径r与高h。编写函数Volume()计算出圆柱体的体积。在主函数中定义圆柱结构体变量,输入圆柱体的半径与高,调用Volume()函数计算出圆柱体体积,并输出圆柱体的体积。

参考答案

一、填空题

1. cpp 2. 条件分支 循环 3. 原形 4. 单独的数组名 5.自身 6. 数量 类型 7. 全局 8. 双引号 ‘\\0’

9. 派生类 类成员所属类 基类 10. 析构函数

11. 25 12. a+16 13. 20 14. Worker* r=new Worker[n]; 二、写出下列表达式的值及运算过程

1.5.5 2. 0 3. 1 4.0 5. 8 6. 51 三、读程序, 并将运行结果写在对应输出语句的后面

1.1 3 3 5 5 7 2.15 10

第 11 页 共 17 页

3.13

4.weirong 45 1235 四、编程题

1.#include void main()

{ int data[10],m;

for(m=0;m<10;m++) cin>>data[m]; int j=0,k=0;

for(int i=1;i<10;i++)

if(data[i]>data[j]) j=i;

else if(data[i]0){

int d=data[0]; data[0]=data[j];

data[j]=d; if(k==0) k=j; }

if(k<9){

int d=data[9];

data[9]=data[k]; data[k]=d; }

cout<

for(m=0;m<10;m++) cout<

2.int arraymin(int d[],int size) {

int min;

if(size==1)return d[0]; else if(d[0]>d[size-1])

d[0]=d[size-1]; min=arraymin(d,size-1); return min ;

}

复习题三

一、单项选择题

1. C++源程序文件的默认扩展名为( )。

A. cpp B. exe C. obj D. lik

2. 由C++源程序文件编译而成的目标文件的默认扩展名为( 第 12 页 共 17 页

)。

A. cpp B. exe C. obj D. lik

3. 由C++目标文件连接而成的可执行文件的默认扩展名为( )。 A. cpp B. exe C. obj D. lik

4. C++程序从上机到得到结果的几个操作步骤依次是( )。

A. 编译、编辑、连接、运行 B. 编辑、编译、连接、运行 C. 编译、运行、编辑、连接 D. 编辑、运行、编辑、连接 5. 以下标识符中不全是保留字的是( )。

A. case for int B. default then while C. bool class long D. goto return char 6. 能作为C++程序的基本单位是( )。

A. 字符 B. 语句 C. 函数 D. 源程序文件 7. 程序中主函数的名字为( )。

A. main B. MAIN C. Main D. 任意标识符 8. C++程序的基本模块为( )。

A. 表达式 B. 标识符 C. 语句 D. 函数 9. 可用作C++语言用户标识符的一组标识符是( )。

A. void define +WORD B. a3_b3 _123 YN C. for -abc Case D. 2a DO sizeof

10. 存储以下数据,占用存储字节最多的是( )。 A. 0 B. ?0? C. “0” D. 0.0

11. 程序运行中需要从键盘上输入多于一个数据时,各数据之间应使用( )

符号作为分隔符。

A. 空格或逗号 B. 逗号或回车 C. 逗号或分号 D. 空格或回车

12. 设”int a=12;”,则执行完语句”a+=a*a;”后,a的值是( )。 A. 12 B. 144 C. 156 D. 288

13. 假设在程序中 a、b、c 均被定义成整型,所赋的值都大于1,则下列能

正确表示代数式的表达式是( )。

A. 1.0/a*b*c B. 1/(a*b*c) C. 1/a/b/(float)c D. 1.0/a/b/c

14. 设”int a=15,b=26;”,则”cout<<(a,b);”的输出结果是( )。

A. 15 B. 26,15 C. 15,26 D. 26

15. 设x是一个bool型的逻辑量,y的值为10,则表达式 x && y的值为( )。

A. 1 B. 0 C. 与x值相同 D. 与x值相反 16. x>0 && x<=10的相反表达式为( )。

A. x<=0 || x>10 B. x<=0 && x>10 C. x<=0 || x<=10 D. x>0 &&

x>10

17. x>0 || y==5的相反表达式为( )。

A. x<=0 || y!=5 B. x<=0 && y!=5 C. x>0 || y!=5 D. x>0 &&

第 13 页 共 17 页

y==5

18.设x和y均为bool量,则x && y为真的条件是( )。

A. 它们均为真 B. 其中一个为真 C. 它们均为假 D. 其中一个为假

19.设x和y均为bool量,则x || y为假的条件是( )。

A. 它们均为真 B. 其中一个为真 C. 它们均为假 D. 其中一个为假

20. 字符串”a+b=12\\n”的长度为( )。 A. 6 B. 7 C. 8 D. 9

21. 假定下列x和y均为int型变量,则不正确的赋值为( )。 A. x+=y++ B. x++=y++ C. x=++y D. ++x=++y 22. 下列的符号常量定义中,错误的定义是( )。 A. const M=10; B. const int M=20; C. const char ch; D. const bool mark=true;

23. 循环语句“for(int i=0; i

A. 1 B. n-1 C. n D. n+1

24. 在下面循环语句中循环体执行的次数为( )。 for(int i=0; in/2) break;

A. n/2 B. n/2+1 C. n/2-1 D. n-1

25. 在下面循环语句中内层循环体S语句的执行总次数为( )。 for(int i=0; i

for(int j=i; j

A. n2 B. (n+1)/2 C. n(n-1)/2 D. n(n+1)/2 26. 在下面循环语句中循环体执行的次数为( )。 int i=0,s=0; while(s<20) {i++; s+=i;} A. 4 B. 5 C. 6 D. 7

27. 在下面循环语句中循环体执行的次数为( )。 int i=0; do i++; while(i*i<10);

A. 4 B. 3 C. 5 D. 2

28. 当处理特定问题时的循环次数已知时,通常采用( )来解决。 A. for循环 B. while循环 C. do循环 D. switch语句 29. 循环体至少被执行一次的语句为( )。

A. for循环 B. while循环 C. do循环 D. 任一种循环 30. switch语句能够改写为( )语句。

A. for B. if C. do D. while 31. do语句能够改写为( )语句。

A. 复合 B. if C. switch D. while

第 14 页 共 17 页

32. 在下面的一维数组定义中,哪一个有语法错误。( ) A. int a[]={1,2,3}; B. int a[10]={0}; C. int a[]; D. int a[5];

33. 在下面的字符数组定义中,哪一个有语法错误。( )。 A. char a[20]=”abcdefg”; B. char a[]=”x+y=55.”; C. char a[15]; D. char a[10]=’5’; 34. 在下面的二维数组定义中,正确的是( )。 A. int a[5][]; B. int a[][5]; C. int a[][3]={{1,3,5},{2}}; D. int a[](10);

35. 假定一个二维数组的定义语句为“int a[3][4]={{3,4},{2,8,6}};”,则元素

a[1][2]的值为( )。

A. 2 B. 4 C. 6 D. 8

36. 假定一个二维数组的定义语句为“int a[3][4]={{3,4},{2,8,6}};”,则元素

a[2][1]的值为( )。

A. 0 B. 4 C. 8 D. 6

37. 若定义了函数 double *function(), 则函数function的返回值为( )。 A. 实数型 B.实数的地址 C.指向函数的指针 D.函数的地址 38. 以下说法中正确的是( )。

A. C++程序总是从第一个定义的函数开始执行 B. C++程序总是从main函数开始执行

C. C++函数必须有返回值,否则不能使用函数

D. C++程序中有调用关系的所有函数必须放在同一个程序文件中 39. 以下叙述中不正确的是( )。

A. 在一个函数中,可以有多条return语句

B. 函数的定义不能嵌套,但函数的调用可以嵌套 C. 函数必须有返回值

D. 不同的函数中可以使用相同名字的变量 40. 函数重载是指( )。

A. 两个或两个以上的函数取相同的函数名,但形参的个数或类型不同 B. 两个以上的函数取相同的名字和具有相同的参数个数,但形参的类型可以不同

C. 两个以上的函数名字不同,但形参的个数或类型相同

D. 两个以上的函数取相同的函数名,并且函数的返回类型相同 41. 以下关于函数模板叙述正确的是( )。 A. 函数模板也是一个具体类型的函数

B. 函数模板的类型参数与函数的参数是同一个概念

C. 通过使用不同的类型参数,函数模板可以生成不同类型的函数 D. 用函数模板定义的函数没有类型 42. 下列( )的调用方式是引用调用。

第 15 页 共 17 页


河北科技大学 面向对象程序设计基础学习提纲(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:曙光路小学2012年教师节学生活动方案

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: