资源描述:
《2006级《高级语言程序设计》试题a卷》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、武汉大学计算机学院2006-2007学年度第2学期2006级《高级语言程序设计》期末考试试卷A卷姓名:学号:专业:说明:开卷考试,答案请全部写在答题纸上,写在试卷上无效。未经主考教师同意,考试试卷、答题纸、草稿纸均不得带离,否则视为违规。题号一二三四五总分总分1624153015100一.单项选择题:(选择最合适的答案填空,每小题2分,共16分)()1、在执行以下程序时,从键盘上输入9,则该程序输出结果是__________。#includeintmain(){intn;scanf("%d",&n);if(n++<10)printf("%d",n)
2、;elseprintf("%d",n--);return0;}A、8 B、9 C、10 D、11()2、表达式0156637&~0777的结果是____________。A、0156000B、156000C、0637D、637()3、假设有如下定义:intm=1,n=1;则执行表达式(m=’5’<’3’)&&(n=’7’>’9’)后,m和n的值分别是_____________________。A、1和1B、1和0C、0和1D、0和0()4、表达式-11%3+7/2的结果是____________。A、5.5B、5C、1.5D、1()5、
3、设有如下宏定义:#defineBOOK(x)8-x则执行赋值语句v=BOOK(2)*BOOK(4);/*v为int型变量*/后,变量v的值为。A、-12B、0C、24D、44()6、设有如下定义:inta[6][4];int(*p)[4];p=a;则与表达式*p+3等价的选项是_________。A、a[0][3]B、&a[0][3]C、a[3][0]D、&a[3][0]()7、假设有以下定义:staticchar*a=”hteY W ob”;4060aabb7d66c1948ada749585314298.doc2007年7月11日第6页共6页则表达式st
4、rlen(a)的结果为________。A、15B、10C、7D、5()8、假设有如下定义:inta=1,b=2,c=3,u,v;执行下面语句组后,整型变量u和v的值分别为_____________。u=a?b:c;v=(a=2)?b+a:c+a;A、3和3B、3和4C、2和3D、2和4一.程序阅读与分析(每小题8分,共24分)9、分析下面程序执行流程,指出程序执行结果。#includeintmain(){inti;for(i=1;i<=6;i++)switch(i%5){case0:printf(“*”);break;case1:printf(“#”
5、);break;default:printf(“”);case2:printf(“&”);}return0;}10、下面程序完成的功能如下:输入一个由10个整数组成的数组a,将该数组下标值为偶数的元素由小到大排序,将下标值为奇数的元素由大到小排序。例如,输入数组a为{8,1,6,3,4,5,2,7,0,9},执行下面程序后,数组a为{0,9,2,7,4,5,6,3,8,1}。请在空白处填写合适内容以正确完成整个程序。#includeintmain(){(1)a[10],n;inti,j,t;for(i=0;i<10;i++)scanf("%d",(
6、2));for(i=0;i<7;i+=2)for(j=(3);j<10;(4)){if((5)){t=a[i];a[i]=a[j];a[j]=t;}if((6)){t=a[i+1];a[i+1]=a[j+1];a[j+1]=t;}}for(i=0;(7);i++)printf("%dt",(8));return0;4060aabb7d66c1948ada749585314298.doc2007年7月11日第6页共6页}11、分析以下程序执行流程,请指明错误之处,并简要说明错误原因,并给出修改意见。(共4个错误)/*输入多个整数,以0作为结束标记,将这些整数存入到Exa
7、m.dat文件中*//*然后将这些数据从Exam.dat文件中读出来,显示到显示器上*/#include#includeintmain(){File*fp;if((fp=fopen("Exam.dat","w"))==NULL){printf("openfileerror!");exit(1);}do{scanf("%d",p);fprintf(fp,”%d”,p);}while(p!=0);fclose(fp);if((fp=fopen("Exam.dat","r"))==NULL){printf(