1…………试卷装订线………………装订线内不要答题,不要填写考生信息………………试卷装订线…………学院专业班级学号姓名武汉理工大学考试试卷(A卷)2014~2015学年1学期高级语言程序设计课程时间120分钟64学时,4学分,闭卷,总分100分,占总评成绩70%年月日题号一二三四五六合计满分2010202030100得分一、单项选择题(本大题共10小题,每小题2分,共20分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将所选代码填写在下面表格中的对应位置。错选、多选或未选均无分。123456789101.在C++中,′a′和″a″存储所占用的字节数分别是A.1,1B.1,2C.2,1D.2,22.已知intx=7,y=8,z=5;则表达式(x*y/z++)的值是A.9B.9.33C.11D.11.203.下面不正确...的关系表达式是A.a=3B.a<3C.a>=b>cD.a>b>c4.设有intx,y;表达式y=(x=1,++x,x+2)的值是A.1B.2C.3D.45.下面程序段执行后的输出结果是intx=1,y=-1;if(y0)x=x-y;elsex=x+y;coutxendl;A.-1B.0C.1D.26.下面循环语句中,正确的是A.for(i=l,i10,i++);B.for(i=l;i10);C.for(s=0;i=1;i<10;i++);D.for(s=0,i=1;i<10;i++);7.设intm=0;,语句while(m=0)coutm++;的循环体执行的次数是A.0B.1C.2D.无限得分28.下列叙述中正确的是A.函数的形参都属于全局变量B.定义时未赋初值的整型变量的初值默认为0C全局变量的作用域一定比局部变量的作用域范围大.D.静态(static)变量的生存期贯穿于整个程序的运行期间9.设有charch[]={abc\0def},*p=ch;,则执行cout*(p+4)endl;语句的输出结果是A.0B.dC.defD.0def10.有定义语句为:inta[3][3]={1,2,3,4,5,6,7,8,9},*p=&a[1][1];则*(p+2)的值是A.3B.5C.7D.9二、填空题(本大题共5小题,每空1分,共10分)请在每小题的空格中填上正确答案,错填、不填均无分。1.在C++程序中,所有的变量都必须先,后。2.在C++中,选择语句有_____________和_________________。3.在C++中,函数的可以嵌套,函数的不允许嵌套。4.C++中,变量的存储类型除了_______、________外,还有外部的和寄存器的。5.在C++中,数组inta[3][4]第1行(从第0行开始)的地址表示为_________,元素a[1][1]的地址表示为______________。三、程序阅读题(本大题共4小题,每小题5分,共20分)请将下面各程序的输出填写下划线处。1.#includeiostreamusingnamespacestd;intmain(){inta[2][3]={{1,3,-5},{2,-4,6}},i,j,tem;tem=a[0][0];for(i=0;i2;i++)for(j=0;j3;j++)if(a[i][j]tem)tem=a[i][j];couttemendl;return0;}输出:得分得分32.#includeiostreamusingnamespacestd;intmain(){intn=1,sum=0;do{sum=sum+n;n+=2;}while(n10);coutsumendl;return0;}输出:3.#includeiostreamusingnamespacestd;intfun(intx);intmain(){intx,sum=0;for(x=1;x=4;x++)sum=sum+fun(x);coutsumendl;return0;}intfun(intx){staticintfac=1;fac=fac*x;returnfac;}输出:4.#includeiostreamusingnamespacestd;intmain(){chars[80]=lab2ac3ad,*p,*t;p=t=s;while(*t!='\0'){if(*t!='a'){*p=*t;p++;}t++;}*p='\0';coutsendl;return0;}输出:4四、程序填空题(本大题共3小题,每空2分,共20分)请在程序中的下划线处填空,将程序补充完整。1.用1元人民币兑换成1分、2分、5分,共有多少种不同的兑换方法。#includeiostreamusingnamespacestd;intmain(){intfive,two,count=0;for(five=0;five=__________;five++)//(1)for(two=0;two=__________;two++)//(2)count++;cout共有count种兑换方法endl;return0;}2.用数组构造Fibnacci序列的前20个数。#includeiostreamusingnamespacestd;intmain(){inti,fib[20]={1,1};for(i=_____;i=19;i++)//(3)fib[i]=_____+______;//(4)、(5)for(i=0;i=19;i++)coutfib[i]“;coutendl;return0;}3.从键盘上输入若干个学生的成绩,统计计算出平均成绩(取整数),并输出低于平均分的学生成绩,用输入负数结束输入。#includeiostreamusingnamespacestd;intmain(){intscore[1000],sum=0,n=0,ave,x,i;coutEntermark:;cinx;while(x0){sum=___________;//(6)score[n]=__________;//(7)n++;__________;//(8)}if(n!=0)ave=___________;//(9)elseave=0;coutAverage=aveendl;for(i=0;in;i++)if(__________________)coutscore[i];//(10)coutendl;return0;}______________;//(10)}…………试卷装订线………………装订线内不要答题,不要填写考生信息………………试卷装订线…………得分5五、程序编写题(本大题共3小题,每小题10分,共30分)1.求所有的4位花朵数。所谓4位花朵数是指一个四位数的各位数字的4次方之和等于该数本身。例如:14+64+34+44=1634。2.编写一个函数intfun(unsignedintx)求无符号整数x的各位数字之和。例如,fun(1234)的返回值为10(即1+2+3+4=10)。得分63.设单链表的结点结构如下:structnode{intdata;node*next;}试编写一个函数intmax(node*head)求以head为头指针的非空单链表中的最大data值。7…………装订线………………装订线内不要答题,不要填写信息………………装订线…………武汉理工大学考试试题答案(A卷)2014~2015学年1学期高级语言程序设计课程一、单项选择题(本大题共10小题,每小题2分,共20分)12345678910BCADBDADBC二、填空题(本大题共5小题,每空1分,共10分)1.定义使用2.ifswitch3.调用定义4.自动的(或auto)静态的(或static)5.a+1*(a+1)+1(或&a[1][1])三、程序阅读题(本大题共4小题,每小题5分,共20分)1.-52.253.334.1b2c3d四、程序填空题(本大题共3小题,每空2分,共20分)1.(1)20(2)(100-five*5)/22.(3)2(4)fib[i-1](5)fib[i-2]3.(6)sum+x(7)x(8)cinx(9)sum/n(10)score[i]ave五、程序编写题(本大题共3小题,每小题10分,共30分)1.#includeiostream.hintmain(){inti,x,y,z,p;for(i=1000;i10000;i++){x=i/1000;y=i%1000/100;z=i%100/10;p=i%10;if(x*x*x*x+y*y*y*y+z*z*z*z+p*p*p*p==i)couti;}coutendl;return0;}82.intfun(unsignedintx){ints=0,d;do{d=x%10;x=x/10;s=s+d;}while(x0);returns;}3.intmax(node*head){intx;node*p;p=head;x=p-data;p=p-next;while(p!=NULL){if(xp-data)x=p-data;p=p-next;}returnx;}9