C 语言试题库.docx
- 文档编号:30177854
- 上传时间:2023-08-05
- 格式:DOCX
- 页数:124
- 大小:56.05KB
C 语言试题库.docx
《C 语言试题库.docx》由会员分享,可在线阅读,更多相关《C 语言试题库.docx(124页珍藏版)》请在冰豆网上搜索。
C语言试题库
C语言试题库
\1
A
-个C程序的执行是从
A)本程序的main函数开始,到main函数结束
B)本程序文件的第-个函数开始,到本程序文件的最后-个函数结束
C)本程序的main函数开始,到本程序文件的最后-个函数结束
D)本程序文件的第-个函数开始,到本程序main函数结束
\2
C
以下叙述正确的是:
A)在C程序中,main函数必须位于程序的最前面
B)C程序的每行中只能写-条语句
C)C语言本身没有输入输出语句
D)在对-个C程序进行编译的过程中,可发现注释中的拼写错误
\3
D
以下叙述不正确的是
A)-个C源程序可由-个或多个函数组成
B)-个C源程序必须包含-个main函数
C)C程序的基本组成单位是函数
D)在C程序中,注释说明只能位于-条语句的后面
\4
C
C语言规定:
在-个源程序中,main函数的位置
A)必须在最开始
B)必须在系统调用的库函数的后面
C)可以任意
D)必须在最后
\5
B
-个C语言程序是由
A)-个主程序和若干子程序组成B)函数组成
C)若干过程组成D)若干子程序组成
\6
A
在C语言中(以16位PC机为例),5种基本数据类型的存储空间长度的排列顺序为
A)char B)char=int<1ongint<=float C)char D)char=int=1ongint<=float \7 C 若x,i,j和k都是int型变量,则执行下面表达式后x的值为 x=(i=4,j=16,k=32) A)4B)16C)32D)52 \8 B 假设所有变量均为整型,则表达式(a=2,b=5,b++,a+b)的值是: A)7B)8C)6D)2 \9 A 下列四组选项中,均不是C语言关键字的选项是 A)defineB)getoC)includeD)while IFcharscanfgo typeprintfcasepow \10 B 下面四个选项中,均是C语言关键字的选项是 A)autoenuminclude B)switchtypedefcontinue C)signedunionscanf D)ifstructtype \11 C 下面四个选项中,均是不合法的用户标识符的选项是 A)AP_0do B)float1a0-A C)b-agotoint D)-123tempINT \12 C C语言中的标识符只能由字母、数字和下划线三种字符组成,且第-个字符 A)必须为字母 B)必须为下划线 C)必须为字母或下划线 D)可以是字母,数字和下划线中任-种字符 \13 A 下面四个选项中,均是合法整型常量的选项是: A)160B)-0xcdfC)-01D)-0x48a -0xffff01a986,0122e5 0110xe06680x \14 D 下面四个选项中,均是不合法的整型常量的选项是: A)--0f1B)-0XcdfC)-018D)-0x48eg -0xffff017999-068 001112,4565e203f \15 B 下面四个选项中,均是不合法的浮点数的选项是 A)160.B)123C)-.18D)-e3 0.122e4.2123e4.234 e3.e50.01e3 \16 b 下面四个选项中,均是合法浮点数的选项是 A)+le+1B)-.60C)123eD)-e3 5e-9.412e-41.2e-.4.8e4 03e2-8e5+2e-15.e-0 \17 A 下面四个选项中,均是合法转义字符的选项是 A)'\''B)'\'C)'\018'D)'\\0' '\\''\017''\f''101' '\n''\"''xab''xlf' \18 B 下面四个选项中,均是不合法的转义字符的选项是 A)'\''B)'\1011'C)'\011'D)'\abc' '\\''\''\f''\101' '\xf''\a''\}''xlf' \19 C 下面正确的字符常量是: A)"a"B)'\\''C)'W'D)'' \20 d 下面四个选项中,均是不正确的八进制数或+六进制数的选项是。 A)016B)oabcC)010D)0a12 0x8f017-0x117ff 0180x80x16-123 \21 C 下面四个选项中,均是正确的八进制数或+六进制数的选项是。 A)-10B)0abcC)0010D)0al2 0x8f-017-0x11-0xl23 -0110xc0xf1-0x8 \22 d 下面四个选项中、均是正确的数值常量或字符常量的选项是: A)0.0B)"a"C)'3'D)+001 0f3.9E-2.50110xabcd 8.9elel0xFFOO2e2 '&''\'''0a50. \23 A 下面不正确的字符串常量是 A)'abc'B)"12'12"C)"0"D)"" \24 c 若有代数式3ae/bc,则不正确的C语言表达式是: A)a/b/c*e*3B)3*a*e/b/c C)3*a*e/b*cD)a*e/c/b*3 \25 A 已知各变量的类型说明如下: intk,a,b; unsignedlongw=5; doublex=1.42; 则以下不符合C语言语法的表达式是: A)x%(-3)B)w+=-2 C)k=(a=2,b=3,a+b)D)a+=a-=(b=4)*(a=3) \26 A 已知各变量的类型说明如下: inti=8,k,a,b; unsignedlongw=5; doublex=1.42,y=5.2; 则以下符合C语言语法的表达式是: A)a+=a-=(b=4)*(a=3)B)a=a*3=2 C)x%(-3)D)y=f1oat(i) \27 D 以下不正确的叙述是 A)在C程序中,逗号运算符的优先级最低 B)在C程序中,APH和aph是两个不同的变量 C)若a和b类型相同,在执行了赋值表达式a=b后b中的值将放人a中,而b中的值不变。 D)当从键盘输入数据时,对于整型变量只能输入整型数值,对于实型变量只能输入实型数值。 \28 D 以下正确的叙述是: A)在C程序中,每行中只能写-条语句 B)若a是实型变量,C程序中允许赋值a=10,因此实型变量中允许存放整型数 C)在C程序中,无论是整数还是实数,都能被准确无误地表示 D)在C程序中,%是只能用于整数运算的运算符 \29 B 以下符合C语言语法的赋值表达式是 A)d=9+e+f=d+9B)d=9+e,f=d+9 C)d=9+e,e++,d+9D)d=9+e++=d+7 \30 A 已知字母A的ASCII码为+进制数65,且c2为字符型, 则执行语句c2='A'+'6'-'3';后,c2中的值为 A)DB)68C)不确定的值D)C \31 D 在C语言中,要求运算数必须是整型的运算符是: A)/B)++C)! =D)% \32 A 若以下变量均是整型,且num=sum=7;则执行表达式sUM=num++,sUM++,++num后sum的值为 A)7B)8C)9D)10 \33 D 在C语言中,int、char和short种类型数据在内存中所占用的字节数 A)由用户自己定义B)均为2个字节 C)是任意的D)由所用机器的机器字长决定 \34 A 若有说明语句: charc='\72'则变量c A)包含1个字符B)包含2个字符 C)包含3个字符D)说明不合法,c的值不确定 \35 A 若有定义: inta=7;floatx=2.5,y=4.7;则表达式x+a%3*(int)(x+y)%2/4的值是 A)2.500000B)2.7500OOC)3.500000D)0.000000。 \36 B sizeof(float)是: A)-个双精度型表达式B)-个整型表达式 C)-种函数调用D)-个不合法的表达式 \37 C 设变量a是整型,f是实型,i是双精度型,则表达式10+'a'+i*f值的数据类型为 A)intB)floatC)doubleD)不确定 \38 A 下面四个选项中,均是非法常量的选项是 A)'as'B)'\\'c)-0xl8D)0xabc -0fff'\01'01177'\0' '\0xa'12,4560xf"a" \39 D 在C语言中,char型数据在内存中的存储形式是: A)补码B)反码C)原码D)ASCII码 \40 B 设变量n为f1oat类型,m为int类型,则以下能实现将n中的数 值保留小数点后两位,第三位进行四舍五人运算的表达式是: A)n=(n*100+0.5)/100.0B)m=n*100+0.5,n=m/100.0 C)n=n*100+0.5/100.0D)n=(n/100+0.5)*100.0 \41 C 表达式18/4*sqrt(4.0)/8值的数据类型为: A)intB)floatC)doubleD)不确定 \42 C 设C语言中,-个int型数据在内存中占2个字节, 则unsignedint型数据的取值范围为: A)0~255B)0~32767C)0~65535D)0~2147483647 \43 D 设有说明: charw;intx;f1oaty;doublez; 则表达式w*x+z-y值的数据类型为: A)floatB)charC)intD)double \44 D 若有以下定义,则能使值为3的表达式是: intk=7,x=12; A)x%=(k%=5)B)x%=(k-k%5) C)x%=k-k%5D)(x%=k)-(k%=5) \45 C 设以下变量均为int类型,则值不等于7的表达式是 A)(x=y=6,x+y,x+1)B)(x=y=6,x+y,y+1) C)(x=6,x+1,y=6,x+y)D)(y=6,y+l,x=y,x+1) \46 D putchar函数可以向终端输出-个: A)整型变量表达式值 B)实型变量值 C)字符串 D)字符或字符型变量值 \47 B printf函数中用到格式符%5s,其中数字5表示输出的字符串占用5列。 如果字符串长度大于5,则输出按方式 A)从左起输出该字串,右补空格 B)按原字符长从左向右全部输出 C)右对齐输出该字串,左补空格 D)输出错误信息 \48 C printf函数中用到格式符%5s,其中数字5表示输出的字符串占用5列。 如果字符串长度小于5,则输出按方式。 A)从左起输出该字串,右补空格 B)按原字符长从左向右全部输出 C)右对齐输出该字串,左补空格 D)输出错误信息 \49 D 已有定义inta=-2;和输出语句: printf("%8lx",a);以下正确的叙述是: A)整型变量的输出格式符只有%d-种 B)%x是格式符的-种,它可以适用于任何-种类型的数据 C)%x是格式符的-种,其变量的值按+六进制输出,但%8lx是错误的 D)%8lx不是错误的格式符,其中数字8规定了输出字段的宽度 \50 D 若x,y均定义为int型,z定义为double型,以下不合法的 scanf函数调用语句是: A)scanf("%d%lx,%le",&x,&y,&z); B)scanf("%2d*%d%lf"&x,&y,&z); C)scanf("%x%*d%o",&x,&y); D)scanf("%x%o%6.2f",&x,&y,&z); \51 A 已有如下定义和输入语句,若要求a1,a2,c1,c2值分别为10,20,A和B, 当从第-列开始输入数据时,正确的数据输入方式是 inta1,a2;charc1,c2; scanf("%d%c%d%c",&a1,&c1,&a2,&c2); A)10A20B C)10A20 \52 B 已有定义intx;f1oaty;且执行scanf("%3d%f",&x,&y);语句, 若从第1列开始输入数据12345678(回车),则x的值为 A)12345B)123C)45D)345 \53 B 已有定义intx;f1oaty;且执行scanf("%3d%f",&x,&y);语句, 若从第-列开始输入数据12345678(回车),则y的值为: A)无定值B)45.0000C)678.000000D)123.00000 \54 D 已有如下定义和输入语句,若要求a1,a2,c1,c2的值分别为10,20,A,B, 当从第-列开始输入数据时,正确的数据输入方式是: inta1,a2;charc1,c2; scanf("%d%d",&a1,&a2); scanf("%c%c",&c1,&c2); A)1020AB C)1020AB \55 D 已有程序段和输入数据的形式如下,程序中输入语句的正确形式应当为 main() {inta;floatf; printf("\nInputnumber: "); 输入语句 printf("\nf=%f,a=%d\n,f,a); } Inputnumber: 4.52 A)scanf("%d,%f",&a,&f);B)scanf("%f,%d",&f,&a) C)scanf("%d%f",&a,&f);D)scanf("%f%d",&f,&a); \56 B 根据定义和数据的输入方式,输入语句的正确形式为: 已有定义: floatfl,f2; 数据的输入方式: 4.52 3.5 A)scanf("%f,%f",&f1,&f2);B)scanf("%f%f",&f1,&f2); C)scanf("%3.2f%2.1f",&f1,&f);D)scanf("%3.2f%2.1f",&f1,&f2); \57 D 阅读以下程序,当输入数据的形式为25,13,10 main() {intx,y,z scanf("%d%d%d",&x,&y,&z); printf("x+y+z=%d\n,x+y+z);。 } A)x+y+z=48B)x+y+z=35 C)x+z=35D)不确定值 \58 B 阅读下程序,若运行结果为如下形式,输入输出语句的正确内容是: main() {intx;floaty;printf("enterx,y: ") 输入语句输出语句 } 输入形式enterx,y: 23.4 输出形式x+y=5.40 A)scanf("%d,%f",&x,&y);printf("\nx+y=%4.2f",x+y); B)scanf("%d%f",&x,&y);printf("\nx+y=%4.2f",x+y); C)scanf("%d%f",&x,&y);printf("\nx+y=%6.lf",x+y); D)scanf("%d%3.1f",&x,&y);printf("\nx+y=%4.2f",x+y); \59 D 以下说法正确的是: A)输入项可以为-实型常量,如scanf("%f",3.5); B)只有格式控制,没有输入项,也能进行正确输入,如scanf("a=%d,b=%d"); C)当输入-个实型数据时,格式控制部分应规定小数点后的位数, 如scanf("%4.2f",&f); D)当输入数据时,必须指明变量的地址,如scanf("%f",&f); \60 A 根据下面的程序及数据的输入方式和输出形式,程序中输入语句的 正确形式应该为: main() {charch1,ch2,ch3; 输入语句 printf("%c%c%c",ch1,ch2,ch3);} 输入形式: ABC 输出形式: AB A)scanf("%c%c%c",&ch1,&ch2,&ch3); B)scanf("%c,%c,%c",&ch1,&ch2,&ch3); C)scanf("%c%c%c",&ch1,&ch2,&ch3); D)scanf("%c%c",&ch1,&ch2,&ch3); \61 D 有输入语句: scanf("a=%d,b=%d,c=%d",&a,&b,&c);为使 变量a的值为1,b为3,c为2, 从键盘输入数据的正确形式应当是 A)132(回车) B)1,3,2(回车) C)a=1b=3c=2(回车) D)a=1,b=3,c=2(回车) \62 A 以下能正确地定义整型变量a,b和c并为其赋初值5的语句是 A)inta=b=c=5;B)inta,b,c=5; C)a=5,b=5,c=5;D)a=b=c=5; \63 A 已知ch是字符型变量,下面不正确的赋值语句是 A)ch='a+b';B)ch='\0';C)ch='7'+'9';D)ch=5+9; \64 B 已知ch是字符型变量,下面正确的赋值语句是 A)ch='123';B)ch='\xff';C)ch='\08';D)ch="\"; \65 B 若有以下定义,则正确的赋值语句是: inta,b;floatx; A)a=1,b=2,B)b++;C)a=b=5D)b=int(x); \66 B 设x、y均为f1oat型变量,则以下不合法的赋值语句是 A)++x;B)y=(x%2)/10;C)x*=y+8;D)x=y=0; \67 A x,y,z均为int型变量,则执行语句x=(y=(z=10)+5)-5;后,x、y和之的值是: A)x=10B)x=10C)x=10D)x=10 y=15y=10y=10y=5 z=10z=10z=15z=10 【题10.1】 D 已知学生记录描述为structstudent {intno;charname[20];charsex; struct{intyear;intmonth;intday;}birth; };structstudents; 设变量s中的“生日”应是“1984年11月11日”,下列对“生日”的正确赋值方式是 A)year=1984;B)birth.year=1984; month=11;birth.month=11; day=11;birth.day=11; C)s.year=1984;D)s.birth.year=1984; s.month=11;s.birth.month=11; s.day=11;s.birth.day=11; 【题10.2】 A 当说明一个结构体变量时系统分配给它的内存是 A)各成员所需内存量的总和 B)结构中第一个成员所需内存量 C)成员中占内存量最大者所需的容量 D)结构中最后一个成员所需内存量 【题10.3】 以下对结构体类型变量的定义中不正确的是__。 A)#dedineSTUDENTstructstudentB)structstudent STUDENT{intnum; {intnum;floatage; floatage;}std1; }std1; C)structD)struct {intnum;{intnum; floatage;floatage; }std1;}student; structstudentstd1; [10.4] C 设有以下说明语句 structstu {inta; floatb; }stutype; 则下面的叙述不正确的是 A)struct是结构体类型的关键字 B)structstu是用户定义的结构体类型 C)stutype是用户定义的结构体类型名 D)a和b都是结构体成员名 【题10.5】 A C语言结构体类型变量在程序执行期间 A)所有成员一直驻留在内存中 B)只有一个成员驻留在内存中 C)部分成员驻留在内存中 D)没有成员驻留在内存中 【题10.6】 D 在16位IBM一PC机上使用C语言,若有如下走义: structdata {inti; charch; doublef; }b; 则结构变量b占用内存的字节数是 A)1B)2C)8D)11 【题10.7】 A 以下程序的运行结果是 #include"stdio.h" main() {structdate {intyear,month,day; }today; printf("%d\n",sizeof(structdate)); } A)6B)8C)10D)12 【题10.8】 D 根据下面的走义,能打印出字母M的语句是 structperson{charname[9]; intage; } structpersonclass[10]={"John",17,"Paul",19,"Mary",18,"adam",16 }; A)printf("%c\n",class[3].name); B)printf("%c\n",class[3].name[1]); C)printf("%c\n",class[2].name[1]); D)printf("%c\n",class[2].name[0]); 【题10.9】 D 下面程序的运行结果是 main() { structcmplx{intx; inty; }cnum[2]={1,3,2,7}; printf("%d\n",cnum[0].y/cnum[0].x*cnum[1].x); } A)0B)1C)3D)6 【题10.10】 D 若有以下定义和语句: structstudent {intage;intnum;}; structstudentstu[3]={{1001,20},{1002,19},{1003,21}}; main() {structstudent*p; p=stu;... } 则以下不正确的引用是__。 A)(p++)->num
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言试题库 语言 试题库