版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
试卷科目:C语言专升本考试C语言专升本考试(习题卷10)PAGE"pagenumber"pagenumber/SECTIONPAGES"numberofpages"numberofpagesC语言专升本考试第1部分:单项选择题,共70题,每题只有一个正确答案,多选或少选均不得分。[单选题]1.已有如下数组定义和函数调用语句,inta[3][4];fun(a);则fun函数的形参数组定义正确的是()。(2分)A)1.fun(inta[][6])B)fun(inta[3][])C)fun(inta[][])D)1.fun(inta[][4])[单选题]2.C语言规定,在一个源程序中,main函数的位置()。A)必须在最开始B)必须在系统调用的库函数的后面C)可以任意D)必须在最后[单选题]3.以下错误的描述是:函数调用可以()。A)出现在执行语句中B)出现在一个表达式中C)做为一个函数的实参D)做为一个函数的形参[单选题]4.有一函数┌1x>0Y=┤0x=0└-1x<0以下程序段中不能根据x的值正确计算出y的值的是______。A)if(x>0)y=1;elseif(x==0)y=0;elsey=-1;B)y=0;if(x>0)y=1;elseif(x<0)y=-1;C)y=0;if(x>=0)if(x>0)y=1;elsey=-1;D)if(x>=0)if(x>0)y=1;elsey=0;elsey=-1;[单选题]5.以下符合C语言语法的实型常量是______。A)1.2E0.5B)3.14159EC)5E-3D)E15[单选题]6.根据声明inta[10],*p=a;,下列表达式错误的是()。A)a[9]B)p[5]C)a++D)*p++[单选题]7.以下程序调用findmax函数返回数组中的最大值。Findmax(int*a,intn){int*p,*s;For(p=a,s=a;p-a<n;p++)If(_____)s=p;Return(*s);}Main(){intx[5]={12,21,13,6,18};Printf("%d\n",findmax(x,5)):}在下划线处应填入的是______。A)p>sB)*p>*sC)a[p]>a[s]D)p-a>p-s[单选题]8.下面程序的输出是______。Intm=13;Intfun2(intx,inty){intm=3;Return(x*y-m);}Main(){inta=7,b=5;Printf("%d\n",fun2(a,b)/m);}A)1B)2C)7D)10[单选题]9.下面程序的输出结果是______。Main(){inta[]={1,2,3,4,5,6,7,8,9,0},*p;P=a;Printf("%d\n",*(p+9));}A)0B)1C)10D)9[单选题]10.题号:95下列变量说明语句中,正确的是()。A)char:abc;B)chara;b;c;C)intx;z;D)intx,z;[单选题]11.若ch为char型变量,k为int型变量(已知字符a的ASCII十进制代码为97),则以下程序段的执行结果是()。Ch='a';k=12;printf("%x,%o,",ch,ch,k);printf("k=%%d\n",k);A)因变量类型与格式描述符的类型不匹配,输出无定值B)输出项与格式描述符个数不符,输出为零值或不定值C)61,141,k=%dD)61,141,k=%12[单选题]12.有以下程序:Structs{intx,y;}data[2]={10,100,20,200};Main(){structs*p=data;Printf("%d\n",++(p->x));}程序运行后的输出结果是______。A)10B)11C)20D)21[单选题]13.语句for(表达式1;;表达式3)等价于?()A)for(表达式1;0;表达式3)B)for(表达式1;1;表达式3)C)for(表达式1;表达式1;表达式3)D)for(表达式1;表达式3;表达式3)[单选题]14.设有定义?intk=0;?,下列选项的4个表达式中与其他3个表达式的值不相同的是____。A)k++B)k+=1C)++kD)k+1[单选题]15.以下程序运行后的输出结果是_______。Main(){inti=0,s=1;For(;;){If(i==5)break;I++;S+=i;};Printf("%d\n",s);}A)死循环B)16C)15D)11[单选题]16.若i为整型变量,则以下循环for(i=2;i==0;i--)printf("%d",i);执行次数是()。(2分)A)1.无限次B)0C)1D)2[单选题]17.若a是float型变量,b是unsigned型变量,以下输入语句中合法的是()。A)scanf("%6.2f%d",&a,&b);B)scanf("%f%n",&a,&b);C)scanf("%f%3o",&a,&b);D)scanf("%f%f",&a,&b);[单选题]18.以下程序运行后的输出结果是()。Main(){Intx,y,z;X=y=2;z=3;Y=x++-1;Printf("%d%d",x,y);Y=++x-l;Prinf("%d%d\n",x,y);Y=z---1;Printf("%d%d",z,x);Y=--z-1;Printf("%d%d\n",z,x);A)31432414B)31332422C)31432412D)21321312[单选题]19.若有说明:long*p,a;则不能通过scanf语句正确给输入项读入数据的程序段是______。A)*p=&a;scanf("%ld",p);B)p=&a;scanf("%ld",p);C)scanf("%ld",p=&a);D)scanf("%ld",&a);[单选题]20.下面程序的输出是______:Chars[]="ABCD";Main(){char*p;For(p=s;p<s+4;p++)Printf("%s\n",p);}①ABCD②A③D④ABCDBCDBCABCCDCBABDDAAA)①B)②C)③D)④[单选题]21.以下对C语言函数的描述中,正确的是()。A)C程序必须由一个或一个以上的函数组成B)C函数既可以嵌套定义又可以递归调用C)函数必须有返回值,否则不能使用函数D)C程序中有调用关系的所有函数必须放在同一个程序文件中[单选题]22.C语言结构体类型变量在程序执行期间A)所有成员一直驻留在内存中B)只有一个成员驻留在内存中C)部分成员驻留在内存中D)没有成员驻留在内存中[单选题]23.若有以下说明语句,structbirthday{intyear;intmonth;intday;}day1;则下面叙述正确的是()。(2分)A)1.day1为结构体类型名B)1.structbirthday为结构体变量名C)1.month为结构体变量名D)1.day1为结构体变量名[单选题]24.执行下列程序后,其输出结果是()。Main(){inta=9;a+=a-=a+a;printf("%d\n",a);}A)18B)9C)-18D)-9[单选题]25.定义如下数组intf[30]={12.20,8,10}:则f定义了多少个元素()。A)30B)4C)12D)20[单选题]26.以下叙述错误的是()。(2分)A)1.指针可以进行加、减等算术运算;B)1.指针中存放的是地址值C)1.指针是一个变量D)1.指针变量不占用存储空间[单选题]27.若有double*p,x[10];inti=5;使指针变量p指向元素x[5]的语句为()。A)p=&x[i];B)p=x;C)p=x[i];D)p=&(x+i)[单选题]28.凡是函数中未指定存储类别的局部变量,其隐含的存储类别为()。A)自动(auto)B)静态(static)C)外部(extern)D)寄存器(register)[单选题]29.有如下程序:Main(){Intn[5]={1,2,3},i,k=2;For(i=0;i<=k;i++)N[i]=n[i]+1;Printf("%d\n",n[i]);}该程序的输出结果是______。A)不确定的值B)4C)3D)0[单选题]30.若有以下定义,inta[10],*p=a;则p+5表示()。(2分)A)1.元素a[5]的地址B)1.元素a[5]的值C)1.元素a[6]的地址D)1.元素a[6]的值[单选题]31.设有程序段:intk=10;while(k=0)k=k-1;这下面描述中正确的是()。(2分)A)1.while循环执行10次B)1.循环是无限循环C)1.循环体语句一次也不执行D)1.循环体语句执行一次[单选题]32.以下程序结果为:______。Voidadd(){staticinty=1;Y++;Printf("%d",y);}Main(){intm;For(m=0;m<4;m++)Add();}A)1234B)2222C)1111D)2345[单选题]33.有以下程序#include<string.h>Main(){charp[]="abcde\0fghjik\0";Printf("%d\n",strlen(p));}程序运行后的输出结果是______。A)12B)15C)6D)5[单选题]34.C语言允许函数类型缺省定义,此时函数值隐含的类型是()。A)floatB)intC)longD)double[单选题]35.以下能正确定义且赋初值的语句是______。A)intn1=n2=10;B)charc=32;C)floatf=f+1.1;D)doublex=12.3E2.5;[单选题]36.若x和y代表整型数,以下表达式中不能正确表示数学关系|x-y|<10的是______。A)abs(x-y)<10B)x-y>-10&&x-y<10C)!(x-y)<-10||!(y-x)>10D)(x-y)*(x-y)<100[单选题]37.若指针px为空指针,则。A)px指向不定B)px的值为零C)px的目标为零D)px的地址为零[单选题]38.下面的函数调用语句中func函数的实参个数是______。Func(f2(v1,v2),(v3,v4,v5),(v6,max(v7,v8)));A)3B)4C)5D)8[单选题]39.以下叙述中错误的是______。A)用户定义的函数中可以没有return语句B)用户定义的函数中可以有多个return语句,以便可以调用一次返回多个函数值C)用户定义的函数中若没有return语句,则应当定义函数为void类型D)函数的return语句中可以没有表达式[单选题]40.若有下列定义,则对a数组元素地址的正确引用是()。Inta[5],*p=a;A)&a[5]B)p+2C)a++D)&a[单选题]41.题号:98以下标识符中,不能作为合法的C用户定义标识符的是()。A)ForB)PrintfC)WORDD)sizeof[单选题]42.C源程序中不能表示的数制是______。A)二进制B)八进制C)十进制D)十六进制[单选题]43.已知intx=10,y=20,z=33;以下语句:if(x<y)z=x;else{x=y;y=z;}执行后x,y,z的值是()。(2分)A)1.x=10,y=20,z=30B)1.x=10,y=20,z=10C)1.x=20,y=30,z=10D)1.x=20,y=30,z=20[单选题]44.以下叙述不正确的是()。A)c程序中,语句之间必须用分号分隔。B)c程序中,多行语句可以写在一行上。C)c程序中,可以不必包含主函数。D)一个c程序,可以由多个函数组成[单选题]45.Inta[4]={5,3,8,9|;其中a[3]的值为()。A)5B)3C)8D)9[单选题]46.若有定义:floatx=1.5;inta=1,b=3,c=2;则正确的switch语句是。A)switch(x){case1.0:printf("*\n");case2.0:printf("**\n");}B)switch((int)x);{case1:printf("*\n");case2:printf("**\n");}C)switch(a+b){case1:printf("*\n");case2+1:printf("**\n");}D)switch(a+b){case1:printf("*\n");casec:printf("**\n");}[单选题]47.请选出以下程序的输出结果______。#include<stdio.h>Sub(int*s,inty){staticintt=3;Y=s[t];t--;}Main(){inta[]={1,2,3,4},i,x=0;For(i=0;i<4;i++){Sub(a,x);printf("%d",x);}Printf("\n");}A)1234B)4321C)0000D)4444[单选题]48.若有以下定义:Structlink{intdata;Structlink*next;}a,b,c,*p,*q;且变量a和b之间已有如图所示的链表结构:AbDatanextdatanext┌─────┐┌─────┐│|││|││5|→│9|││|││|│└─────┘└─────┘CDatanext┌─────┐│|││7|││|│└─────┘↑q指针p指向变量a,q指向变量c。则能够把c插入到a和b之间并形成新的链表的语句组是______。A)next=c;cnext=b;B)p.next=q;q.next=p.next;C)p->next=&c;q->next=p->next;D)(*p).next=q;(*q).next=&b;[单选题]49.C语言在C89标准中允许函数定义时缺省函数类型,此时隐含的函数的类型是()。(2分)A)1.longB)1.floatC)intD)1.double[单选题]50.若有以下定义和语句:Ints[4][5],(*ps)[5];Ps=s;则对s数组元素的正确引用形式是______。A)ps+1B)*(ps+3)C)ps[0][2]D)*(ps+1)+3[单选题]51.以下()函数的定义是错误的?A)voidf(inti){returni+1;}B)voidf(){}C)voidf(inti){}D)intf(){return0;}[单选题]52.设p1和p2是指向同一个字符串的指针变量,c为字符变量,则以下不能正确执行的赋值语句是()。(2分)A)1.c=*p1;B)1.p2=cC)1.p1=p2D)1.p1+=2[单选题]53.以下哪个选项不是三种基本结构的特点:A)只有一个入口B)只有一个出口C)结构内的每一部分必须都要被执行到D)结构内不存在死循环[单选题]54.运行下面的程序后,其输出结果是。main(){inta=6,b=2,c;c=f(a)/f(b);printf("%d\n",c);}intf(intx){inty;y=x++*x++;returny;}A)9B)6C)36D)18[单选题]55.以下不正确的定义语句是()。A)doublex[5]={2.0,4.0,6.0,8.0,10.0};B)inty[5]={0,1,3,5,7,9};C)charc1[]={'1','2','3','4','5'};D)charc2[]={'\x10','\xa','\x8'};[单选题]56.以下read函数的调用形式中,参数类型正确的是()。A)read(intfd,char*buf,intcount)B)read(int*buf,intfd,intcount)C)read(intfd,intcount,char*buf)D)read(intcount,char*buf,intfd)[单选题]57.当调用函数时,实参是一个数组名,则向函数传送的是______。A)数组的长度B)数组的首地址C)数组每一个元素的地址D)数组每个元素中的值[单选题]58.运算符有优先级、在C语言中关于运算符优先级的正确叙述是_____。A)逻辑运算符高于算术运算符,算术运算符高于关系运算符B)算术运算符高于关系运算符,关系运算符高于赋值运算符C)算术运算符高于逻辑运算符,逻辑运算符高于关系运算符D)关系运算符高于逻辑运算符,逻辑运算符高于算术运算符[单选题]59.Staticstruct{inta1;floata2;chara3;}a[10]={1,3.5,'A'};说明数组a是地址常量,它有10个结构体型的下标变量,采用静态存储方式,其中被初始化的下标变量是()。A)a[1]B)a[-1]C)a[0]D)a[10][单选题]60.已知下列说明语句:staticinta[]={2,4,6,8}staticint*p[]={a,a+1,a+2,a+3};int**q;q=p;则表达式**(q+2)的值是__。A)6B)2C)4D)8[单选题]61.以下关于运算符优先顺序的描述中正确的是()。A)关系运算符<算术运算符<赋值运算符<逻辑运算符B)逻辑运算符<关系运算符<算术运算符<赋值运算符C)赋值运算符<逻辑运算符<关系运算符<算术运算符D)算术运算符<关系运算符<赋值运算符<逻辑运算符[单选题]62.若定义pf为指向float类型变量f的指针,下列语句中__是正确的。A)floatf,*pf=f;B)floatf,*pf=&f;C)float*pf=&f,f;D)floatf,*pf=0.0;[单选题]63.下列有关C语言字符数组的叙述中,错误的是()A)不可以用赋值语句给字符数组名赋字符串B)可以用输入语句把字符串整体输入给字符数组C)字符数组中的内容不一定是字符串D)字符数组只能存放字符串[单选题]64.有以下程序main(){chara,b,c,d;a='\';b='\xbc';c='\0xab';d='\023';printf("%c%c%c%c\n",a,b,c,d);}编译时出现错误,以下叙述中正确的是A)程序中只有a='\';语句不正确B)b='\xbc';语句不正确C)d='\023';语句不正确D)a='\';和c='\0xab';语句都不正确[单选题]65.若指针p已正确定义,要使p指向两个连续的整型动态存储单元,不正确的语句是______。A)p=2*(int*)malloc(sizeof(int));B)p=(int*)malloc(2*sizeof(int))C)p=(int*)malloc(2*4)D)p=(int*)calloc(2,sizeof(int))[单选题]66.以下标识符中,不能作为合法的C用户定义标识符的是()。A)putcharB)_doubleC)_123D)INT[单选题]67.当说明一个结构体变量时系统分配给它的内存是()。A)各成员所需内存量的总和B)结构中第一个成员所需内存量C)成员中占内存量最大者所需的容量D)结构中最后一个成员所需内存量[单选题]68.根据下面的定义,structworker{charname[18];intage;};structworkerw[100]={"John",16,"Paul",17,"Mary",16};能输出字母?P?的语句是()。(2分)A)1.printf("%c",w[1].name);B)1.printf("%c",w[2].name[0]);C)1.printf("%c",w[2].name[1]);D)1.printf("%c",w[1].name[0]);[单选题]69.以下for语句构成的循环执行了______次。#include<stdio.h>#defineN2#defineMN+1#defineNUM(M+1)*M/2Main(){inti,n=0;For(i=1;i<=NUM;i++){N++;printf("%d",n);}Printf("\n");}A)5B)6C)8D)9[单选题]70.若有说明语句chara[]="Itismine";char*p="Itismine";则以下不正确的叙述是()。(2分)A)1.a+1表示的是字符t的地址B)1.p指向另外的字符串时,字符串的长度不受限制C)1.p变量中存放的地址值可以改变D)1.a中只能存放10个字符第2部分:判断题,共18题,请判断题目是否正确。[判断题]71.所谓"指针"就是内存中的一个地址。A)正确B)错误[判断题]72.假设有floatf=7;则f%2的值为1。A)正确B)错误[判断题]73.宏定义的作用域为从宏定义命令起到源程序结束。A)正确B)错误[判断题]74.continue语句只能出现在循环体语句中,不能用在其他的地方。A)正确B)错误[判断题]75.指针数组的每一个元素都是指针变量,且都指向相同的数据类型。A)正确B)错误[判断题]76.对全局指针变量与局部静态指针变量而言,在定义时若未被初始化,则编译系统自动初始化为空指针0A)正确B)错误[判断题]77.C语言中的运算符有单目的、双目的,还有三目的。A)正确B)错误[判断题]78.判断整型变量a能否同时被3和7整除的表达式为a%3==0&&a%7==0。A)正确B)错误[判断题]79.语句的结束标志是冒号?:?。A)正确B)错误[判断题]80.如果字符串常量所包含的字符个数等于数组长度,则在整体输出字符数组中的字符串时,会跟出一些不可预见的字符。A)正确B)错误[判断题]81.C语言中字符串常量是用双引号括起来的。A)正确B)错误[判断题]82.函数pow(x,y)的作用是计算y的x次方。A)正确B)错误[判断题]83.非静态全局变量的作用域可以扩展到构成该程序的其他源程序文件中。A)正确B)错误[判断题]84.编译后的函数其代码存储在连成一片的内存单元中,这些代码的第一个代码所在的内存地址,称为函数的入口地址,而函数名就代表了函数的入口地址。A)正确B)错误[判断题]85.在调用一个函数的过程中又出现直接或间接地调用该函数本身,这称为函数的递归调用。A)正确B)错误[判断题]86.对于定义inta[5];可以通过语句scanf("%d",a);输入全部元素的值。A)正确B)错误[判断题]87.C语言中输入与输出操作都是由自定义函数来实现的。A)正确B)错误[判断题]88.使用strcpy(字符数组,字符串)函数时,字符数组长度必须足够大。A)正确B)错误第3部分:问答题,共12题,请在空白处填写正确答案。[问答题]89.有以下程序#includemain(){intx;scanf("%d",&x);if(x>15)printf("%d",x-5);if(x>10)printf("%d",x);if(x>5)printf("%d\n",x+5);}若程序运行时从键盘输入12<<span="">回车>,则输出结果为。[问答题]90.if语句与()______语句一起可以构成循环结构。[问答题]91.下列程序段的运行结果是_____。Intb=20,*q;Q=&b;Printf("%d",*q);[问答题]92.下列程序段的运行结果是_____。Structstudent{longnum;Charname[20];Charsex;Floatscore;}a={1021103,"jiangping",'M',85.5};Main(){printf("%.2f\n",a.score);}[问答题]93.为表示关系x≥y≥z,应使用C语言表达式。[问答题]94.如定义语句为chara[]="windows"b[]="95";语句printf("%s",strcat(a.b));的输出结果为_________[问答题]95.程序的功能是根据以下近似公式求盘π的值:(π*π)\6=1+1\2*2+1\3*3+……+1\n*n请填空完成求π的功能。#include"math.h"Main(){Intn=300000;Doubles=0.0;LongiFor(i=l;i<=n;i++)S=s+____;Printf("pi=%f\n",__);}[问答题]96.程序设计风格主要影响程序的()。[问答题]97.在C语言中,用转义字符\'表示()。答题提示:双引号/单引号/反斜线/横向跳格/回车换行[问答题]98.以下程序的输出结果为voidmain(){intx=023;printf("%x\n",x);}[问答题]99.当运行以下程序时,输人数据6的程序运行结果是#include<stdio.h>Voidsub(char*A,charb){While(*(a++)!='\0');While(*(a-1)*(a--)=*(a-1);*(a--)=b;}Intmain(){chars[]=?97531",c;c=getchar();Sub(s,c);Puts(g);Return0;}[问答题]100.定义枚举类型时采用的关键字是()___。1.答案:D解析:2.答案:C解析:3.答案:D解析:4.答案:C解析:知识点/选择题/C4选择结构程序设计/IF语句的嵌套T5.答案:C解析:知识点/选择题/C2基本数据类型及表达式/常量T6.答案:C解析:7.答案:B解析:知识点/选择题/C8指针/【8.答案:B解析:知识点/选择题/C6函数与编译预处理/全局变量与局部变量T9.答案:A解析:知识点/选择题/C8指针/S指针处理一维数组T10.答案:D解析:11.答案:C解析:12.答案:B解析:知识点/选择题/C9结构体与共用体/指针与结构体数组T13.答案:B解析:14.答案:A解析:15.答案:B解析:知识点/选择题/C5循环结构程序设计/S循环中的breakT16.答案:B解析:17.答案:C解析:18.答案:A解析:19.答案:A解析:知识点/选择题/C8指针/指针变量与输入函数T20.答案:A解析:知识点/选择题/C8指针/指针与字符数组T21.答案:A解析:22.答案:A解析:23.答案:D解析:24.答案:C解析:25.答案:A解析:26.答案:D解析:27.答案:A解析:28.答案:A解析:29.答案:D解析:知识点/选择题/C7数组/一维数组应用T30.答案:A解析:31.答案:C解析:32.答案:D解析:知识点/选择题/C6函数与编译预处理/S静态存储T33.答案:D解析:知识点/选择题/C7数组/字符数组内存分配及串长度T34.答案:B解析:35.答案:B解析:知识点/选择题/C2基本数据类型及表达式/表达式及语句合法性判
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 电梯安装工程劳务合同
- 油气工程师劳动合同范本
- 汽车租赁公司车辆保险与风险管理
- 神经外科诊所医师聘用协议范本
- 项目合同管理指南
- 培养小班幼儿责任心的活动方案计划
- 2021抗美援朝71周年直播观后感个人心得体会
- 大学生学生实习报告范文九篇
- 公司个人实习自我鉴定2022年7篇
- 上海财经大学《地方公共政策学》2023-2024学年第一学期期末试卷
- 第六章《发展与合作》课件-2024-2025学年人教版初中地理七年级上册
- 医院感染监测规范
- 风险分级管控和隐患排查治理体系培训考试试题(附答案)
- 四川省住宅设计标准
- 中央空调设备采购及安装合同
- 2024年山东省青岛市中考英语试卷附答案
- 股权激励对赌协议范本
- 银行保安服务 投标方案(技术标)
- 食材配送服务方案投标方案(技术方案)
- 经营分析培训课件(课件)
- 人教版三年级数学上册第十单元《总复习》(大单元教学设计)
评论
0/150
提交评论