您好,欢迎访问三七文档
当前位置:首页 > 高等教育 > 习题/试题 > 2015高级语言程序设计考卷B及参考答案
1…………试卷装订线………………装订线内不要答题,不要填写考生信息………………试卷装订线…………学院专业班级学号姓名武汉理工大学考试试卷(B卷)2015~2016学年1学期高级语言程序设计课程时间120分钟64学时,4学分,闭卷,总分100分,占总评成绩70%年月日题号一二三四五六合计满分2616181030100得分一、单项选择题(本大题共13小题,每小题2分,共26分)在每小题列出的四个备选项中只有一个是符合题目要求的,请将所选代码填写在下面表格中的对应位置。错选、多选或未选均无分。123456789101112131.在C++中,错误的int类型的常数是A.0B.037C.0xafD.1E52.在C++中,下列运算符中结合性属于自右向左的是A.&&B.--C.D.-3.设inta=9,b=6,c;,执行语句c=a/b+0.8;后c的值是A.1B.1.8C.2D.2.34.设inta=2,b=5;,结果为0的表达式是A.a%bB.a&bC.a=bD.a!=b5.设intu=1,v=14;表达式u+v2的值是A.0B.3C.4D.76.下面程序段执行后的输出结果是intk=10;while(k=0)k=k-1;coutkendl;A.-1B.0C.9D.107.下面程序段执行后的输出结果是inta=100;doa=a+1;while(a120);coutaendl;A.100B.101C.120D.121得分28.数组定义为inta[2][3]={1,2,3,4,5,6},值为1的数组元素是A.a[0][0]B.a[1][1]C.a[1][2]D.a[2][3]9.以下数组定义中,不正确的是A.inta[2][3];B.intb[][3]={0,1,2,3};C.intc[100][100]={0};D.intd[3][]={{1,2},{1,2,3},{1,2,3,4}};10.设宏定义#defineN3#defineY(n)((N+1)*n)则执行语句cout2*(N+Y(5+1))endl;后的输出结果是A.42B.48C.54D.出错11.若有inti,j=2,*p=&i;则能完成i=j赋值功能的语句是A.i=*p;B.i=**p;C.i=&j;D.*p=*&j;12.若有定义:inta[5];则a数组中首元素的地址可以表示为A.aB.a+1C.&aD.&a[1]13.设inta[3][4];,则与元素a[0][0]不等价的表达形式是A.*aB.**aC.*a[0]D.*(*(a+0)+0)二、程序阅读题(本大题共4小题,每小题4分,共16分)请将下面各程序的输出填写下划线处。1.#includeiostream.hintmain(){inti,j,s=0;for(i=1;i=4;i++)for(j=1;j=i;j++)s=s+1;cout”s=”sendl;return0;}输出:2.#includeiostreamusingnamespacestd;intmain(){inta[3][3]={1,2,3,4,5,6,7,8,9},n,sum=0;for(n=0;n3;n++)sum=sum+a[n][n];coutsumendl;return0;}输出:得分33.#includeiostreamusingnamespacestd;intfun(intx,inty);intmain(){inta=4,b=5,c=6,x;chard='3';x=fun(fun(a,b),fun(c,d));coutxendl;return0;}intfun(intx,inty){if(xy)returnx;returny;}输出:4.#includeiostreamusingnamespacestd;intmain(){intn=0;charstr[80]=Beijing-China2008;while(str[n]!='\0')str[n++]=str[n]='a'&&str[n]='z'?str[n]-'a'+'A':str[n];coutstrendl;return0;}输出:三、程序填空题(本大题共2小题,每空3分,共18分)请在程序中的下划线处填空,将程序补充完整。1.输入10个整数,找出最大数。#includeiostreamusingnamespacestd;intmain(){intk,x,max;cinx;max=______;//(1)for(k=2;k=___;k++){//(2)cinx;if(_______)max=x;//(3)}cout“Max=“maxendl;return0;}得分42.从键盘输入一个字符串(设其最大长度为80个字符),判断其是否是回文。若是输出“Yes”,否则输出“No”。回文是指正向、反向的拼写都一样。例如:ABCBA、aaaa等是回文;china、ABC等不是回文。#includeiostreamusingnamespacestd;intmain(){charstr[81];inti,j,n;cinstr;n=strlen(str);for(________________;ij;i++,j--)//(4)if(________________)break;//(5)if(___________)coutYes!\n;//(6)elsecoutNo!\n;return0;}四、程序改错题(本大题共1小题,每错5分,共10分)下列程序中,函数fun的功能是:将整数中各位上为奇数的数依次取出,构成一个新数放在t中。高位仍在高位,低位仍在低位。例如,当s中的数为87653142时,t中的数为7531。请改正函数fun中的两处错误,使它能得出正确的结果。#includeiostreamusingnamespacestd;voidfun(ints,int*t){intd,s1=1;t=0;while(s0){d=s%10;if(d%2==0){*t=d*s1+*t;s1*=10;}s=s/10;}}intmain(){ints,t;cins;fun(s,&t);couttendl;return0;}…………试卷装订线………………装订线内不要答题,不要填写考生信息………………试卷装订线…………得分5五、程序编写题(本大题共3小题,每小题10分,共30分)1.编写程序,求级数1+1/2!+1/3!+1/4+…前10项之和。2.编写一个函数voiduppercase(chars[]);将字符串s中的所有小写字母转换为大写字母。得分63.设单链表的结点结构如下:structnode{intdata;node*next;}试编写一个函数node*createCircle()创建一个循环单链表,该链表的头指针为head,链表中有10个结点,结点的数据域值分别为1~10。7…………装订线………………装订线内不要答题,不要填写信息………………装订线…………武汉理工大学考试试题答案(B卷)2015~2016学年1学期高级语言程序设计课程一、单项选择题(本大题共13小题,每小题2分,共26分)12345678910111213DBABBBBADBDAA二、程序阅读题(本大题共4小题,每小题4分,共16分)1.S=02.153.44.BEIJING-CHINA2008三、程序填空题(本大题共2小题,每空3分,共18分)1.(1)x(2)10(3)xmax2.(4)i=0,j=n-1(5)str[i]!=str[j](6)i=j四、程序改错题(本大题共1小题,每错5分,共10分)t=0;改为*t=0;if(d%2==0)改为if(d%2!=0)五、程序编写题(本大题共3小题,每小题10分,共30分)1.#includeiostreamusingnamespacestd;intmain(){doubles=0,t;inti;for(i=1;i=10;i++){t=1.0/i;s=s+t;}coutsendl;return0;}2.voiduppercase(chars[]){inti=0;while(s[i]!='\0'){if(s[i]='a'&&s[i]='z')s[i]=s[i]-'a'+'A';i++;}}83.node*createCircle(){node*head;head=newnode;head-data=1;p2=head;for(i=2;i=10;i++)//创建循环链表{p1=newnode;p1-data=i;p2-next=p1;p2=p1;}p2-next=head;returnhead;}9
本文标题:2015高级语言程序设计考卷B及参考答案
链接地址:https://www.777doc.com/doc-2156288 .html