C语言程序设计+复习题库

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

一、填空1.break语句通常用于switch//循环中。2.C语言对数组下标的引用一般从0开始。3.C语言中,一个函数一般由两个部分组成,它们是函数首部和函数体。4.C标准库函数中,字符串的处理函数包含在string.h头文件中,数学函数包含在math.h头文件中。5.C程序的运行需要经过编译和链接两步进行。6.C程序中用/**/括起来的内容是程序的注释语句。7.C语言函数是由函数首部和函数体两部分组成。其中,函数首部包括函数类型、函数名和函数参数。8.C语言提供的三种逻辑运算符是&,//,!。9.C语言源程序经过编译后,生成文件的后缀名是.c。10.C语言源程序经过连接后,生成文件的后缀名是.exe。11.C语言中,关系表达式和逻辑表达式的值是1//0。12.C语言中的标识符只能由三种字符组成,他们是字母,数字,下划线。13.C语言中的每条基本语句以;作为结束符,每条复合语句以}作为结束符。14.C语言中函数返回值的类型是由函数类型决定的。15.C源程序的基本单位是函数。16.inta=2,b=3;表达式ab?a++:++b的值为4。17.intx=1,y=1,z=1;x+=y+=z;则表达式xy?y:x的值为3。18.当a=3,b=2,c=1时,表达式f=abc的值是0。19.定义一个指针p,它指向一个有6个整型元素的一维数组,定义语句为int*p=a[6];。20.定义一个指针数组p,它有4个元素,每个指针指向一个整型数据,定义语句为int*p[4];。21.赋值语句是由=加上一个分号构成。22.构成数组的各个元素必须具有相同的类型。23.关系表达式x+y5的相反表达式为x+y!5。24.函数strlen(1234\0xy)的值为:9。25.函数的形参在未被调用前不分配空间,函数形参的数据类型要和实参相同。26.函数体用{开始,用}结束。27.结构化设计中的三种基本结构是顺序,选择,循环。28.如果一个函数无返回值,定义它时函数类型应是void。29.若x、y、z均为int型变量,则描述“x或y中有一个小于z”的表达式是(x||y)z若用数组名作为函数调用时的实参,则实际上传递给形参的是数组的首地址30.。31.若有定义:doublex[3][5];则数组中列下标的上限为4。32.若有说明:inta[][3]={{1,2,3},{4,5},{6,7}};则数组a的第一维的大小为3。33.设inta=12,则表达式a/=a+a运算后,a的值是0。34.设y为int型变量,请写出描述“y是奇数”的表达式y%2!=0;。35.设有数组a[10],数组元素a[3]的地址可以写成。36.数组由数组名和下标构成,其数组元素的数据类型是。37.算术表达式a=b+3中,a、b称为变量,3称为常量,=、+称为运算符。38.一个C程序有且仅有一个main函数。39.已知函数定义为:intstat(inta,float*p),则此函数的两个参数类型分别是整形、浮点型。40.有如下函数头:intmax(inti,intj),则此函数有2个参数。41.预处理命令以#开头。42.在C语言的表达式中,x=x+5用复合运算符可以写成x+=5。43.在C语言中,表示静态存储类别的关键字static。44.在C语言中,二维数组元素的内存中的存放顺序是行顺序存放。45.在C语言中,以‘\0’作为字符串结束标志。46.在C语言中的实型变量分为两种类型,它们是整形和浮点型。47.在scanf函数中,用符号&表示变量的地址。48.在传值调用中,实际是把实参的地址传给形参。49.在函数中使用return语句返回值。50.指针是存放地址的变量。二、选择1、C语言源程序的基本单位是AA.函数B.标识符C.表达式D.语句2、在每个C程序中都必须包含有这样一个函数,该函数的函数名为AA.mainB.MAINC.nameD.function3、C语言规定,在一个源程序中,main函数的位置CA.必须在最开始B.必须在系统调用的库函数的后面C.可以任意D.必须在最后4、在以下关于C语言的注释的叙述中,不正确的是CA.注释可用/*、*/形式表示,也可用//形式表示B.编译器在编译一个程序时,将跳过注释,不对其进行处理C.编译器在编译一个程序时,可发现注释中的单词拼写错误D.程序中注释的多少不会影响所生成的可执行文件的长度5、以下叙述不正确的是CA.在C程序中,严格区分大小写字母B.一个C源程序有且仅有一个main函数C.在C程序中,注释只能位于一条语句的后面D.一个C程序总是从main函数开始执行6、C语言中,表示一条语句结束的标号是BA.#B.;C.//D.}7、在C语言中,以下叙述不正确的是AA)在C程序中,无论是整数还是实数,都能被准确无误的表示B)在C程序中,变量名代表存储器中的一个位置C)静态变量的生存期与整个程序的生存期相同D)C语言中变量必须先定义后引用8、C语言程序编译过程中产生的文件有BA.索引文件和文本文件两种B.目标文件和可执行文件C.二进制文件一种D.ASCII码文件和二进制文件两种9、C语言中的变量名只能由字母,数字和下划线三种字符组成,且第一个字符CA)必须为字母B)必须为下划线C)必须为字母或下划线D)可以是字母,数字或下划线中的任意一种10、C语言中非空的基本数据类型包括BA)整型,实型,逻辑型B)整型,实型,字符型C)整型,字符型,逻辑型D)整型,实型,逻辑型,字符型11、下列哪一个表达式的值是整数类型AA.15/2B.15/2+2.0C.25/5.0D.0.5*1012、设变量a是整形,f是实型,i是双精度型,则表达式10+′a′+i*f值的数据类型CA.intB.floatC.doubleD.不确定13、设有说明:charw;intx;floaty;doublez;则表达式:w*x+z-y值的数据类型DA)floatB)charC)intD)double14、在C语言中,char型数据在内存中的存储形式是DA.补码B.反码C.源码D.ASCII码15、下列字符列中,可以作为“字符串常量”的是BA.ABCB.″xyz″C.′uvw′D.′a′16、以下运算符中,优先级最高的运算符是DA.=B.!=C.*(乘号)D.()17、设有定义intk=0;则以下四个表达式中与其它三个的值不同的是CDA、k++B、k+=1C、++kD、k+118、设有语句scanf(“%d,%d”,&m,&n);要使m、n的值依次为2,3,正确的输入是BA.2⊔3↙B.2,3↙C.2;3D.2↙3↙19、已知字母A的ASCII码为十进制数65,且c2为字符型,则执行语句c2='A'+'6'-'3';后c2中的值为AA)DB)68C)不确定的值D)C20、设a=6,b=4,则表达式b*=a+3的值为DA)3B)18C)27D)3621、若有定义:inta=8,b=5,c;执行语句c=a/b+0.4;后c的值为B(A)1.4(B)1(C)2.0(D)222、若已定义x和y是整型变量,x=2;,则表达式y=2.75+x/2的值是CA)5.5B)5C)3D)4.023、设有以下语句:intx=10;x+=3+x%(3),则x的值是AA)14B)15C)11D)1224、在C语言中逻辑值“真”是用B表示的。A.预定义为真值的宏B.非零值C.正数D.非零整数25.C语言对于嵌套if语句规定else总是与C匹配。A)与最外层的ifB.)与之前最近的ifC)与之前最近的不带else的ifD)与最近的{}之前的if26、为了避免嵌套的if-else语句的二义性,C语言规定else总是与C组成配对关系.A)缩排位置相同的ifB)在其之前未配对的ifC)在其之前尚未配对的最近的ifD)同一行上的if27、设x和y均为逻辑型变量,则x&&y为真的条件是AA.它们均为真B.其中一个为真C.它们均为假D.其中一个为假28、能正确表示逻辑关系:a≥10或a≤0的C语言表达式是DA.a=10ora=0B.a=0|a=10C.a=10&&a=0D.a=10||a=029、判断char型变量c1是否为小写字母的正确表达式为DA.’a’<=c1<=’z’B.(c1>=a)&&(c1<=z)C.(‘a’>=c1)(‘z’<=c1)D.(c1>=’a’)&&(c1<=’z’)30、设ch是char型变量,值为'A',则表达式ch=(ch='A'&&ch='Z')?ch+32:ch的值是BA)ZB)aC)zD)A31、表示关系X=Y=Z的C语言表达式为AA.(X=Y)&&(Y=Z)B.(X=Y)AND(Y=Z)C.(X=Y=Z)D.(X=Y)&(Y=Z)32、如果a=4,b=3,c=2,d=1,则条件表达式a<b?a:c<d?c:d的值是AA)1B)2C)3D)433、语句printf(%d\n,12&&12);的输出结果是BA.12B.1C.24D.034、若有条件表达式(exp)?a++:b--,则以下表达式中能完全等价于表达式(exp)的是BA.(exp==0)B.(exp!=0)C.(exp==1)D.(exp!=1)35、若要求在if后一对圆括号中表示a不等于0的关系,则能正确表示这一关系的表达式DA)a0B)!aC)a=0D)a36、设x、y、z、t均为int型变量,则执行以下语句后,t的值为Cx=y=z=1;t=++x||++y&&++z;A)不定值B)4C)1D)037、对表达式for(表达式1;;表达式3)可理解为BA.)for(表达式1;0;表达式3)B)for(表达式1;1;表达式3)C)for(表达式1;表达式1;表达式3)D)for(表达式1;表达式3;表达式3)38、语句while(!e);中的条件!e等价于AA)e==0B)e!=1C)e!=0D)~e39、下面程序段的运行结果是Dfor(i=1;i=5;)printf(%d,i);i++;A)12345B)1234C)15D)无限循环40、设执行变量y值为3,执行下列循环语句后,变量y的值是Cdoy++;while(y++4);(A)3(B)4(C)5(D)641、执行语句:for(i=1;i9;i++)后;变量i的值是B(A)10(B)9(C)不定(D)1142、执行语句:for(i=1;i=9;i++);后变量i的值是AA.10B.9C.不定D.1143、在定义一个一维数组时,不能用来表示数组长度的是DA)常量B)符号常量C)常量表达式D)已被赋值的变量44、判断字符串是否相等,应当使用D(A)if(a==b)(B)if(a=b)(C)if(strcpy(a,b))(D)if(!strcmp(a,b))45、执行程序段charstr[20]={'a','b','c','\0'};intlen=strlen(str);变量len的值CA.20B.4C.3D.3或4或2046、若有说明:charc[10]={'E','a','s','t','\0'};,则下述说法中正确的是DA)c[7]不可引用B)c[6]可引用,但值不确定C)c[4]不可引用D)c[4]可引用,其值为空字符47、运行下面程序段的输出结果是Achars1[10]={'S','e','t','\0','u','p','\0'};printf(%s,s1);A)SetB)SetupC)SetupD)'S''e''t'48、以下程序段的输出结果是Bchars[]=anapple;printf(%d\n,strlen(s));A)7B)8C)9D)1049、下列一维数组初始化语句中,正确且与语句floata[]={0,3,8,0,9};等价的是DA)floata[6]={0,3,8,0,9};B)floata[4]={0,3,8,0,9};C)floata[7]={0,3,8,0,9};D)floata[5]={0,3,8,0,9};50、如有定义语句inta[]={1,8,2,8,3,8,

1 / 30
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功