您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 营销创新 > 2012-2013-2-C试卷B
浙江科技学院考试试卷第1页共14页浙江科技学院2012-2013学年第2学期考试试卷B卷考试科目C语言程序设计考试方式闭完成时限2小时拟题人题库审核人批准人2013年6月25日建工、机械、经管、轻工、理学、生化学院2012年级理工科专业题序一二三四五总分加分人复核人得分签名说明:1.应将全部答案写在答卷纸对应的题号处;否则作无效处理;2.编程题应写明题号,若答卷纸不够,请写在背面,不要另添卷纸;3.考试完成后,必须将试卷与答卷同时交回。一、判断题(本大题共12小题,每小题1分,共12分)1.字符常量‘A’与字符串常量“A”所占用的存储单元大小不同。2.C语言程序的三种基本结构是顺序,选择,循环。3.并联电阻的计算公式1212RRR+R对应的C语言表达式是R1*R2/R1+R2。4.C代码中不区分字母的大小写。5.不同类型的变量在内存中占用存储空间的大小都是一样的。6.用do…while语句实现循环时,不管条件真假,都将首先无条件地执行一次循环。7.else语句一定要与if语句配对使用,程序中else语句的个数一定少于或等于if语句的个数。8.在switch结构中的每一个case分支必须包含break语句,否则程序会出错。9.a是一维数组名,数组元素a[1]还可以写作“*(a++)”。得分专业班级学号姓名………………………………………………………………………装订线………………………………………………………………………………浙江科技学院考试试卷第2页共14页10.函数中可以使用多个return语句,也可没有return语句;使用多个return语句可向主函数返回多个值。11.数组中的各元素的数据类型必须相同。12.在C语言程序中凡是以“#”开头的都是预处理命令行。二、单选题(本大题共20小题,每小题1分,共20分)1.下列语句定义x为指向int类型变量a的指针,其中()是正确的。(A)inta,*x=a;(B)inta,*x=&a;(C)int*x=&a,a;(D)inta,x=a;2.C语言程序中,main函数的位置()。(A)必须放在其他函数之前(B)必须在源程序的最后(C)可以在程序的任何位置(D)包含文件中的第一个函数3.组成一个C语言程序的是()。(A)子程序(B)过程(C)函数(D)主程序和子程序4.“E2”是()。(A)值为100的实型常数(B)值为100的整型常数(C)不合法的标识符(D)合法的标识符5.将数学表达式sin30°写成C语言表达式为()。(A)sin30(B)sin(30)(C)sin(30/3.14*180)(D)sin(30*3.14/180)6.根据以下程序,下列选项中正确的是()。main(){intx=3,y=0,z=0;if(x=y+z)printf(****);elseprintf(####);}(A)有语法错误不能通过编译得分浙江科技学院考试试卷第3页共14页(B)输出****(C)可以通过编译,但是不能通过连接,因而不能运行(D)输出####7.下面程序段求两个数中的大数,不正确的是()。(A)max=xy?x:y;(B)if(xy)max=x;elsemax=y;(C)max=x;(D)if(y=x)max=y;if(y=x)max=y;max=x;8.设变量定义为“inta[4]={1,3,7,9},*p=a+2;”,则*p的值是()。(A)4(B)3(C)7(D)&a[0]+29.定义“charstr1[20]=Borland,*str2=C++5.0;”,调用函数“strcat(str1,str2);”后,字符串str1的串长是()。(A)6(B)15(C)13(D)710.下列数组定义语句中,不正确的是()。(A)inta[]={1,2,3,4,5};(B)chara[5]={A,B,C,D,E};(C)inta[5]={1,2};(D)chara[6]=Hello;11.函数原型声明中,正确的是()。(A)voidplay(inta,b);(B)voidplay(vara,b:Integer);(C)voidplay(inta,intb);(D)Subplay(a,bAsInteger);12.在函数调用语句“f(a,b,(c,d));”中,含有的实参个数是()。(A)3(B)4(C)5(D)语法错误13.宏定义命令中,()格式是正确的。(A)#definePI=3.14159(B)definePI=3.14159(C)#definePI3.14159(D)#definePI(3.14159)14.有如下定义,则对变量person1的出生年份进行赋值时,正确的语句是()。structdate{intmonth;intday;intyear;浙江科技学院考试试卷第4页共14页};structworker{charname[20];charsex;structdatebirthday;}person1;(A)year=1966;(B)birthday.year=1966;(C)person1.year=1966;(D)person1.birthday.year=1966;15.设有如下定义,若双精度型变量占8字节,整型变量占2字节,字符型变量占1字节,则共用体变量b占用内存的字节数是()。uniondata{inti;charch;doublef;}b;(A)11(B)2(C)1(D)816.若以“a+”模式打开一个已经存在的文件,则叙述正确的是()。(A)文件打开时,原文件内容被删除,文件内部位置指针移动到文件开头,可以进行追加操作(B)文件打开时,原文件内容被删除,文件内部位置指针移动到文件结尾,可以进行追加操作(C)文件打开时,原文件内容不被删除,文件内部位置指针移动到文件开始位置,可以进行追加和读取操作(D)文件打开时,原文件内容不被删除,文件内部位置指针移动到文件结尾,可以进行追加和读取操作17.若执行下面的程序时从键盘上输入3和4,则输出结果是()。voidmain(){inta,b,s;浙江科技学院考试试卷第5页共14页scanf(%d%d,&a,&b);s=a;if(a<b)s=b;s=s*s;printf(%d\n,s);}(A)7(B)9(C)12(D)1618.数组定义为“inta[4][5];”,引用*(a+1)+2表示()。(A)a[1][0]+2(B)a数组第1行第2列元素的地址(C)a[0][1]+2(D)a数组第1行第2列元素的值19.若有定义“char*p1,*p2,*p3,*p4,ch;”,则不能正确赋值的程序语句为()。(A)p1=&ch;scanf(%c,p1);(B)p3=getchar();(C)p2=(char*)malloc(1);scanf(%c,p2);(D)p4=&ch;*p4=getchar();20.若有以下语句,则对结构体变量std中成员num的引用方式不正确的是()。structstudent{intnum;floatscore;}std,*p;p=&std;(A)std.num(B)*p.num(C)(*p).num(D)p-num三、程序填空题(本大题共4小题,每空2分,共24分)1.下列程序用于计算)!12()1(...!71!51!3111nn,直到最后一项绝对值小于0.000001,并统计一共计算了多少项。请填空。#includestdio.h得分浙江科技学院考试试卷第6页共14页voidmain(){doubles,t;intf,n;s=0;t=1;f=1;n=1;while(t=1e-6){s=____(1)____;n++;t=____(2)____;f=-f;}printf(一共计算了%d项,结果为%lf\n,____(3)____,s);}(1)A.s+tB.s+fC.s+nD.s+f*t(2)A.t*(2*n-2)*(2*n-1)B.t/(2*n-2)/(2*n-1)C.t*(2*n)*(2*n+1)D.t/(2*n)/(2*n+1)(3)A.nB.n-1C.n+1D.2*n-12.下列程序用于统计某班30个学生某门课程成绩的分布情况,分别显示0~9、10~19、20~29、…、80~89、90~99以及100分的人数。请填空。#includestdio.hvoidmain(){inta[30],b[11]={0},i,k;for(i=0;i30;i++){scanf(%d,&a[i]);k=a[i]/10;____(4)____;}浙江科技学院考试试卷第7页共14页for(i=0;____(5)____;i++)printf(%2d--%2d:%d\n,i*10,i*10+9,b[i]);printf(100:%d\n,____(6)____);}(4)A.a[i]++B.a[k]++C.b[i]++D.b[k]++(5)A.i30B.i10C.i11D.i!=10(6)A.a[i]B.a[k]C.b[i]D.b[k]3.下面的程序随机产生一个5行6列的数组,每个元素为两位数,先以5行6列的格式输出该数组,然后找出该数组的最小元素,输出该元素及其两个下标。main(){inta[5][6];inti,j,mi=0,mj=0;for(i=0;i5;i++){for(j=0;j6;j++){a[i][j]=rand()%90+10;________(7)________if(________(8)________){mi=i;mj=j;}}printf(\n);}printf(min=a[%d][%d]=%d,________(9)________);}(7)(A)scanf(%d,&a[i][j]);(B)printf(%d,a[i][j]);(C)scanf(%d,a[i][j]);(D)printf(%d,&a[i][j]);(8)(A)a[i][j]a[mi][mj](B)a[i][j]a[mi][mj]浙江科技学院考试试卷第8页共14页(C)a[i][j]==a[mi][mj](D)a[i][j]!=a[mi][mj](9)(A)i,j,a[i][j](B)mi,mj,a[mi][mj](C)a[i][j],i,j(D)a[mi][mj],mj,mi4.下面程序设计一个函数leapyear,用来判断是否为闰年(闰年的条件:年号能被4整除,但是不能被100整除,或者能被400整除),在main函数中输入年号,进行判断。intleapyear(intyear);main(){intyear;printf(Inputyearnumber:);scanf(%d,&year);if(________(10)________)printf(\n%disleapyear\n,year);elseprintf(\n%disnotleapyear\n,year);}________(11)________{if(________(12)________)return(1);elsereturn(0);}(10)(A)leapyear(B)leapyear(year)(C)year==leapyear(D)year!=leapyear(11)(A)voidleapyear(intyear)(B)intleapyear()(C)intleapyear(intyear)(D)voidleapyear()(12)(A)year%4==0&&year%100!=0&&year%400==0浙江科技学院考试试卷第9页共14页(B)year%4==0||year%100!=0||year%400==0(C)year%4==0&&year%100!=0||year%400==0(D)year%4==0四、程序阅读题(本大题共6小题,每小题4分,共24分)1.运行下列程序,根据提示,输入字符串“SOS#$O$”,则输出的结果为()。main(){char
本文标题:2012-2013-2-C试卷B
链接地址:https://www.777doc.com/doc-3024090 .html