您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 企业文档 > 2016-年天津市大学软件学院高职升本专业课试题-C语言部分(含答案)
12016年天津市大学软件学院高职升本专业课试题考场号考生号姓名第一部分C语言部分100分一、单项选择题(共20小题,每题2分,共40分)以下每小题列出的四个备选答案中只有一个符合题目要求,请将正确答案填入“单项选择题答题表”对应的格中,未填入答题表,错选或多选均不得分。1.C语言规定,在一个C程序中,主函数的位置A.必须在最后B.必须在系统调用的库函数的前面C.可以任意D.必须在最开始2.下列4组用户标识符中,其中合法的一组是A.AP_0doB.xyzDOst_nameC.float1a0_AD._123tempint3.下列四个选项中,合法的C语言关键字选项是A.gotoB.includeC.printfD.Switch4.下列不正确...的初始化语句是A.charch=65+30;B.charch='C+D';C.charch='\0';D.ch='\n'+'6';5.下列表达式为0的是A.4&&0||2B.53&&2||810+10C.'c'&&'d'D.f=8716.下列程序的输出结果是#includestdio.h#defineN5#defineMN+1#definef(x)(x*M)main(){inti1,i2;i1=f(2);i2=f(1+1);printf(%d%d\n,i1,i2);}A.1212B.117C.1111D.1277.若有说明语句:charc='\123';,则变量cA.包含2个字符B.包含3个字符C.包含1个字符D.说明不合法,c的值不确定8.已知intt=0;while(t==0){……},则以下叙述正确的是A.循环控制表达式的值为0,不能进入循环B.循环控制表达式的值为假,不能进入循环C.循环控制表达式不合法D.循环控制表达式的值为1,可以进入循环9.若有以下定义:chars[20]=programing,*ps=s;则不能..代表字符'r'的表达式是A.s[1]B.*++pC.ps[1]D.ps+1210.若有如下语句intx=3;do{printf(%3d,x-=2);}while(!(--x));}则上面程序段的输出结果是A.1-2B.1C.30D.死循环11.以下程序的输出结果是#includestdio.hmain(){inta=2,b=-1,c=2;if(ab)if(b0)c=0;elsec++;printf(%d\n,c);}A.2B.3C.1D.012.有以下函数定义:voidfun(inty,doublex){……},若以下选项中的变量都已正确定义并赋值,则对函数fun的正确调用语句是A.fun(20,1,5);B.k=fun(20,1.5);C.fun(inty,doublex);D.voidfun(20,1.5);13.有以下程序,程序运行的输出结果是#includestring.h#includestdio.hmain(){charp[20]={'E','F','G','H'},q[]=EFGH,r[]=EFGHI;strcat(p,r);strcpy(p+strlen(q),q);printf(%d\n,strlen(p));}A.9B.11C.6D.814.以下正确定义一维数组的选项是A.inta[5]={0,1,2,3,4,5};B.inta[5]=ABC;C.chara={'A','B','C'};D.chara[]={'0','1','2','3','4','5','\0'};15.以下程序的输出结果是#incluestdio.hmain(){inti,f1=1,f2=1;for(i=0;i3;i++){printf(%d%d,f1,f2);f1=f1+f2;f2=f1+f2}}A.123456B.113579C.112358D.1357911316.C语言规定,简单变量做实参时,它和对应的形参之间的数据传递方式是A.地址传递B.由用户指定传递方式C.有实参传给形参,再由形参传给实参D.值传递17.有以下程序:#includestdio.hvoidss(char*s,chart){while(*s){if(*s==t)*s=*s-'a'+'A';s++;}}main(){charstr1[100]=abcddfefdbd,c='d';ss(str1,c);printf(%s\n,str1);}程序运行后的输出结果是A.ABCDDFEFDBDB.abcDDfefDbDC.abcAAfefAbaD.Abcddfefdbd18.设有以下说明语句:structex{intx;floaty;charz;}example;则下面的叙述中不正确...的是A.struct是结构体类型的关键字B.example是结构体类型名C.x,y,z都是结构体成员名D.structex是结构体类型名19.若有以下定义语句:doubler=99,*p=&r;*p=r;以下说法正确的是A.以上两处的*p含义相同,都说明给指针变量p赋值B.赋值语句“*p=r;”取变量r的值放回r中C.赋值语句“*p=r;”取变量r的值付给指针变量pD.在“doubler=99,*p=&r;”中,把r的地址赋给p所指的存储单元20.以下程序的输出结果是#includestdio.hintfun(intx){inty=1;staticintz=4;z+=1;++y;return(x+y+z);}main(){inti;for(i=1;i=3;i++)printf(%3d,fun(i));}A.8910B.81012C.789D.79124二、填空题(共10空,每空1分,共10分)请按照试题中对应的标号顺序填写到答题表中1.若有定义intx=2,y=3,z=4;则执行x+=y+=z;后表达式xy?y:x的值为。2.每个C源程序无论由多少个函数组成,都有一个且只能有一个。3.若有定义语句charch[3][10]={hello,my,world};则语句printf(%s,ch[2]);的结果为。4.若有定义语句inta=3,*p1=&a,**p2=&p1;则*p1+**p2的值为。5.C语言一般使用语句从被调函数返回一个函数值给主调函数。6.设inti;,执行for(i=1;i==10;i++)continue;后,循环体被执行的次数是。7.已知字符'a'的ASCI码值为97,如有语句charch[]=abc,*p=ch;printf(%d\n,*(p+2));的输出结果为。8.scanf()函数是一个标准库函数,对该函数进行说明的头文件是。9.若有定义语句structstudent{charname[10];intscore;}s[5]={{MARY,98},{JACK,66}};则元素s[1].score的值为。10.若有定义语句int*p,a[]={2,4,6,8,10};p=&a1;则p[0]+p[2]的值为。三、判断题判断下题是否正确,正确的划√,错误的划×(每题1分,共15分)1.()在C语言中,字符型数据在内存中存储其ASCII码。2.()用scanf()函数为3个整型变量赋值,其语句scanf(%d,%d,%d,&a,b,c);3.()C语言中符号惯用小写字母,但不区分大小写字母。4.()getchar()和putchar()用于字符型数据的输入输出。5.()若有inti=50,j=2;则执行完i*=j+8;后i的值为108。6.()与表达式exp等价的表达式是exp!=0。7.()若有说明inta[2][2]={0};则该数组a所有元素的初值均为0。8.()C函数可以嵌套定义也可以递归调用。9.()若有定义ints[2][3]={1,2,3,4,5,6},*p=s[1]+2;则语句printf(%d,*p);的结果为6。10.()若有定义inta=90;doubleb=2.0;floatc=1;chark='0';则表达式a/b+c-k值的类型为double。11.()break语句用于循环体中,可结束本层循环,continue语句用于循环体中,可结束本次循环。12.()为表示关系表达式x≥y≥z应使用C语言表达式(x=y)||(y=z)。13.()尽管main()函数不被任何函数调用,但它也可以带参数。14.()C语言中的变量按作用域分为两种:即局部变量和全局变量。15.()若有定义int(*p)();,则p是一个函数名,该函数的返回值是指向int型数据的指针。5四、阅读程序题本题共5小题,每小题5分,共25分,请写出程序的运行结果1.【程序】#includestdio.hmain(){inta[2][3]={{1,2,3},{-10,5,10}};inti,j,m;m=a[0][0];for(i=0;i2;i++)for(j=0;j3;j++)if(a[i][j]m)m=a[i][j];printf(m=%d\n,m);}【运行结果】2.【程序】#includestdio.hintf(intx){if(x==0||x==1)return3;elsereturnx*x-f(x-2);}main(){printf(%d\n,f(3));}【运行结果】3.【程序】#includestdio.hmain(){intx=8;for(;x0;x--){if(x%3){printf(%d,x--);continue;}printf(%d,--x);}}【运行结果】64.【程序】#includestdio.hmain(){inta=15,b=21,m=0;switch(!(a%3)){case0:m++;break;case1:m++;switch(b%2){case0:m++;break;case1:m++;}}printf(%d\n,m);}【运行结果】5.【程序】#includestdio.hvoidfun(int*a,intn)/*fun函数的功能是将a所指数组元素从大到小排序*/{intt,i,j;for(i=0;in-1;i++)for(j=i+1;jn;j++)if(a[i]a[j]){t=a[i];a[i]=a[j];a[j]=t;}}main(){inta[10]={1,2,3,4,5,6,7,8,9,0},i;fun(a+4,5);for(i=0;i10;i++)printf(%d,,a[i]);printf(\n);}【运行结果】五、编程题本题共1小题,10分1.统计10个学生成绩的平均分,并输出低于平均分的人数。(1)学生的成绩要求通过键盘输入;(2)函数的调用和结果的输出由主函数main处理;(3)统计计算过程在自定义函数tj中完成。例如:若输入10个学生的成绩为:100908080907065708083CRCR表示回车程序的输出应为:Theresultis:3
本文标题:2016-年天津市大学软件学院高职升本专业课试题-C语言部分(含答案)
链接地址:https://www.777doc.com/doc-3651764 .html