《《C语言基础练习题(含答案)》》由会员分享,可在线阅读,更多相关《《C语言基础练习题(含答案)》(8页珍藏版)》请在金锄头文库上搜索。
1、目录第1-3章C语言基础知识习题选择题22填空题73答案及部分解析9第4章选择结构习题111选择题112填空题73答案及部分解析2第章循环结构习题21选择题27填空题:3答案及部分解题分析40第6章数组习题421. 单项选择题22. 填空题43. 判断题464. 程序填空题46阅读程序,分析程序的功能。0第7章函数习题561. 单项选择题562. 填空题573. 判断题4. 程序填空题59写出下列程序运行结果60第8章指针习题681选择题682填空题70第1章C诺言基础知识习题1. 1选择题以下不是语言的特点的是()。、语言简洁紧凑、能够编制出功能复杂的程序、C语言可以直接对硬件操作2. CK
2、C语言移植性好下列字符序列中,不可用作C语言标识符的是()。bc3B.o.1C12_D._ok正确的C语言标识符是()。A_buy_2B.2buC.?bybuy?4请选出可用作C语言用户标识符的一组标识符()。A.voi.3bC.FDaefine_123-bcDOWORDIFCasesizof5.下列符号中,不属于转义字符的是()。.0xA.tD.0.不属于语言关键字的是()。AinBekC.hilaracter7是C语言提供的合法关键字的是()。AFlatB.sgeC.integerDChar8.以下不能定义为用户标示符的是()。A.caf.VodcoD.nt9. 一个C程序是由()。A.
3、一个主程序和若干子程序组成B. 一个或多个函数组成C. 若干过程组成10. 若干子程序组成C语言程序的基本单位是()。A.程序行B.语句C.函数D.字符11.卜列说法中,错误的是()。A. 每个语句必须独占一行,语句的最后可以是一个分号,也可以是一个回车换行符号B. 每个函数都有一个函数头和一个函数体,主函数也不例外C. 主函数只能调用用户函数或系统函数,用户函数可以相互调用程序是由若干个函数组成的,但是必须有、而且只能有一个主函数1.以下说法中正确的是()。A. 语言程序总是从第一个定义的函数开始执行在C语言程序中,要调用的函数必须在an()函数中定义C语言程序总是从main()函数开始执行
4、语言程序中的man()函数必须放在程序的开始部分3.C编译程序是()。C程序的机器语言版本一组机器语言指令将源程序编译成目标程序由制造厂家提供的一套应用软件以下选项中,.ong以下选项中,.52014.A1合法的用户标识符是(B._bcC合法的实型常数是(BE-3C)。.daxD)。.E0D65,小写字母.A.da.E的ASCII码是9,则用八进制表示的A.字符AB.字符.字符cD.非法的常量7A以下选项中,合法转义字符的选项是()。.18C.xbD.ac18.以下选项中,F正确的字符常量是()。B.C.WD19A以下选项中可作为C语言合法整数的是.10110BB036COXffaD.x2a2
5、a16.已知大写字母的ACI码值是字符常量11是()。下列变量定义中合法的是A.shot_-.le1;Cgo0xfdaL;,、9x,与数学式子对应的xA.*x(*x-1)C*p(x,n)(1(2*x-1)).doubleb=+5e2.;.flot2ad=-e-3;C语言表达式是(9*x*n/(*x-1).9*pw(,x)/(2x-)2.若有代数式业,则不正确的语言表达式是()。cdA.a/c/d*3B.3*ab/c/dC.3*a*b/c*dD.bd*323.已知各变量的类型说明如下:intm=,n,a,;unsinlog0;double=.14,y=0.1;则以下符合C语言语法的表达式是()。
6、A.a=a-(b=2)(=)BCx%D24.以下符合C语言语法的赋值表达式是(A.a=+c=d+9B.a9+b,b+,c+9D已知字母A的ASCI码为十进制数65,后,中的值为()。ADB.n=n3=18y=foa(m))。.a=(+,=d+9).a=9+b+=c9且S为字符型,则执行语句=A+6-3;不确定的值D.C26. 在C语言中,要求运算数必须是整型的运算符是()。27. A./.+.*D.%若有说明语句:chars72则变量s()。A. 包含一个字符B. 包含两个字符C. 包含三个字符28. 说明不合法,s的值不确定若有定义:intm=7;foatx2,y4.7;则表达式%3*(in
7、)(x+y)24的值是()。29. A.250000B.2.75000C3.00000.0.000000在语言中,car型数据在内存中的存储形式是()。A.补码B反码C.原码D.ASII码0.设变量x为foat类型,m为int类型,则以下能实现将x中的数值保留小数点后两位,第三位进行四舍五入运算的表达式是()。A. =(x10+0.5)/00B. =x*00+05,x=m/10.C. x=x*100./10.0=(/10+.)*00.03.表达式33srt(1.0)/8的数据类型是()。.itB.floatC.dleD.不确定32设以下变量均为int类型,则值不等于的表达式是()。A. (m=
8、n=,m+,m+1)B. (m=6,+n,+1)C. (m=6,m+1,n=6,m)33. (=6,m+1,n=m,n+1)假设所有变量均为整型,则表达式(x=2,=,y+,x+y)的值是()。34. 7BC6D.2已知s是字符型变量,下面不正确的赋值语句是()。A. s01;B.suv;35. =1+2;.s=12;已知s是字符型变量,下面正确的赋值语句是()。A. sc;B.s=0836. C.=de;D.s=;若有以下定义,则正确的赋值语句是()。inx,;loat;A.1,y,.=y100.x+;D.x=int();3.设、均为fla型变量,则不正确的赋值语句是()。x*=-2;.xy
9、=0;=7+b+a7;.=7+b,=+;.字符串.+;B38. C.y=(%3)/10;D下列语句中符合C语言的赋值语句是()。=7+bc=a+;B39. C.a7,b+,a+7Duthar函数可以向终端输出一个()。A.整型变量表达式值。BC.实型变量值。以下程序段的输出结果是n=12345;pitf(A.2B若为A.=.字符或字符型变量值。34x和均定义为int()。sanscf(scanf(scnf()。%2dn,a);C.12345型,z定义为oul(”d%区%le”,&,&,&z);%2d*%lf,&y,&z);”%dO,x,&y);”x%o6.2,&,&y,&z);有如下程序段:i
10、nt1,x2;chy1,y2;scanf(%cx1,y1,&x2,&y2);若要求x1、x2、y2的值分别为10、20、表空格)A10A20B.10A2BD型,、.提示出错、无结果以下不合法的sanf()函数调用语句B,正确的数据输入是()。(注:5弋.10A20B.0B3若变量已正确说明为foa类型,要通过语句sanf(%ff%f,&a,,c);给a赋予0.0,b赋予220,赋予33.0,不正确的输入形式为()。A.0回车B.10.,22.,33.0回车23344 C0.0D.102.0330回车3回车.有如下程序,若要求1、x、y1、y2的值分别为、B,正确的数据输入是()。(注:代表空格
11、)intx1,x2;chry1,y2;canf(%d%,x1,&x2);scanf(%c%c,y1,&);A.102AB.00ABC45 C00D.120AAB.已有定义nta=-;和输出语句:printf(%lx,a);以下正确的叙述是()。A.整型变量的输出格式符只有%d一种B. %x是格式符的一种,它可以适用于任何一种类型的数据C. %乂是格式符46 8lx不是错误的格式符,其中数字规定了输出字段的宽度.有如下程序段,对应正确的数据输入是()。flox,;caf(%f%f,&x,&y);prn(a=%,b=%f,x,y);A2.04B.04,.675.6747 C.A=2.,=56回车D
12、.055.7回车.有如下程序段,从键盘输入数据的正确形式应是()。(注:代表空格)foatx,z;scnf(X=d,=,=%d,&,y,);.123B.=1,=2,=348. ,2,D.x1y2z=以下说法正确的是()。A. 输入项可以为一个实型常量,如sa(”%f”,.5);只有格式控制,没有输入项,也能进行正确输入,如scaf(a=d,b5d);C.当输入一个实型数据时,格式控制部分应规定小数点后的位数,如scanf(4.2f,&f);49. 当输入数据时,必须指明变量的地址,如sanf(%f,&);根据定义和数据的输入方式,输入语句的正确形式为:()。(注:代表空格)已有定义:floax,;数据的输入方式:1.234回车A.scan(%,%f,&,&y);B.scanf(%f%f,&x,&y);50. scnf(”%32f%21f”,&x,&y);D.scanf(”