试卷代号:1075 座位号■☐ 中央广播电视大学2011-2012学年度第二学期“开放本科”期末考试 C十+语言程序设计试题 2012年7月 题 号 二 三 四 五 总分 分】 数 得 分 评卷人 一、单选题(每小题2分,共20分) 1.在C十十程序中相对独立的功能模块为( )。 A.表达式 B.标识符 C.语句 D.函数 2.存储以下数据,占用存储字节最多的是( )。 A.0 B.0’ C."o” D.八n' 3.在下面的一维数组定义中,有语法错误的是()。 A.inta[]={1,2,3}; B.inta[10]={0}; C.int a[]; D.int a[5]; 4.若整型变量x的值为25,则x/6的值为( )。 A.3 B.4 C.5 D.1 5.C+十语言中的每条简单语句以( )作为结束符。 A.逗号 B.分号 C.空格 D.换行符 547
试卷代号 座位号 中央广播电视大学 11 2012 学年度第二 开放 考试 语 言 设计 2012 年7 总分 分数 得分|评卷人 一、单选题(每小题 2分,共 0分) 1.在 + + 模块 )。 A. 表达式B. 识符 c.语句 2. 用存 节最多 )。 A. 0 B. '0' C. "0" D. '\n' 3. 下 面 定义 有语 错误 )。 A. jnt a[]={1 ,2 ,3}; B. jnt a[lO]={O}; C. jnt a[]; D. jnt a[5]; 4. 量x 为25 则x/6 )。 A. 3 B. 4 C. 5 D. 1 5.C++ )作为结束符。 A. 逗 号 B. c.空格D.换行符 547
6.随机函数表达式rand()%20的值在( )区间内。 A.119 B.1≈20 C.0~19 D.0≈20 7.当处理一个循环次数已知的问题时,则通常采用( )循环来解决。 A.for循环 B.while C.do循环 D.任何种 8.在下面for循环语句中,循环体S语句的执行次数为()。 for(int i=0;i5的逻辑值为 16.假定一个一维数组的定义为“char¥a[8];”,则该数组占用 个字节的存储空间。 17.假定×的值为10,则表达式2+x+十的值为 18.假定p所指对象的值为25,p+1所指对象的值为46,则*+十p的值为 l9.假定要动态分配一个类型为int的具有n个元素的数组,并由r指向这个动态数组,则 使用的语句为intr 20.设px指向一个类的动态分配的对象,则执行“delete px;”语句时,将自动调用该类的 函数。 548
6. 表达式rand() %20 A. 1~19 C. 0~19 )区间内。 B. 1~20 D. 0~20 7. 处理一个 的 问 )循环来解决。 A. for while C. do 循环 D. 一种 8. 面for 执行次数 )。 for(int i=O; i5 16. 一个一 为"char 祷a[8] 数组 17. 定x 为10 式2+x+ 18. 定p 所 指 对 为25 , p+ 所 指 对 为16 十p 19. 定要 个类 为int 有n 由r 动 态 使用的语句为 20. 设px 个类 对象 行"dElete pxf' 动 调 用 函数。 548
得分 评卷人 三、写出下列每个程序运行后的输出结果(每小题6分,共30分) 21.include void main()( int sl=0; for(int i=1;i void main(){ inta[6]={6,9,12,18,15,20}; int c=0; for(int i=0;i void main(){ inta[3][4]={1,2,7,8},{5,6,32,15},{9,20,3,4}; int m=afo]o]; for(int i=0;im)m=a[i]j]; cout<<m<<endl; 输出结果: 549
得分|评卷人 三、写出下列每个程序运行后的输出结果{每小题 1. 丰include void main() { int51=0; for(int i=l; i void mainO { int a[6]={6 ,9 ,12 ,18 ,15 ,20}; int c=O; {or(int i=O; i void mainO { int a[3][4]={ {1 ,2 ,7 ,{5 ,6 ,32 ,15} ,20 ,3 ,1}}; int m=a[O][O]; forCint i=O ;im) m=a[i][j]; cout«m«end!; 输出结果: 54.9
24.#include void main(){ inta=10,b=15,c; c=a+b; int b=a+2; c+=b; cout void main(){ inta[8]={6,19,4,12,20,5,18,25}; int p,s=0; for(p=a;p=20)s十=米p; cout>x; .y+=x米X; while(--n); return y; 函数功能: 550
24. # include void mainO { int a=10 , b=15 , c; c=a十b; { int b=a+2; c+=b; cout void mainO { int a[8]= {6 ,19 ,4, 12, 20, 5, 18 ,25} ; int 祷p s=O; for(p=a; p=20) 铃p; cout<<s<<endl; 输出结果: 得分|评卷人 四、写出下列每个函数的功能{每小题 26. int FI(int n) { int x ,y=O; do { lin 于等 cin»x; y+=x } while( 一-n) ; return y; 函数功能 550
27.bool WE(int a],int b[],int n){ for(int i=0;i=s)m++; return m; } 函数功能: 得分 评卷人 五、按题目要求编写函数(6分) 29.假定一个函数声明为“int fun(unsignedint n,unsigned int m);”,求出n和m的最大 公约数并返回。 551
27. bool WE(int int int n) { for(int i=O;i=s) m+ return m; 函数功能: 得分|评卷人 五、按题目要求编写函数 6分) 29. 定一 fun( unsignedint n. unsigned int m) 出n 和m 最大 公约数井返回。 551
试卷代号:1075 中央广播电视大学2011一2012学年度第二学期“开放本科”期末考试 C++语言程序设计试题答案及评分标准 (供参考) 2012年7月 一、单选题(每小题2分,共20分) 1.D 2.A 3.C 4.B 5.B 6.C 7.A 8.C 9.D 10.B 二、填空题(每小题2分,共20分) 11.}(右花括号) 12.’f 13.031 14.x+=y 15.假(false或0) 16.32 17.12 18.46 19.new int[n]; 20.析构 三、写出下列每个程序运行后的输出结果(每小题6分,共30分) 21.s1=30 22.c=4 23.32 24.62 25.45 552
试卷代号 中央广播电视大学 0 11 2012 学年 度 期 末 (供参考) 2012 年7 一、单选题{每小题 1. D 6. C 2. 7. A 3. C 8. C 4. B 9. D 5. B 10. B 二、填空题(每小题 11. } (右花括号) 12. 'f' 13. 031 14. 15. false 16. 32 17. 12 18. 46 19. new int[n]; 20. 析构 三、写出下列每个程序运行后的输出结果(每小题 3 0 21. sl=30 22. c=4 23. 32 24. 62 25. 45 552
四、写出下列每个函数的功能(每小题8分,共24分) 评分标准:每题与参考答案的叙述含义相同者得8分,否则酌情给分。 26.求出从键盘上输入的n个整数的平方和并返回。 27.判断具有n个元素的两个数组a和b中对应元素值是否全部相等,若是则返回真,否 则返回假。 28.统计出数组a[n]中大于等于其平均值的元素个数并返回。 五、按题目要求编写函数(6分) 29.评分标准:根据编程的完整程度酌情给分。 int fun(unsigned int n,unsigned int m){ int k=(n<=m)?n:m; /1分 int a=0; //2分 for(int i=1;i<=k;i++) if(n%i==0&.8.m%i==0)a=i;/5分 return a; /16分 553
四、写出下列每个函数的功能(每小题 8分,共 4分) 评分标准:每题与参考答案的叙述含义相同者得 8分,否则酌情给分。 26. 从键盘上 平方 27. 个元 两个 和b 对应元 全部 是则 则返回假。 28. 组a[n] 平均 个数并返 五、按题目要求编写函数 6分) 29. 评分 根据 程度酌 int fun( unsigned int n , unsigned int m) { int k=(n<=m)? n:m; //1 int a=O; //2 for(int i=l; i<=k; i++) =0 && m%i= =0) a=i; / /5 return a; / /6 553