



下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
二级C语言配套习题集TOC\o"1-5"\h\z\o"CurrentDocument"第一部分:选择题(40分,20小题/套) 1概述 1语法基础 2控制结构 7数组 11函数 14指针 18结构体和共用体 22链表 24枚举、自定义类型和位运算 29文件 31\o"CurrentDocument"第二部分:改错题(每小题10分,2小题/套) 35\o"CurrentDocument"第1套 35\o"CurrentDocument"第2套 36\o"CurrentDocument"第3套 37\o"CurrentDocument"第4套 39\o"CurrentDocument"第5套 40\o"CurrentDocument"第6套 41\o"CurrentDocument"第7套 42\o"CurrentDocument"第8套 43\o"CurrentDocument"第9套 44\o"CurrentDocument"第10套 45\o"CurrentDocument"第11套 46\o"CurrentDocument"第三部分:填空题(每小题8分,3小题/套) 48\o"CurrentDocument"第1套 48\o"CurrentDocument"第2套 49\o"CurrentDocument"第3套 51\o"CurrentDocument"第4套 52\o"CurrentDocument"第5套 54\o"CurrentDocument"第6套 56第7套 58第8套 59\o"CurrentDocument"第9套 62\o"CurrentDocument"第10套 64\o"CurrentDocument"第11套 66第四部分:编程题(每小题8分,2小题/套) 68\o"CurrentDocument"第1套 68\o"CurrentDocument"第2套 69\o"CurrentDocument"第3套 70第4套 71第5套 73第6套 74\o"CurrentDocument"第7套 75第8套 77\o"CurrentDocument"第9套 78\o"CurrentDocument"第10套 79\o"CurrentDocument"第11套 81\o"CurrentDocument"第五部分:参考答案 82\o"CurrentDocument"ー、选择 82\o"CurrentDocument"二、改错 83二、填エ 85\o"CurrentDocument"四、编程 86第一部分:选择题(40分,20小题/套)価述1、下面关于c语言的叙述中,正确的是().A,每行只能写一条语句B.程序中必须包含有输入语句main函数必须位于文件的开头D,每条语句最后必须有一个分号2、下面关于C语言的叙述中,错误的是(A.若一条语句较长,也可分写在下一行上B.构成C语言源程序的基本单位是表达式C语言源程序中大、小写字母是有区别的ー个C语言源程序可由一个或多个函数组成3、关于C语言数据类型的叙述,正确的是().A,枚举类型不是基本类型B,数组不是构造类型C,变量必须先定义后使用D,不允许使用空类型4、C程序中main函数的位置()。A.必须在最开始B.必须在系统库函数后面C.可以在自定义函数后面D.必须在最后5、C语言的函数体由()括起来。A.()B.{}C.[]D./**/6、关于C语言的叙述中,不正确的是()»C程序可由一个或多个函数组成C程序必须包含ー个main()函数C程序的基本组成单位是函数D.注释说明只能位于一条语句的后面7、ー个程序的执行是从(A.本程序的第一个函数开始,到最后ー个函数结束B.本程序的main函数开始,到main函数结束C.本程序的main函数开始,到最后ー个函数结束D.本程序的第一个函数开始,到main函数结束8、结构化程序设计的三种基本结构是().A.函数结构、分支结构、判断结构B,函数结构、嵌套结构、平行结构C,顺序结构、分支结构、循环结构D,分支结构、循环结构、嵌套结构9、调试程序是指对程序进行(A.编辑B.编译C,査错和排错 D.连接C语言中,复合语句的构成是将一系列语句置于(),A.begin与end之间 B.ー对圆括号“()”之间C.一对花括号”ド之间D.ー对方框号“ロ"之间11、构成C语言源程序的基本单位是(A.语句B.过程 C.表达式 D.函数12、在C语言中,正确的用户标识符是()〇A.3fB._forC.struct D._f.513、C语言的基本数据类型包括()»A,整型、实型、字符型B,整型、实型、字符型、逻辑型C.整型、字符型、逻辑型D,整型、实型、逻辑型14、以下()是正确的常量。A.E-5B.1E5.1C.'al2' D.32766L15、以下()是正确的变量名。A.a.bee B.-pll C.int D.p_ll16、以下()是正确的字符常量。A."c" B.'\\" C.'W D."\32a"17、以下()是不正确的字符串常量。A.'abc'B."12'12"C."0" D."”C语言的整型数据在内存中的存储形式是()。A.原码 B.反码 C.补码 D.ASCH码19、以下()是正确的浮点数。A.e3 B..62 C.2e4.5 D.12320、下列不属于C语言关键字的是()〇A.continueB.integerC.static D.signed21、C语言的字符型数据在内存中的存储形式是()。A.原码B.补码C.反码D.ASCII22、在C语言中,变量所分配的内存空间大小是()。A,由变量的类型决定B.由用户自己决定C,任意的D.均为两个字节23、若有定义:inta=2;则正确的赋值表达式是()。a-=(a*3)double(-a)a*3a*4=3语句x=(a=3,b=++a);运行后,x、a、b的值依次为()。A.3,3,4B.4,4,3C.4,4,4D.3,4,3语句a=(3/4)+3%2;运行后,a的值为(A.OB.1 C.2 D.326、以下四项中,符合C语言语法的语句是()〇inta+b=c;inta=12:b=12:c=12;inta=12,b=12,c=12;inta,b=12,floatc=21;2フ、若有定义:intx,a;则语句x=(a=3,a+l);运行后,x、a的值依次为()〇A.3,3B.4,4C.43D,3,428、若变量已正确定义并赋值,符合C语言语法的表达式是()〇A.a=8+b+c,a++B.a=aA3int(12.3%4)a=a+l=c+b29、若有定义:inta,b;doublex;则以下不符合C语言语法的表达式是()。A.x%(-3)a+=-2C.a=b=2D.x=a+b30、若有定义:intx=2,y=3;floati;,则以下符合C语言语法的表达式是()〇A.x=x*3=2x=(y==l)i=float(x)D.i%(-3)31、若有定义:intx;则语句x=(2*3)+6%55运行后,x的值是()。A.8 B.7 C.6D.6.532、下面关于C语言变量的叙述中,错误的是()〇A.可以用const关键字定义变量B.在C程序中,SUM和sum是不同的变量C.变量名必须由字母或下划线开头D.变量的类型确定了变量的取值范围33、若有定义:intx=5,y=6;则表达式x=(y==6)的值为()〇A.5B.1C.6D.034、下面叙述正确的是().2/3与2.0/3.0等价(int)2.0/3与2/3等价++5与6等价'A,与“A”等价35、下面叙述中,错误的是()。A.C语言基本的算术运算符不包含模运算符"%"B,算术运算符的优先级高于关系运算符C,自加和自减运算符的结合方向是“自右至左”D.C语言规定在表达式求值时,按其中运算符的优先级先高后低的次序进行36、下面叙述正确的是()。A,强制类型转换运算的优先级高于算术运算B.若a和b是整型变量,(a+b)++是合法的是不合法的"A“+“B”是合法的37、若有定义:inti=lj=5;贝リ表达式(++j)*(レ)的值为().A.1B.0C.6D.738、设整型变量a为5,使b不为2的表达式是().b=(++a)/3b=6-(—a)b=a%2b=a/239、若有定义:inta=l,b=2,c=3;则语句++all++b&&++c;运行后b的值为(TOC\o"1-5"\h\zA.1 B.0 C,2 D.340、若有定义:intij;则表达式(i=2J=5,i++,i+j++)的值是()。A.7 B.8 C.9 D.1041、若有定义:inta,b;则表达式(a=2,b=5,a*2,b++,a+b)的值是()〇A.7 B. 8 C. 9 D. 1042、若有定义:inti=2J=5;则表达式(i+lj+l,(++i)+(j・り)的值为()。A.8 B. 6 C. 7 D. 543、若已定义:inti=3,k;则语句k=(l-)+(i-);运行后k的值为()〇A.4 B. 5 C. 6 D. 7C语言的运算符按运算对象的个数可以分为()〇A.单目运算符一种 B.单目和双目运算符C.单目、双目和三目运算符 D.单目、双目、三目和四目运算符45、若已定义:floatm;拟从键盘输入135.78这ー数据给变量m,则应选用的语句是(scanf(,,%5.2f,,,&m);scanf(H%3.2r',&m);scanf(M%6.2f,,,&m);scanf(M%6fH,&m);46、已知doub加a;使用scanf()函数输入ー个数值给变量a,正确的函数调用是()〇scanf(H%ldn,&a);scanf(n%dH,&a);scanf(M%7.2fM,&a);scanf(M%lfn,&a);47、已知chara;使用scan*)函数输入一个字符给变量a,不正确的函数调用是()。scanf(n%d'\&a);scanf(H%ir\&a);scanf(M%cH,&a);scanf(M%uM,&a);48、putchar()函数的功能是向终端输出(A,多个字符ー个字符ー个实型变量值一个整型变量表达式49、以下程序段运行后的输出结果是()。intk=ll;printf(Hk=%d,k=%o,k=%x\nH,k,k,k);k=ll,k=13,k=ck=H,k=12,k=13k=ll,k=ll,k=bk=ll,k=13,k=b50、若有定义:intx=1234,y=123,z=12;则语句priiUf(ハ%4d+%3d+%2d”,x,y,z);运行后的输出结果为()。A.123412312123412341234123412312312312121234+1234+12341234+123+1251、已有如下定义和输入语句,inta;charcl,c2;scanf(M%d%c%cM,&a,&cl,&c2);若要求a、cl、c2的值分别为10、A和B,正确的数据输入是()。10AB10AB10AB10AB52、以下程序段的运行结果是(inta=0,b=0,c=0;if(a&&++b)C++;printfC'%d,%d\nH,b,c);A.0,0B.1,2C.2,2D.1,053、以下程序的运行结果是(voidmain()(inta=65;charc二'A';printf("%x,%d",a,c);)A.65,a B.41,a C.65,65D.41,65若已定义:inta=5;floatb=63.72;以下语句中能输出正确值的是()〇printf("%d%d",a,b);printf("%d%.2F',a,b);printf("%.2f%.2f",a,b);printf("%.2f%d",a,b);55、运行以下程序段时编译出错,其原因是()〇charcl='8',c2='2008';printf("%c,%d\n",cl,c2);A.c2是字符变量,只能赋以字符常量,不能赋以字符串常量B.字符串要用“2008”表示,而,2008,不是字符串表示C.,2008,只能赋值给字符数组D,字符变量不能用%d格式输出若已定义:inta=3,b=15,c;则语句c=a>b;运行后c的值为()〇A.1B.0 C..t.D.X57、在C语言中,判定逻辑值为“真”的最正确的叙述是()〇A.1B.非〇的数C,大于0的数 D,非〇的整数58、若已定义:inta二.36,b二.30,c;则语句c=avb;运行后c的值为()。1 B・.t.C.O D..f.59、能正确表示数学关系式8002y2500的C语言表达式为()。A.(y<=800)&&(y>=500)(y<=800)AND(y>=500)C.800>=y>=500D.(y<=800)&(y>=500)60、若有定义:intx=3,y=4;则表达式!xlly的值为()〇A.1B.OC.3 D.461、若有定义:inti=7j=8;则表达式i>=jlli<j的值为()。1B.变量i的值C.OD,变量j的值62、若希望当a的值为奇数吐表达式的值为“真",a的值为偶数时,表达式的值为“假”。则不能满足要求的表达式是()。A.a%2==lB.!(a%2==0)C.!(a%2) D.a%263、若有定义:intx=3,y=4,z=5;则值为〇的表达式是()〇A.'x'&&'y'x<=yxlly+z&&y-zD.!((x<y)&&!zlll)64、 若有定义:inta=5,b=2,c=l;则表达式a・b<cllb==c的值是(A.OB.1 C.2 D.-165、C语言中,能正确表示条件10vxv20的逻辑表达式是()。A.10<x<20B.x>10IIx<20C.x>10&&<20D.(x>10)&&(x<20)66、以下运算符中优先级最低的是()〇A.«B.&C.»D.l67、已知doublea=5.2;则正确的赋值表达式是()〇A.a+=a-=(a=4)*(a=3)B.a=a*3=2C.a%3D.a=double(-3)68、已知charadR;则正确的赋值表达式是()〇A.a=(a++)%4B.a+2=3C.a+=256- D.a=へ078'69、已知inta=R*;则正确的表达式是()〇A.a%10B.a=int(3e2)C.2*a=a++D.a=a+a=a+3设有语句floatx=3.0,y=3.0;使x值为6.0的表达式是()〇A.x*=y-4B.x*=yC.x-=y+4D.x+=y若有定义:floatx=3.5;intz=8;则表达式x+z%3/4的值为()〇A.3.75 B.3.5 C.3 D.472、设有语句intx=3,y=3,a=l,b=2;表达式(x二a>b)&&(y=b>a)的值是()。A.8 B.1 C.5 D.0若有定义:inta=2,b=3;floatx=3.5,y=2.5;则表达式(noaD(a+b)/2+(iiU)x%(inりy的值是()。A.3.5 B.3.0 C.2.5 D.2.0若有定义:intb=7;floata=2.5,c=4.7;则表达式a+(b/2*(int)(a+c)/2)%4的值是(A.2.5 B.3.5 C.4.5 D.5.5若有定义:inta=6,b=2;charcl='a',c2='b';则表达式a+b%5+c2・cl的值是()。A.7 B.8 C.9 D.表达式错误76、在下列运算符中,优先级最髙的运算符是()。A.<= B.!= C.! D.II77、设有定义:charc;floatf;inti;unsignedu;doubled;下列各表达式的类型分别是()〇①u+9 ②d!=f&&(i+2) ③8.2巧+cA.①unsigned,②int,③doubleB.①double,②double,③doubleC.①int,②double,③charD.①unsigned,②double,③int校制結相78、以下程序段运行时,若从键盘输入10,则输出结果是()。inta;scanグ%d”,&a);if(a++>10)printf(M%d\nM,a);elseprintグ%d\n”,++a);A.2 B.11 C.3 D.1279、以下程序的运行结果是()«voidmain(){intx,y=l,z;z=-1;if(z==0)z="z;elsex=y>0?3:5;printグ%d\n”,x);}A.4 B.3C.1 D.580、对于整型变量x,下述if语句()与赋值语句:x=x%2==0?l:0;不等价。if(x%2!=0)x=0;elsex=l;if(x%2)x=l;elsex=0;if(x%2==0)x=l;elsex=0;if(x%2==l)x=0;elsex=l;81、以下程序段运行的结果是()ointa,b9c9x;a=b=c=0;x=15;if(!a)x-;elseif(b);if(c)x=3;elsex+=4;printf(H%d\n,\x);A.15 B.17C.18 D.1982、若有定义:inta=l,b=2,c=3;则执行以下程序段后a,b,c的值分别为(if(a<b){c=a;a=b;b=c;}A.a=l,b=2,c=3B.a=2,b=3,c=lC.a=2,b=3,c=3D.a=2,b=l,c=l83、以下程序段运行后变量a的值为()。intx=6,y=5;inta;a=(-x==y++)?x:y+l;A.O B.1 C.6 D.584、以下程序的运行结果是()。voidmain()(intn='e*;switch(n-)(default:printf(MerrorH);case'a':case*b*:printf(MgoodM);break;caseで:printf("passM);case*d':printf(HwarnM);))A.errorB.good C.errorgood D.warn85、以下程序的运行结果是()。voidmain()(intn='c*;switch(n++)(default:printf(Herrorn);break;case'a':case%1:printf(Hgood**);break;caseで:printf("pass");case*d*:printf(MwarnM);}}A.pass B.warn C.passwarn D.error86、以下程序的运行结果是()«voidmain(){intn=5;if(n++>=6)printf(,,%d\n,\n);elseprintf(,,%d\n,\++n);}A.4 B.5 C.6 D.787、下面关于switch语句的叙述中,错误的是()〇case后面的表达式可以是关系表达式switch语句是多分支选择语句C.每一个case后面的值必须互不相同,否则会出现互相矛盾的现象D,在执行一个case分支后,可用ー个break语句使流程跳出switch语句88、若有定义:inta=l,b=2,c=3;则以下程序段运行后c的值为()〇if(a>b)c=a*b;elsec=a-b;A.2 B.O C.1 D.-l89、若有定义:intx;以下不会产生死循环的是().A.for(;(x=getchar())!=*\n';); B.while(l){x++;}for(i=10;;i++); D.for(;;x+=1);90、在循环语句的循环体中,break语句的作用是().A.暂停程序的运行B.结束本次循环C.继续执行break语句之后的循环体各语句D.提前结束循环,接着执行该循环后续的语句91、以下程序段运行后,循环体中的“count+=2;”语句运行的次数为().intij,count=0;for(i=l;i<=4;i++){for(j=l;j<=i;j++){count+=2;printf(M%dH,count);})A.8次 B.10次 C.16次 D.20次92、在c语言中while循环和do-while循环的主要区别是()〇do-while循环体内可以使用break语句,while循环体内不能使用break语句do-while的循环体至少无条件执行一次,while的循环体不是do-while循环体内可以使用continue语句,while循环体内不能使用continue语句while的循环体至少无条件执行ー次,do-while的循环体不是93、以下程序段运行后,循环体运行的次数为()。inti=10,x;for(;i<10;i++)x=x+i;A.10 B.O C.1 D.无限94、以下程序段运行后变量n的值为()。inti=l,n=l;for(;i<3;i++){continue;n=n+i;}A.4 B.3 C.2 D.195、有以下程序:voidmain(){inti;for(i=0;i<3;i++)switch(i){case1:printf(H%dM,i);case2:printf(M%dM,i);default:printf(M%dM,i);}}执行后输出结果是()oA.011122B.01222 C.012020D.12096、以下程序的运行结果是()。voidmain()(intsum=0,item=0;while(item<5)(item++;sum+=item;if(sum>=6)break;)printf(M%d\nH,sum);}A.10 B.15 C.6 D.797、以下程序的运行结果是()〇voidmain()(intsum=0,item=0;while(item<5)(item++;if(item==2)
continue;sum+=item;}printf(H%d\nM,sum);}A.10 B.13 C.15 D.198、以下程序段执行后变量sum的值为()。intiJ=l,sum=0;for(i=l;i<=3;i++){sum+=j;j++;}A.5 B.3 C.6 D.499、以下程序的运行结果是(#include<stdio.h>main(){inty=10;do{y--;}while(—y);printf(M%d\nH,y-);}1 B.2 C.-l D.O教做100、C语言中数组元素下标的数据类型是(C.任何类型的表达式 D,字符型常量A.实型常量B.整型常量或整型表达式C.任何类型的表达式 D,字符型常量A.inta[10];intn=10,a[n];A.inta[10];intN=10;inta[N]; D.intn;scanf("%d'',&n);inta[n];102、若已定义:inta[13];则不能正确引用a数组元素的是(A.a[0] B.a[10] C.a[10+3] D.a[13-5]103、若有定义:inta[3]={0,l,2};则a[l]的值为()。A.O B.1 C.2 D.3104、若有定义:inta[5]={l,234$};则语句a[l]=a[3]+a[2+2卜a[3・l];运行后a[l]的值为()。A.6 B.5 C.1 D.2105、以下合法的数组定义是()。A.intaロゴA.intaロゴstring”;charaロ={0,1,2,3,4,5};106、若有如下程序段:chars[10];sゴ'abed”;B.inta[5]={0,l,2,3,4,5};chars={"string"};printf(n%s\nH,s); 则()。A.执行时输出:abed B.执行时输出:aC.执行时输出:ab D.编译不通过107、下面程序段的运行结果是()〇inti=0,a[]={7,5,73,83};do{a[i]+=2;}while(a[++i]>5);for(i=0;i<6;i++)printf(n%dH,a[i]);A.9795105B.9593103C.957383D.757383108、下面程序段的运行结果是()。inti=0,a[]={l,23A5};do{a[i]+=10;}while(a[++i]>2);for(i=0;i<5;i++)printf(H%dM,a[i]);A.112345B.12345C.1112131415D.1112345109、下面关于数组的叙述中,正确的是()。A,数组必须先定义,然后使用B,定义数组时,可不加类型说明符C,定义数组后,可通过赋值运算符”="对该数组名直接赋值D,在数据类型中,数组属基本类型110、以下程序段的运行结果是()〇inti=0,a[]={6,5,3,7};do{a[i]++;}while(a[i]<4);for(i=0;i<4;i++)printf(M%dH,a[i]);A.6537 B.7563 C.7537 D.5673111、有如下程序段:inttロ[3]={1,2,3,4,5,6,7,8,9,10,11,12};printf("%d\n",t[2][l]);则执行该程序段后输出结果是(A.8 B.7 C.4 D.2112、以下程序段运行后s的值是(inta[3][3]={l,2,3,l,2,3,l,2,3};intij,s=l;for(i=0;i<3;i++)for(j=i;j<3;j++)s*=a[i][j];A.18 B.108 C.2 D.12113、以下不能对二维数组arr进行正确初始化的语句是()。A.intarr[2][3]={0}; B.intarr[][3]={l,2,3,4,5};arr[2][3]={{l,2},{3,4},{5,6}};D.intarr[2][3]={{l},{3,4,5});114、若有定义:inta[3][4]={{l,2},{0},{1,2J}};则 的值为().TOC\o"1-5"\h\zA.O B.{1,2} C.1 D.3115、若有定义:inta[3][3];则表达式&a⑵口]-a的值为().A.7 B.8 C.6 D.9116、若有定义:inti=O,x=O;int2[3][3]={1,2ふ4,5,6,7,8,9};则以下程序段运行后x的值为().for(;i<3;i++)x+=a[i][2-i];A.O B.12 C.15 D.18117、若有定义inta⑵[3]很リ对数组元素的非法引用是()〇A.a[0][l/2] B.a[l][l] C.a[4-4][0] D.a[0][3J118、以下数组定义中,正确的是()。A.inta⑵ロ={1,2,3,4⑸; B.inta[][2]={{0},{}};C.inta[2][2]={{l,2},{3}}; D.inta[][]={l,2,3,4);119、若有定义^^1网={1,2,3,4,5,6,7,8,9}很1J表达式5€04)/能€04[0])的值为().A.3 B.4 C.5 D.9120、以下程序段运行后s的值是().inta[3][3]={l,2,3,4,5,l,2,3,4);intij,s=l;for(i=0;i<3;i++)for(j=i+lu<3;j++)s*=a[i][j];A.6 B.120 C.24 D.480121、设已定义:inta[][4]={0,0};则下列描述错误的是(),A.数组a的每个元素都可得到初值0B.二维数组a的第一维大小为1C.数组a的行数为1D.只有元素a[〇][〇]和a[〇][1]可得到初值〇,其余元素均得不到初值0122、设已定义:charstrl[10],str2[10]="Fujian";则能将字符串"Fujian”赋给数组strl的正确语句是()。A.strl="Fujian";B.strcpy(strl,str2);C.strcpy(str2,strl);D.strl=str2;123、有如下定义:charstr[3][2]={'a','b','c','\O",'e',T];则语句:printグ%s”,str[〇]);的输出结果是()«A.ab B.abcef C.abc\O D.abc124、设有如下数组定义:charstrl8J={"Fidiaパ};则分配给数组str的存储空间是()个字节。TOC\o"1-5"\h\zA.6 B.7 C.8 D.9125、若有定义:charaロゴ,abcdef”;charbロゴxyz”;则以下程序段运行后屏幕输出为()。strcpy(a,b);printグ%c”,a⑵);A.c B.z C.\0 D.d126、以下程序段运行后屏幕输出为()〇chara[]=Habc\OmisH;printf(M%dn,strleii(a));A.5 B.8 C.3 D.412フ、若有定义:inta=2;则语句austrcmpC'missVmiss");运行后a的值为()。A.1 B.O C.-l D.2128、以下对C语言字符数组描述中,正确的是()〇A.可以用!ength函数计算字符数组中字符串的长度B.可以在赋值语句中通过赋值运算符“二“对字符数组整体赋值C.存放在字符数组中的字符串,以へ0,作为该字符串结束标志D,字符数组只能存放字符串,不能存放字符129、以下程序段运行后屏幕输出为()〇charstr[80];strcpy(str,Hhellon);printf(M%du,strlen(str));A.5 B.6 C.7 D.80130、若有定义:charstrl[6]=nabcdmH,*ps,*str2=Mabcder,;()是正确的。A.strcpy(strl,str2); B.表达式strcmp(strl,str2)的值大于〇C.strl=str2; D,表达式strlen(strl)的值为6131、已有定义char§丘1[15]={”1I市丫0な旳”},§在2[15];则以下语句中正确的是(A.str2=strl;B.str2=HcollegeH;C.scanf(H%sH,&str2);D.printf(M%sM,strl);132、设已定义:charsl[20]=HYouareH,s2[9]=nwelcoine!M;若要形成字符串”Youarewelcome!”,正确语句是(A.strcat(sl,s2);B.strcpy(sl,s2); C.sl+s2; D.si&s2;あ救133、在C语言中,数组名作为函数调用的实参时,传递给形参的是()«A,数组元素的个数B.数组的第一个元素值C.数组中全部元素的值D.数组的首地址134、以下程序的运行结果是()«intfun(intarray[4][4]){intj;fora=0;j<4;j++)printf("%2d",array[2][j]);printf("\n");}main(){inta[4][4]={0,l,2,0,l,0,0,4,2,0,0,5,0,4,5,0);fun(a);}A.2005 B.1004 C.0120 D.0450135、C语言允许函数值类型缺省定义,此时该函数值隐含的类型是()〇A.float型 B.long型 C.int型 D.double型136、以下程序运行后屏幕输出为()。#include<stdio.h>intf(intx,inty)(return(x+y);
main(){inta=2,b=3,c;c=f(a,b);printf(M%d+%d=%d\n,,,a,b,c);}A.0 B.2+3=5C.2+3=0137、以下程序运行后屏幕输出为(),#include<stdio.h>inta=2,b=3;intmax(inta,intb)(intc;c=a>b?a:b;return(c);)main()(inta=4;printf(n%dn,max(a,b));)A.2,3 B.2 C.3 D.4138、以下程序的运行结果是()〇fun(inti){inta=2;a=i++;printf(H%dM,a);}main(){inta=5,c=3;fun(c);printf(H%dM,a);}A.45 B.35 C.44139、若有如下函数定义:intfun()(staticintk=0;return++k;}以下程序段运行后屏幕输出为()。inti;D.3+2=5D.33for(i=l;i<=5;i++)fun();printf(M%dMD.3+2=5D.33A.O B.1 C.5 D.6140、下面程序的输出结果是()。#include<stdio.h>intglobal=100;fun(){intglobal=5;return++global;}voidmain()(printf("%d\n",fun());}A.100 B.101 C.5 D.6141、下列关于C语言函数的描述中,正确的是()〇A.函数的定义可以嵌套,但函数的调用不可以嵌套B.函数的定义不可以嵌套,但函数的调用可以嵌套C.函数的定义和函数的调用都可以嵌套D.函数的定义和函数的调用都不可以嵌套142、以下程序的运行结果是()。fun(intx,inty){intz;z=(x<y)?(x+y):(x-y);return(z);}main(){inta=10,b=6;printf(H%d\n,\fun(a,b));}A.4 B.16 C.10 D.6143、以下程序运行结果是()。voidmain(){intmin(floatx,floaty);floata,b;intc;a=-6.3;b=-7.9;c=min(a9b);printf(H%d\n*\c);}intmin(floatx,floaty){floatz;if(x>y)z=y;elsez=x;return(z);}A.-7.9 B.-7 C.-6.3 D.-6144、以下程序的运行结果是()〇#defineM(a,b)a*bmain(){intx=3,y=2,sl,s2;sl=M(x+y,x-y);s2=M(x-y,x+y);printf(H%d,%d\n,*,sl,s2);}A.-1,7 B.5,5 C.7,-1 D.5,-5145、以下叙述中,正确的是()«A.rdefinePRICE=30”定义了与30等价的符号常量PRICEB.预编译处理命令行都必须以开头C,程序中使用带参的宏时,参数类型要与宏定义时一致D.宏名只能包含大写字母和数字字符146、以下叙述中,正确的是()。A.宏展开不占用运行时间,只占用编译时间B.预编译处理命令行必须以分号结束C.一个源程序只能有一个预编译处理命令行D,使用带参数的宏定义时,应该说明每个参数的数据类型147、以下的叙述中不正确的是().A,宏展开不占用运行时间,只占用编译时间B.宏名无类型C,宏名必须用大写字母表示D.预处理命令行都必须以#号开始148、若有定义:#definePI3,则表达式PI*2*2的值为()。A.12 B.4 C.3 D.不确定149、以下程序运行后,屏幕输出为(#defineMIN(a,b)((a)<(b)?(a):(b))main(){intx=2,y=3,z;z=2*MIN(x,y);prlntf(n%dM,z);}A.2 B.3 C.4 D.6150、下列#include命令中,正确的是()〇A.#include[string.h] B.#include{string.h}C.#include(string.h) D.#include<string.h>151、下面程序的输出结果是(#include<stdio.h>#defineONE1#defineTWOONE+1#defineTHREETWO+1voidmain()(printf(M%d\nH,THREE-ONE);}A.产生错误B.1 C.2 D.3152、以下叙述中正确的是()。A./r/
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年度福建省劳动合同制员工社会保险及福利待遇合同
- 2025年度电商平台会员购物返利协议
- 2025年度海鲜电商平台运营合作协议
- 二零二五年度农村土地流转及农业项目投资合同
- 二零二五年度社会保险经办机构与金融机构合作协议
- 桩基合同-2025年度桩基施工项目管理与咨询服务协议
- 二零二五年度煤炭供应链金融服务协议
- 二零二五年度住房公积金购房合同原件遗失风险预防及应急处理合同
- 二零二五年度法人变更合同审查与合同续签服务协议
- 2025年度租赁房屋安全责任定金协议
- 幼儿园课件《神奇的帽子》
- (小升初真题)六年级数学简便计算(易错题、难题)一【含答案】
- 三菱变频器d700使用手册应用篇
- 学校安全隐患网格化管理平台系统操作手册
- 表面粗糙度等级对照表模板.doc
- GMP讲课教案简述
- 新冀人版小学科学三年级下册全册教案(2022年春修订)
- 东莞虎门架空线路拆除施工方案
- 尿液结晶教学课件
- 绘本《你很特别》
- 茶叶揉捻机总体设计方案的拟定
评论
0/150
提交评论