C语言第一二三章习题.docx
- 文档编号:9328509
- 上传时间:2023-02-04
- 格式:DOCX
- 页数:18
- 大小:25.46KB
C语言第一二三章习题.docx
《C语言第一二三章习题.docx》由会员分享,可在线阅读,更多相关《C语言第一二三章习题.docx(18页珍藏版)》请在冰豆网上搜索。
C语言第一二三章习题
(一)判断题(用A表示正确,B表示错误)
说明:
在以下提供的若干陈述中,逐一判断其正确与否,选A表示正确,选B表示错误。
1、函数是C程序的基本单位,每个C程序中允许有多个main函数。
()
2、在C程序中允许1行有多个语句,一个语句分多行写。
()
3、C语言是一门低级语言。
()
4、C程序中,注释说明语句只能位于一条语句的后面,不可以单独一行。
()
5、在C程序中123.345E-4是一个正确的实型数据()
6、任何一个C语言源程序都能直接在计算机中运行。
()
7、C语言中表示逻辑“真”值是用1来表示的。
()
8、在C语言中,逗号运算符的优先级最低。
()
9、0XAG、0XCF是十六进制整型常量。
()
10、在一个C源程序中,每个语句都是以;结束的。
11、3+4x、a*(10%3)都是正确的C语言的表达式。
()
12、C语言是一门结构化程序设计语言。
()
13、有以下定义“intb;”则说明了b是整型变量,并且分配一个存储单元,该存储单元的内容为b。
()
14、字符型变量在输出时可以是字符型数据和整型数据。
()
15、语言的运算符优先级是指不同的运算符计算的先后顺序,比如,双目运算符比单目运算符优先。
()
16、C语言中的关键字不能当作变量名使用。
()
17、C语言中没有单独的输入输出语句,输入输出功能由函数来完成。
()
18、在C语言中名字为NUM和num的标识符表示的是同一个变量。
()
19、在C程序的一行上可以出现多个有效的预处理命令行。
()
20、一个C语言源程序经过编译后就能直接生成扩展名为.exe的文件。
()
21、在C语言中,所有外部设备都可以作为文件来对待,这样的文件称为设备文件。
()
22、若a和b类型相同,在执行了赋值表达式a=b后b中的值将放入a中而b中的值不变。
( )
23、在C程序中,%运算符要求运算数必须是整型的运算符。
( )
24、scanf函数的输入项可以为一实型常量,如scanf(“%f”,3.5);是正确的语句。
( )
25、已知ch是字符型变量,则赋值语句ch=‘a’+3是错误的。
( )
26、一个C程序的执行是从本程序文件的第一个函数开始,到本程序main函数结束。
()
27、若x是单精度实型变量,表达式(x=10/4)的值是2.5。
()
28、表达式x/=5+6等价于x=x/5+6。
()
29、运算符“=”和“&=”的优先级相同。
()
30、'%f'是不正确的字符常量。
()
31、运算符“+”不能作为单目运算符。
()
32、如果运算符“*”和“/”都是右结合的,则表达式10*6/5的值是10。
()
33、s(s-a)(s-b)(s-c)是合法的C语言表达式。
()
34、表达式!
!
6的值是6。
()
35、表达式~(~2<<1)的值是5。
()
36、不同类型的变量在内存中占用存储空间的大小都是一样的。
()
37、程序调试就是找出并改正C源程序中的语法错误。
()
38、表示数学式3 () 39、程序设计语言必须具备数据表达和流程控制的功能。 () 40、‘\n’不是一个字符常量。 () 41、表达式(1.23<<2)符合C语言语法。 () 42、与float型数据相比,double型数据的精度高,取值范围大。 () 43、在C语言中,表达式(010+2)的值是10。 44、结构化程序语言的三种基本控制结构是顺序、选择和循环。 () 45、C语言程序的三种基本结构是顺序、选择和嵌套。 () 46、C语言是一门面向对象的程序设计语言。 () 47、C语言可以有一个以上的主函数MAIN。 () 48、C语言的注释部分用“//”表示。 () 49、经过编译后生成的目标程序是可以直接运行的。 () 50、表达式(3.6%2)符合C语言语法。 () 51、在C程序中,用整数0表示逻辑值“假”。 () 52、08是正确的整型常量。 () 53、若变量已正确定义,表达式x=y=1符合C语言语法。 () 54、表达式! (x>0||y>0)等价于! (x>0)&&! (y>0)。 () 55、用#definepi3.1415926定义的符号常量pi的值在程序中是不能被改变的。 () 56、C语言的注释部分用“/**/”表示。 () 57、不同类型的变量在内存中占用存储空间的大小是不一样的。 () 58、表示数学式1 () (二)单项选择题 1、下列定义中,定义的变量可以存放-123.4。 A、longa;B、unsignedb; C、intd;D、floatc; 2、若x是double型变量,n是int型变量,执行,并输入31.25后,x=1.25,n=3。 A、scanf("%d%lf",&n,&x);B、scanf("%lf%d",&x,&n); C、scanf("%lf%d",&n,&x);D、scanf("%d%,lf",&n,&x); 3、若变量已经被正确定义,为表示“变量x和y都能被3整除”,应使用的C表达式是。 A、(x%3! =0)||(y%3! =0)B、(x%3! =0)&&(y%3! =0) C、(x%3==0)||(y%3==0)D、(x%3==0)&&(y%3==0) 4、以下所列的C语言常量中,错误的是。 A、0xFFB、1.2e0.5C)、202LD、'\72' 5、下面程序的输出是。 A、0B、1C、3D、不确定的值 main() {intx=10,y=3; printf(“%d\n”,y=x/y);} 6、不是C语言的运算符。 A、&&B、&C、*D、$ 7、字节数最多的类型是。 A、intB、charC、doubleD)、long 8、在下列选项中,不是赋值语句。 A、t=1,t=2;B、n1=(n2=(n3=0));C、k=i==j;D、a=bc=1; 9、设i是int型变量,f是float型变量,用下面的语句给这两个变量输入值: scanf(“%d%f”,&i,&f);为了把100和76.12分别赋给i和f,则正确的输入为。 A、10076.12B、i=100,f=76.12C、100,76.12D、i=100f=76.12 10、能正确表示a和b同时为正或同时为负的逻辑表达式是。 A、(a>=0||b>=0)&&(a<0||b<0) B、(a>=0&&b=0)&&(a<0&&b<0) C、(ab>0)&&(ab<=0) D、a*b>0 11、为表示“a和b都不等于0”,应使用的C语言表达式是。 A、(a! =0)||(b! =0)B、a||b C、! (a=0)&&(b! =0)D、a&&b 12、若x是单精度实型变量,k是基本整型变量,以下正确的输入语句是。 A、scanf("%f%d",&x,&k);B、scanf("%f%d",x,k); C、scanf("%d%f",&x,&k);D、scanf("%d%f",x,k); 13、下列运算符中优先级最低的是。 A、*B、% C、=D、-> 14、已知字符‘c’的ASCII码为99,语句printf("%d,%c",’c’,’c’+1);的输出为。 A、99,cB、99,100 C、99,dD、语句不合法 15、以下选项中规范的指数形式。 A、5E2.0B、E-3C、.2E0D、1.3E+005 16、下列表达式的值为1的是。 A、3﹪5B、3/5.0C、3/5D、3<5 17、C语言中的标识符只能由字母、数字和下划线三种字符组成,且第一个字符。 A、必须为字母B、必须为下划线 C、必须为字母或下划线D、可以是字母、数字和下划线中任一种字符 18、下列运算符中优先级最高的是。 A、 = 19、阅读以下程序: 若x、i、j和k都是int型变量,则执行下面表达式后x的值为 。 x=(i=4,j=16,k=32) A、4B、16C、32D、52 20、若希望当A的值为奇数时,表达式的值为“真”,A的值为偶数时,表达式的值为“假”,则以下不能满足要求的表达式是。 A、A%2==1B、! (A%2==0)C、! (A%2)D、A%2 21、对于inti,j;charc;当输入序列为1dc234时,执行语句 scanf(“%dd%c%*d%*d%d”,&i,&c,&j);后i,j,c的值分别为。 A、12‘d’B、12‘c’C、14‘d’D、14‘c’ 22、若x是单精度实型变量,k是基本整型变量,以下正确的输入语句是。 A、scanf("%f%d",&x,&k);B、scanf("%f%d",x,k); C、scanf("%d%f",&x,&k);D、scanf("%d%f",x,k); 23.下面程序的输出结果是。 main() {intx=10; printf(“%d\n”,(x=5*6,x*4,x+5));} (A)30 (B)125 (C)35 (D)120 24、已知i、j、k为int型变量,若从键盘输入: 1,2,3<回车>,使i的值为1、j的值为2、k的值为3,以下选项中相对应的正确输入语句是。 A、scanf("%2d%2d%2d",&i,&j,&k); B、scanf(""%d%d%d",&i,&j,&k); C、scanf("%d,%d,%d",&i,&j,&k); D、scanf("i=%d,j=%d,k=%d",&i,&j,&k); 25、设c是一个字符变量,求解表达式后,c的值不是1就是0。 A、c=getchar()! ='\n'B、(c=getchar())! ='\n' C、c='1'D、c=EOF 26、下列叙述中错误的是。 A、一个C语言程序只能实现一个算法。 B、C程序可以有多个程序文件组成。 C、C程序可以有一个或多个函数组成。 D、一个C函数可以单独作为一个C程序文件存在。 27、下列叙述中正确的是。 A、每个C程序文件中都必须要有一个main()函数。 B、在C程序中mani()函数的位置是固定的。 C、C程序中所有函数之间都可以互相调用,与函数所在位置无关。 D、C程序只能有一个main()函数组成。 28、下列定义变量的语句中错误的是。 A、int_int;B、doubleint_ ;C、charFor;D、floatUS$; 29、若变量x、y已正确定义并赋值,以下符合C语言语法的表达式是。 A、++x,y=x--;B、x+1=y;C、x=x+10=x+y;D、double(x)/10; 30、以下关于逻辑运算符两侧运算对象的叙述中正确的是。 A、只能是整数0或1;B、只能是整数0或非0整数; C、可以是结构体类型的数据;D、可以是任意合法的表达式; 31、若有定义intx,y;并已正确给变量赋值,则以下选项中与表达式(x-y)? (x++): (y++)中的(x-y)等价的是。 A、(x-y>0)B、(x-y<0)C、(x-y<0||x-y>0)D、(x-y==0) 32、有以下程序 main() {intx,y,z; x=y=1; z=x++,y++,++y; printf(“%d,%d,%d”,x,y,z);} 程序运行后的输出结果是。 A、2,3,3B、2,3,2C、2,3,1D、2,2,1 33、设有定义inta;floatb;执行scanf(“%2d%f”,&a,&b);语句时,若从键盘输入876543.0<回车>,a和b的值分别是。 A、876和543.000000B、87和6.000000 C、87和543.000000D、76和543.000000 34、有以下程序段 main() {inta=0,b=0; a=10; printf(“a+b=%d\n”,a+b);} 程序运行后的结果是。 A、a+b=10B、a+b=30C、30D、出错 35、以下选项中,值为1的表达式是。 A、1-‘0’B、1-‘\0’C、’1’-0D、’\0’-‘0’ 36、C语言源程序名的后缀是。 A、.exeB、.CC、.objD、.cp 37、以下叙述正确的是。 A、C语言程序将从源程序中第一个函数开始执行 B、可以在程序中由用户指定任意一个函数作为主函数,程序将从此执行 C、C语言规定必须用main()作为主函数名,程序将从此执行,在此结束 D、main可作为用户标识符,用以命名任意一个函数作为主函数 38、以下叙述错误的是。 A、计算机不能直接执行用C语言编的源程序 B、C程序经C编译程序编译后,生成后缀为.obj的文件是个二进制文件 C、后缀为.obj的文件,经连接程序生成后缀为.exe的文件是二进制文件 D、后缀为.obj和.exe的文件都可以直接执行 39、按照C语言规定的用户标识符命名规则,不能出现在标识符中的是。 A、大写字母B、连接符C、数字字符D、下划线 40、以下叙述错误的是。 A、C语言是一种结构化程序设计语言 B、结构化程序有顺序、分支、循环三种基本结构组成 C、使用三种基本结构构成的程序只能解决简单问题 D、结构化程序设计倡导模块化的设计方法 41、设有定义: intk=0;以下选项的四个表达式中与其他三个表达式的值不一致的是。 A、k++B、k+=1C、++kD、k+1 42、有以下程序,其中%u表示按无符号整数输出 main() {unsignedintx=0xFFFF;//x的初值为十六进制数 printf(“%u\n”,x);} 程序运行后的输出结果为。 A、-1B、65535C、32767D、0xFFFF 43、以下选项中,当x为大于1的奇数时,值为0的表达式是。 A、x%2==1B、x/2C、x%2! =0D、x%2==0 44、以下合法的字符常量是。 A、‘\x13’B、’\081’C、’\65’D、”\n” 45、以下选项中可作为C语言合法常量的是______。 A、-80.B、-080C、-8e1.0D-80.0e 46、以下叙述中正确的是______。 A)用C程序实现的算法必须要有输入和输出操作 B)用C程序实现的算法可以没有输出但必须要输入 C)用C程序实现的算法可以没有输入但必须要有输出 D)用C程序实现的算法可以既没有输入也没有输出 47、以下不能定义为用户标识符的是______。 A、MainB、_0C、_intD、sizeof 48、以下选项中不能作为合法常量的是______。 A、1.234e04B、1.234e0.4C、1.234e+4D、1.234e0 49、数字字符0的ASCII值为48,若有以下程序 main() {chara='1',b='2'; printf("%c,",b++); printf("%d\n",b-a);} 程序运行后的输出结果是______。 A、3,2B、50,2C、2,2D、2,50 50、有以下程序 main() {intm=12,n=34; printf("%d%d",m++,++n); printf("%d%d\n",n++,++m);} 程序运行后的输出结果是______。 A、12353514B、12353513C、12343514D、12343513 51、有定义语句: intb;charc[10];,则正确的输入语句是______。 A、scanf("%d%s",&b,&c);B、scanf("%d%s",&b,c); C、scanf("%d%s",b,c);D、scanf("%d%s",b,&c); 52、有以下程序 main() {intm,n,p; scanf("m=%dn=%dp=%d",&m,&n,&p); printf("%d%d%d\n",m,n,p);} 若想从键盘上输入数据,使变量m中的值为123,n中的值为456,p中的值为789,则正确的输入是______。 A、m=123n=456p=789B、m=123n=456p=789 C、m=123,n=456,p=789D、123456789 53、有以下程序 main() {inta,b,d=25; a=d/10%9; b=a&&(-1); printf("%d,%d\n",a,b);} 程序运行后的输出结果是______。 A、6,1B、2,1C、6,0D、2,0 54、有以下程序 main() {inti=1,j=2,k=3; if(i++==1&&(++j==3||k++==3)) printf("%d%d%d\n",i,j,k);} 程序运行后的输出结果是______。 A、123B、234C、223D、233 55、以下不合法的用户标识符是_____。 A、j2_KEYB、DoubleC、4dD、_8_ 56、以下不合法的数值常量是_____。 A、011B、1e1C、8.0E0.5D、0xABCD 57、表达式3.6-5/2+1.2+5%2的值是_____。 A、4.3B、4.8C、3.3D、3.8 58、用C语言编写的代码程序______。 A、可立即执行 B、是一个源程序 C、经过编译连接后方可执行 D、经过编译解释才能执行 59、结构化程序由三种基本结构组成,三种基本结构组成的算法______。 A、可以完成任何复杂的任务B、只能完成部分复杂的任务 C、只能完成符合结构化的任务 D、只能完成一些简单的任务 60、下列选项中,不能用作标识符的是______。 A、_1234_B、_1_2C、int_2_D、2_int_ 61、有以下定义语句doublea,b;intw;longc;若各变量已正确赋值,则下列选项中正确的表达式是______。 A、a=a+b=b++B、w%(int)a+b) C、(c+w)%(int)aD、w=a==b; 62、以下叙述中正确的是______。 A、C语言的源程序不必通过编译就可以直接运行 B、C语言中的每条可执行语句最终都将被转换成二进制的机器指令 C、C源程序经编译形成的二进制代码可以直接运行 D、C语言中的函数不可以单独进行编译 63、以下符合C语言语法的实型常量是______。 A、1.2E0.5B、3.14.159EC、.5E-3D、E15 64、若以下选项中的变量已正确定义,则正确的赋值语句是______。 A、x1=26.8%3B、1+2=x2C、x3=0x12D、x4=1+2=3; 65、设有以下定义 inta=0; doubleb=1.25; charc=’A’; #defined2 则下面语句中错误的是______。 A、a++;B、b++;C、c++;D、d++; 66、设有定义: floata=2,b=4,h=3;,以下C语言表达式与代数式计算结果不相符的是______。 A、(a+b)*h/2B、(1/2)*(a+b)*hC、(a+b)*h*1/2D、h/2*(a+b) 67、有以下程序 main() {intx=102,y=012; printf(“%2d,%2d\n”,x,y);} 执行后输出结果是______。 A、10,01B、002,12C、102,10D、02,10 68、以下叙述中正确的是______。 A、C程序中注释部分可以出现在程序中任意合适的地方 B、花括号"{"和"}"只能作为函数体的定界符 C、构成C程序的基本单位是函数,所有函数名都可以由用户命名 D、分号是C语句之间的分隔符,不是语句的一部分 69、以下选项中可作为C语言合法整数的是______。 A、10110BB、0386C、0xffaD、x2a2 70、以下不能定义为用户标识符的是______。 A、scanfB、VoidC、_3com_D、int 71、有以下程序 main() {inta;charc=10; floatf=100.0;doublex; a=f/=c*=(x=6.5); printf("%d%d%3.1f%3.1f\n",a,c,f,x);} 程序运行后的输出结果是______。 A、16516.5B、1651.56.5 C、1651.06.5D、2651.56.5 72、以下选项中非法的表达式是______。 A、0<=x<100B、i=j==0C、(char)(65+3)D、x+1=x+1 73、有以下程序 main() {inta=1,b=2,m=0,n=0,k; k=(n=b>a)||(m=a); printf("%d,%d\n",k,m);} 程序运行后的输出结果是______。 A、0,0B、0,1C、1,0D、1,1 74、有定义语句: intx,y;,若值11,变量y得到数值12,下面四组输入要通过scanf("%d,%d",&x,&y);语句使变量x得到数形式中,错误的是______。 A、1112<回车>B、11,12<回车> C、11,12<回车>D、11,<回车> 12<回车> 75、设有如下程序段: intx=2002,y=2003; printf("%d\n",(x,y)); 则以下叙述中正确的是______。 A、输出语句中格式说明符的个数少于输出项的个数,不能正确输出 B、运行时产生出错信息 C、输出值为2002 D、输出值为2003 76、设变量x为float型且已赋值,,则以下语句中能将x的值第三位四舍五入后,使数值保留到小数点后两位的是______。 A、x=x*100+0.5/100.0;B、x=(x*100+0.5)/100.0; C、x=(int)(x*100+0.5)/100.0;D、x=(x/100+0.5)*100.0; 77、以下叙述正确的是
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 语言 第一 二三章 习题