




已阅读5页,还剩5页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
GDOU-B-11-302班级: 姓名: 学号: 试题共10 页 加白纸 1 张 密 封 线广东海洋大学 2010 2011 学年第二学期C+程序设计x1课程试题课程号:162011532101x1考试A卷闭卷考查B卷开卷题 号一二三四五总分阅卷教师各题分数3014102620100实得分数一、选择题(每小题1分,30道小题,共30分),请将答案写在下面表格中。 ..1.22. 9.30.1以下叙述中,不正确的是( )。A在C+程序中,逗号运算符的优先级最低B在C+程序中,APH和aph是两个不同的变量C若a和b类型相同,在计算了赋值表达式a=b后,b的值将赋给a,而b的值不变D当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值2下面四个选项中,均是合法的标识符的选项是 ( )A2a DO sizeofB_sum Day lotus_1_2_3Cvoid define +WORDDif struct type3如有下列定义: int x32=1,2,3,4,5,6; int (*P) 2; 则下面说法中,正确的是( )。A. P是一个数组指针 B. P是一个指针数组 C. P含有两个数组元素 D.P指向数组x4下面是由if构成的一个程序段: if(ab) if(d= =c) x=1;else x=2;该程序段所表示的逻辑关系对应的表达式是_。A. B. C. D. 5在C+语言中用( )表示逻辑值为“真”。A整数1 B. true C.非0值 D.T6若a为int类型,且其值为3,则执行完表达式a+=a-=a*a后,a的值是( )。A-3 B9 C-12 D07能表达20x30或x20|x30 & x20&x30 | x20&x30 | x20&x30 | x-b)?a+:b-;A3,2 B3,3 C4,4 D4,59下面是一个程序段: int x,y;for(y=1,x=2;y=10) break; x+=5;执行该程序段后,x值为( )。 A 2 B 7 C 12 D 1510若有数组定义int m 2=1,3,5,7,9,则以下叙述正确的是( )。A该定义存在语法错误B该定义等价于int m32=1,3,5,7,9C该定义等价于int m 2=1,3,5,7,9D该定义等价于int m22=1,3,5,7,911 以下说法中正确的是( )。 A. C+程序总是从第一个定义的函数开始执行 B. C+程序总是从main函数开始执行 C. C+函数必须有返回值,否则不能使用函数 D. C+程序中有调用关系的所有函数必须放在同一个程序文件中12.下列程序的运行结果为( )。#include using namespace std; int i,j; for(i=1;i=10;i+) if(i%3= =0); continue; coutsetw(3)iendl; coutendl; return 0;A. 1 2 4 5 7 8 10 B. 1 2 3 4 5 6 7 8 9 10C. 3 6 9 D. 1 2 313对两个数组a和b进行如下初始化static char a =“abcd”;static char a =a,b,c,d; 则下列叙述正确的是( ) Aa数组与b数组完全相同 B strlen(a)与strlen(b)值相同Ca数组和b数组的最后一个字符都是字符串结束标志符0Da数组占内存字节数与b数组一样14以下代码用来对函数进行定义,正确的函数形式是( )。A. double fun(int x, int y); B. fun(int x, y) z=x+y; int z; return(z); return z; C. double fun(int x, int y) D. fun(x, y) double z; int x,y;double z; z=x+y; return z; z=x+y; return z; 15有下列函数调用语句,函数fun1( )的实参个数是( )。fun1(a+b, (y=9, y*x), fun2(y, n, k);A2 B3 C5 D616在C+程序中,下面描述正确的是( )。A函数的定义可以嵌套,但函数的调用不可以嵌套B函数的定义不可以嵌套,但函数的调用可以嵌套C函数的定义和函数调用都可以嵌套D函数的定义和调用都不可以嵌套17下面程序段的运行结果是( )。 char a =“language”, *p; p=a; while(*p!=u) coutchar(*p 32);p+;A. LANGUAGE B. language C. LANG D. langUAGE18设有定义“static int data56;”,设该数组在静态存储区中的起始地址为十进制的100,若每个int型数占4个字节,则数组元素data23的地址为( )。 A. 115 B.124 C.130 D.16019以下程序的输出结果是( )。main() char s 6=one,two,three,*p; p=s1; cout*(p+1)s0name D. (*p).name23以下各项用于定义结构体类型,并定义结构体变量,其中正确的是( )。A. struct student B. struct student stu1,stu2; char num5; struct student int score; char num5; ; int score;student stu1,stu2; ; C. struct student D. struct student char num5; char num5; int score=96; int score; ; struct student stu1,stu2; struct student stu1,stu2;24. 以下正确的描述是( )。 A. 不允许设置参数的默认值 B. 设置参数的默认值只能在定义函数时设置 C. 设置参数的默认值时,应该设置右边的参数 D. 设置参数的默认值时,应该全部参数都设置25. 用new运算符创建一个含10个元素的一维整型数组的正确语句是( )。 A. int *p=new a10; B. int *p=new float10; C. int *p=new int10; D. int *p=new int10=1,2,3,4,5 26. 假定变量b和pb定义为“int b10, *pb=b;”,要将24赋值给b1元素中,不正确的语句是( )。 A. *(pb+1)=24; B. *(b+1)=24; C. *+b=24; D. *+pb=24; 27. 为了提高程序的运行速度,可将不太复杂的功能用函数实现,此函数应选择( )。 A. 内联函数 B.重载函数 C.递归函数 D.函数模板 28. int * swap( )指的是( )。 A. 指一个返回整型值的函数swap B. 指一个返回指向整型值指针的函数swap C. 指一个指向函数swap( )的指针,函数返回一个整型值D. 以上说法都不正确 29. 以下对C+语言共用体类型数据的叙述中正确的是( )。 A. 可以对共用体变量名直接赋值 B. 一个共用体变量中可以同时存放其所用成员 C. 一个共用体变量中不能同时存放其所用成员D. 共用体类型定义中不能出现结构体类型的成员 30. 以下关于函数模板叙述正确的是( )。 A. 函数模板也是一个具体类型的函数 B. 函数模板的类型参数与函数的参数是同一个概念 C. 通过使用不同的类型参数,函数模板可以生成不同类型的函数 D. 用函数模板定义的函数没有类型二、填空题(每空1分,共14分)。1C+语言程序开发过程要经历 _ 、 _ 、 _ 和 _ _ 四个基本步骤。2程序文件的编译错误分为_和_两类。3要判别用year表示的某一年是否闰年,用逻辑表达式表示为: _ 。4若“double x=100;”是文件f1.cpp中的一个全局变量定义语句,若文件f2.cpp中的某个函数需要访问此x, 则应在文件f2.cpp中添加对x的声明语句为_。5假定p所指对象的值为25,p+1所指对象的值为42,则执行(*p)+运算后,p所指对象的值为_。 6. 表达式sqrt(81)和pow(6,3)的值分别为_和_。7. 假定x=5,y=6,则表达式x+*+y的值为_。8. 空串的长度为_,存储它需要占用_个字节。9十进制常数245对应的十六进制的C+表示为_。三、判断题(对的打,错的打,每小题1分,共10分)1. C+语言的编译系统对宏命令的处理是在程序连接时进行。2使用#define可以为常量定义一个名字,该名字在程序中可以再赋另外的值。3设置参数的默认值时,应该设置右边的参数。4被调用函数中,如果有返回值,就一定要有return语句。5函数的定义和函数的调用均不可以嵌套。 6C+程序的基本单位是函数。7转义序列表示法只能表示字符不能表示数字。8运算符的优先级和结合性可以确定表达式的计算顺序。 9. switch语句中的default 关键字,只能放在该语句的末尾,不能放在开头或中间。10. 指针是用来存放某种变量的地址值的变量。这种变量的地址值也可以存放在某个变量中,存放某个指针的地址值的变量称为指向指针的指针,即二级指针。四、阅读程序(分三种形式,共21分)1阅读程序,填空。(6分)(1) #include using namespace std;int main() int x=1,y=0,a=0,b=0;switch (x) case 1: switch(y) case 0: a+; break; case 1: b+; break; case 2: a+;b+; break; cout”a=”a”,”b=”b; return 0; 程序的运行结果为 _ (3分) (2) 计算机系统会为 struct B 结构类型变量分配 _内存单元。(3分) struct Achar *cp;int a5; struct B int d, *e;A b;2. 改错题(每改正一个错误得2分,共8分)下列是交换两个数的程序,一共有4处错误,请将其找出并改正。#include using namespace std;int main( )int a,b,*pa,*pb;cinab;pa=&a;pb=&b;if (ab) swap(pa, pb);cout”a=”a”,”b=”b; return 0;void swap(int *p1,int *p2)int temp;temp=p1;p1=p2;p2=temp;3. 程序填空(每空2分,共12分)(1)斐波那契数列的第1和第2个数分别为0和1 ,从第三个数开始,每个数等于其前两个数之和。求斐波那契数列中的前20个数,要求每行输出5个数。#includeint main( ) int f,f1,f2,i; cout” 斐波那契数列:n”; f1=0; f2=1; coutsetw(6)f1setw(6)f2; for( i=3; i=20; i+) f=_(1)_; coutsetw(6)f;if(_(2)_) coutendl;f1=f2;f2=_(3)_; coutendl; return 0;)(2)采用辗转相除法求出两个整数的最大公约数。 #include void main() int a,b; coutab; while(a=0 | _(1)_) coutab; while(b) int r; r=a%b; _(2)_; _(3)_; /分别修改a和b的值 coutaendl; /输出最大公约数 四、编程题(自己任意选择两组题作答。共20分 )1 用for语句编程输出以下图案:(5分) * * * * * * * * * * * * *2. 用string方法打印以下图案: (5分) * * * *
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 跨境电子商务双语教程 习题和答案Chapter 1
- 提高病区住院患者入院健康教育知晓率质量改进项目
- 供水管网更新后的负荷测试方案
- 消防电梯设计与安装方案
- 建筑工程项目基础施工质量控制方案
- 基坑支护技术方案设计
- 鸡场农药使用与管理
- 水利项目土地利用方案
- 二零二五年度二手房购房定金合同样本(含违约责任细则)
- 二零二五年股权对赌协议转让合同:创业公司股权
- 2023年建筑工程施工现场安全管理资料全套样本方案模板
- 妊娠期合并症-心脏病的护理(妇产科学课件)
- 急救护理学高职PPT完整全套教学课件
- AutoCAD计算机辅助设计标准教程(中职)PPT完整全套教学课件
- 安全生产费用使用范围及计量办法
- 肾脏疾病常见症状和诊疗
- 安全环保职业卫生消防题库及答案
- 金X绅士无双攻略
- 第八章 立体几何初步(章末复习) 高一数学 课件(人教A版2019必修第二册)
- GB/T 27518-2011西尼罗病毒病检测方法
- GB/T 26255-2022燃气用聚乙烯(PE)管道系统的钢塑转换管件
评论
0/150
提交评论