[其它]湖南工业大学2011级C语言网上随机作业题目答案.doc

上传人:音乐台 文档编号:1970190 上传时间:2019-01-27 格式:DOC 页数:59 大小:178.12KB
返回 下载 相关 举报
[其它]湖南工业大学2011级C语言网上随机作业题目答案.doc_第1页
第1页 / 共59页
[其它]湖南工业大学2011级C语言网上随机作业题目答案.doc_第2页
第2页 / 共59页
[其它]湖南工业大学2011级C语言网上随机作业题目答案.doc_第3页
第3页 / 共59页
亲,该文档总共59页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《[其它]湖南工业大学2011级C语言网上随机作业题目答案.doc》由会员分享,可在线阅读,更多相关《[其它]湖南工业大学2011级C语言网上随机作业题目答案.doc(59页珍藏版)》请在三一文库上搜索。

1、算法与程序设计1.将三个数排序需要比较_次 A、2 B、3 C、4 D、不确定 2.算法的表示方法有_ A、自然语言,传统流程图,N-S流程图,伪代码,计算机语言 B、高级语言,汇编语言,机器语言 C、C语言,QBASIC语言,InterDev D、图形图像法,描述法,编程法 E、计算机语言 3.算法的表示方法有_ 4.算法有哪些特性? 5.什么叫算法?为什么要提倡结构化算法?习题答案:1.B 2.A 3 自然语言,传统流程语言,N-S流程图,伪代码,计算机语言 4.略 5.略 C语言概述1C语言程序的基本单位是(A)。A、函数 B、过程 C、子程序 D、子例程 2.下列各选项中,合法的c语言

2、关键字是(D)。A、integex B、sin C、string D、void 3.下列选项中,是C语言提供的合法的关键字的是(C)A、swicth B、cher C、default D、Case 4.下列叙述不正确的是(B)A、在c程序中,是只能用于整数运算的运算符 B、在C程序中,无论是整数还是实数,都能正确无误地表示 C、若a是实型变量,c程序中a=20是正确的,因此实型变量允许被整型数赋值 D、在C程序中,语句之间必须要用分号“;”分隔 5.在C程序中,可以作为用户标识符的一组标识符是(B)。A、voiddefineWORD B、as_b3_224Else C、switch_welea

3、se D、4bDOSIG 6.下列不合法的十六进制数是(A)A、oxff B、0Xcde C、Oxll D、Ox23 7.在c语言中,下列合法的字符常量是(B)A、039 B、x76 C、ab D、o 8.以下选项中合法的用户标识符是(D)A、int B、a# C、5mem D、_243 9.(A)是构成c语言程序的基本单位A、函数 B、变量 C、子程序 D、语句 10.一个C语言程序总是从(B)开始执行A、主过程 B、主函数 C、子程序 D、主程序 11.以下叙述不正确的是(D) A、一个c源程序可由一个或多个函数组成 B、一个C源程序必须包含一个main()函数 C、c程序的基本组成单位是

4、函数 D、在C程序中,注释说明只能位于一条语句的后面 12.在C语言中,数字029是一个(D)A八进制数 B十六进制数 C十进制数 D非法数 13.C语言中的标识符只能由字母、数字和下划线3种字符组成,且第一个字符(C)。A必须为字母 B必须为下划线 C必须为字母或下划线 D可以是字母、数字和下划线中任意一种字符 14.C语言可执行程序的开始执行点是(C)A程序中的一条可执行语句 B程序中第一个函数 C程序中的main函数 D包含文件中的第一个函数 15.C程序是(B) A顺序执行 B从Main函数开始 C从函数体开始 D任意语句 16.C语言程序由(C )组成 A子程序 B过程 C函数 D主

5、程序段程序 17.以下说法中正确的是(C)。 A语言程序中是从第一定义的函数开始执行 B在语言程序中,要调用的函数必须在main()函数中定义 C语言程序总是从main()函数开始执行 D语言程序中的main()函数必须放在程序的开始部分 18.以下叙述正确的是(C) A、在C程序中,main函数必须位于程序的最前面 B、C程序的每行中只能写一条语句 C、C语言本身没有输入输出语句 D、在对一个C程序进行编译的过程中,可发现注释中的拼写错误 19.以下叙述不正确的是 (D )A一个C源程序可由一个或多个函数组成 B一个C源程序必须包含一个main函数 C、C程序的基本组成单位是函数 D在C程序

6、中,注释说明只能位于一条语句的后面 20.C语言规定,在一个源程序中,main函数的位置(C) A、必须在最开始 B、必须在系统调用的库函数的后面 C、可以任意 D、必须在最后 21. C源程序的基本单位是函数22.一个C源程序中至少应包括一个main函数22. 在一个C源程序中,注释部分两侧的分界符分别为/*,*/23. 函数体用花括号开始,用花括号结束。24. C程序执行过程生成的3种文件及扩展名为 源文件.cpp,目标文件.obj,可执行文件.exe25. C语言中的标识符只能由3种字符组成,它们是数字、字母和下划线27.一个C语言编写的程序是从main()函数开始执行。(3分) 28.

7、在c语言中,整数可用十进制、八_进制和十六进制3种数制表示29.一个c语言程序的开发过程包括:编辑、编译、连接和运行4个步骤。最简单的程序设计1.以下程序的输出结果是 main() int a=3; printf(%dn,(a+=a-=a*a); A、-6 B、12 C、0 D、-12 2.以下程序的输出结果是 main() char c=z; printf(%c,c-25); A、a B、Z C、z-25 D、y 3.以下程序的输出结果是 main() int a=5,b=4,c=6,d; printf(%dn,d=ab?(ac?a:c):(b); A、5 B、4 C、6 D、不确定 4.下

8、列程序执行后的输出结果是 main() char x=0xFFFF; printf(%d n,x-); A、-32767 B、FFFE C、-108 D、-32768 5.语句printf(abrehiyboun);的输出结果是 (说明:b是退格符) A、abrehiybou B、abrehiybou C、rehiyou D、abrehiybou 6.请读程序 int i =65536 printf(%dn,i); 上面程序的输出结果是_ A、65535 B、0 C、有语法错误,无输出结果 D、1 7.设x为int型变量,则执行以下语句后,x的值为 x=10; x+=x-=x-x; A、10

9、B、20 C、40 D、30 8.下面程序的输出是main() int x=023; printf(%dn,-x); A、17 B、18 C、23 D、24 9.以下程序的输出结果是 main() char str12=s,t,r,i,n,g; printf(%dn,strlen(str); A、6 B、7 C、11 D、12 10.语句:printf(%d n,12&12);的输出结果是 A、12 B、1 C、24 D、0 11.下面哪个是C语言中的正确赋值语句; A、a=1,b=2 B、i+; C、a=b=5 D、y=int(x) 12.执行程序段char str20=a,b,c,o; i

10、nt len=strlen(str); 变量len的值为( ) A、20 B、4 C、3 D、3或4或20 13.有以下程序 #include main() int a,b,c=246; a=c/100%9; b=(-1)&(-1); printf(%d,%dn,a,b); 输出结果是 A、2,1 B、3,2 C、4,3 D、 2,-1 14.已知字母A的ASC码为十进制的65,下面程序的输出是 main() char ch1,ch2; ch1=A+5-3; ch2=A+6-3; printf(%d,%cn,ch1,ch2); A、67,D B、B,C C、C,D D、不确定的值 15.以下程

11、序运行后,输出结果是 main( ) char s=abcde; s+=2; printf(%ldn,s); A、cde B、字符c的ASCII码值 C、字符c的地址 D、出错 16.若有以下定义和语句: char s1=12345,s2=1234; printf(dn,strlen(strcpy(s1,s2); 则输出结果是 A、4 B、5 C、9 D、10 17.请读程序片段(字符串内没有空格字符): printf(%dn, strlen(ATSn0121); 上面程序片段的输出结果是 A、11 B、9 C、10 D、8 18.以下程序的输出结果是 main() int x=10,y=10

12、; printf(%d %dn,x-,-y); A、10 10 B、9 9 C、9 10 D、10 9 19.请读程序: main() int A; float B, C; scanf(%2d%3f%4f,&A,&B,&C); printf(nA=%d,B=%f,C=%fn,A,B,C); 若运行时从键盘上输入9876543210(表示回车),则上面程序的输出结果是 A、 A=98, B=765, C=4321 B、A=10, B=765.000000, C=4321.000000 C、A=98, B=765.0, C=4321.0 D、以上答案都不正确 20.请读程序: main() int

13、 A; float B, C; scanf(%2d%3f%4f,&A,&B,&C); printf(nA=%d,B=%f,C=%fn,A,B,C); 若运行时从键盘上输入9876543210(表示回车),则上面程序的输出结果是 A、 A=10, B=765.000000, C=4321.000000 B、 A=10, B=765.000000, C=4321.000000 C、A=98, B=765.0, C=4321.0 D、以上答案都不正确 21.以下程序的输出结果是 main( ) int a=12,b=12; printf(%d %dn,-a,+b); A、10 10 B、12 12

14、C、11 13 D、11 10 22以下程序的输出结果是( )。 #include main() int x=1,y=0,a=0,b=0; switch(x) case 1: switch(y) case 0:a+;break; case 1:b+;break; case 2: a+;b+;break; case 3: a+:b A、a=1,b=0 B、a=2,b=1 C、a=1,b=1 D、a=2,b=2 23.下面的程序( ) #include main() int x=3,y=0,z=0; if(x=y+z)printf(”* * * *”); else printf(”#”); A、有

15、语法错误不能通过编译 B、输出* * * * C、可以通过编译,但是不能通过连接,因而不能运行 D、输出# 24.下列关于switch语句和break语句的结论中,正确的是( )A、break语句是switch语句中的一部分 B、在switch语句中可以根据需要使用或不使用break语句 C、在switch语句中必须使用break语句 D、break语句只能用于switch语句中 25.输入一个华氏温度,要求输出摄氏温度。计算公式为: c=5/9(F-32),以下程序正确的是() A、main() float c,F; scanf(%f,%f,&c,&F); c=5/9*(F-32); pri

16、ntf(摄氏温度是:%fn,c); B、main() float c,F; scanf(%f,%f,&c,&F); c=5*(F-32)/9; printf(摄氏温度是:%fn,c); C、main() float c,F; scanf(%f,%f,&c,&F); c=5%9*(F-32); printf(摄氏温度是:%fn,c); D、main() float c,F; scanf(%f,%f,&c,&F); c=5.0/9.0(F-32); printf(摄氏温度是:%fn,c); 26.若想通过以下输入语句使a中存放字符串1234,b中存放字符5,则 输入数据的形式应该是 _ 。 cha

17、r a10,b; scanf(a=%s b=%c,&a,&b); printf(%s,%cn,a,b); 27.标准库函数_在屏幕上显示信息 28.main( ) char st=A; int i=10; st=st+i;i=st%i; printf(%C,%dn,st,i); 已知字母A的ASCII码为65 结果:_ 29.以下程序的输出结果是_ main() int a=177; printf(%on,a); 30以下程序输出的结果是_ main() int a=5,b=4,c=3,d; d=(a b c); printf(%dn,d); 31.以下程序段的输出结果是_ includest

18、dio.h void main() int a=0234; printf(%-3d,%-6d,*%-06d,*%06d,%06dn,a,a,a,a,a); 32.使用强制转换方法将正整数转换成字符。本题程序如下: include stdio.h void main() char c;int I; scanf(%d,&I); c=(%c的ASCII码为%dn,c,I); 本程序的执行结果为_ 33.以下程序不用第三个变量,实现将两个数进行对调操作: #include main() int a , b ; scanf (%d%d , &a , &b); printf(a=%d b=%dn , a

19、, b ); a=(_); b=(_); a=(_); printf(a=%d b=%dn,a,b);34.当a=l,b=2,c=3时,以下语句执行后a、b、c中的值分别为、。 if(ac) b=a;a=c;c=b; 35.若从键盘输入58,则以下程序输出的结果是 #include main() int a; scanf(”d”,&a); if(a50)prinff(”d”,a); if(a40)prinff(”d”,a); if(a30)printf(”d”,a); 36.设a、b、c为整型数,且a=2,b=3,c=4,则执行完语句a*=16+(b+)-(+c);后,a的值是37.以下程序的

20、输出结果是 #include main() int x=2,y=-1,z=2; if(x if(y else z+=1: printf(”dn”,z); 习题答案:1.D 2.A 3.C 4.C 5.C 6.B 7.B 8.B 9.A 10.B 11.B 12.B 13.A 14.A 15.D 16.A 17.B 18.D 19.D 20.D 21.C 22.B 23.D 24.B 25.B 26.a=1234 b=5 27.printf 28.k,5 29.261 30.0 31.156,*156 ,*000156,%06d 32.a的ASCII码为9733.a+b,a-b,a-b 34.3

21、 2 2 35.58585836.28 37.2数据类型和标识符1. 执行下列程序时输入:123456789,输出结果是 main() chars100;intc,i; scanf(%c,&c);scanf(%d,&i);scanf(%s,s); printf(%c,%d,%sn,c,i,s); A、123,456,789 B、1,456,789 C、1,23,456,789 D、1,23,456 2.在C语言中,不正确的int类型的常数是 ( )A、32768 B、0 C、037 D、0xAF 3.若变量a是int类型,并执行了语句:a=A+1.6;,则正确的叙述是()A、a的值是字符C B

22、、a的值是浮点型 C、不允许字符型和浮点型相加 D、a的值是字符A的ASCII值加上1 4.在C语言中,合法的长整型常数是()A、OL B、4962710 C、324562& D、216D 5.假定x和y为double型,则表达式x=2,y=x+3/2的值是()A、3.500000 B、3 C、2.000000 D、3.000000 6.以下选项中,非法的字符常量是() A、t B、17 C、n D、xaa 7.下列变量定义中合法的是 ()A、short_a=1-.le-1; B、doubleb=1+5e2.5; C、longdo=0xfdaL; D、float2_and=1-e-3; 8.下

23、列变量名合法的是() A、#1 B、$567 C、a-b D、m_number 9.请选出可用作C语言用户标识符的一组标识符()A、Void-defineWORD B、a3_b3_123IF C、For-abcCase D、2aDosizeof 10.C语言提供的合法的数据类型关键字是: ()A、Double B、short C、integer D、Char 11. 若有以下定义: chara;intb; floatc;doubled; 则表达式a*b+d-c值的类型为()A、float B、int C、char D、double 12.在C语言中(以16位PC机为例),5种基本数据类型的存储

24、空间长度的排列顺序为()A、charintlongint=floatdouble B、char=intlongint=floatdouble C、charintlongint=float=double D、char=int=longint=floatdouble 13.假设所有变量均为整型,则表达式(a=2,b=5,b+,a+b)的值是()A、7 B、8 C、6 D、2 14.下列四组选项中,均不是C语言关键字的选项是()A、defineIFtype B、getccharprintf C、includescanfcase D、whilegopow 15.C语言中的标识符只能由字母,数字和下划线

25、三种字符组成,且第一个字符 ()A、必须为字母 B、必须为下划线 C、必须为字母或下划线 D、可以是字母,数字和下划线中任一字符 16.下面四个选项中,均是合法整型常量的选项是 ()A、160-0xffff011 B、-0xcdf01a0xe C、-0x46a2e50x D、-0x48a2e50x 17.下面四个选项中,均是不合法的整型常量的选项是()A、-0f1-0xffff0011 B、-0xcdf01712,456 C、-0189995e2 D、-0x48eg-06803f 18.下面四个选项中,均是不合法的浮点数的选项是()A、160.0.12e3 B、1232e4.2.e5 C、-.

26、18123e40.0 D、-e3.2341e3 下面正确的字符常量是()A、c B、 C、W D、 20.下面四个选项中,均是正确的八进制数或十六进制数的选项是()A、-100x8f-011 B、0abc-0170xc C、0010-0x110xf1 D、0a12-0x123-0xa 21.以下正确的叙述是 ()A、在C程序中,每行中只能写一条语句 B、若a是实型变量,C程序中允许赋值a=10,因此实型变量中允许存放整型数 C、在C程序中,无论是整数还是实数,都能被准确无误地表示 D、在C程序中,%是只能用于整数运算的运算符 22.设有说明:charw;intx;floaty;doublez;

27、则表达式w*x+z-y值的数据类型为()A、float B、char C、int D、double 23.字符型常量在内存中存放的是该字符对应的()A、ASCII代码值 B、BCD代码值 C、内码值 D、十进制代码值 24.以下关于字符串的不正确说法是()A、字符串长度就是字符串中字符的个数 B、字符串的尾部会自动追加一个字符串结束标志 C、字符串的长度为字符个数加1 D、在C语言中常用字符型数组来存放字符串 25.C语言中,double类型数据占()个字节,char类型数据占( )个字节A、1 B、2 C、4 D、8和1 26.C语言中最简单的数据类型是_、_、 _27.设有以下变量定义,并

28、已赋确定的值 charw;intx;floaty;doublez; 则表达式:w*x+z-y所求得的数据类型为_ 28.在C语言中(以16位PC机为例),一个char型数据在内存中所占的字节数为_;一个int型数据在内存中所占的字节数为_29.在C语言中(以16位PC机为例),一个float型数据在内存中所占的字节数为_;一个double型数据在内存中所占的字节数为_30.表达式8/4*(int)2.5/(int)(1.25*(3.7+2.3)值的数据类型为_31.表达式pow(2.8,sqrt(double(x)值的数据类型为_32.设C语言中,一个int型数据在内存中占2个字节,则int型

29、数据的取值范围为_习题答案:1.D 2.A 3.D 4.A 5.D 6.C 7.A 8.D 9.B 10.B 11.D 12.A 13.B 14.A 15.C 16.A 17.D 18.B19.C 20.C 21.D 22.D 23.A 24 A 25.D 26.整型 实型 字符型27.double 28.1,2 29.4,8 30.int 31.double 32. -32768至32767位运算1.表达式0x13|0x17的值是 (B)A、0x13 B、0x17 C、0xE8 D、0xc8 2.表达式0x130x17的值是(A)A、0x04 B、0x13 C、0xE8 D、0x17 3.表

30、达式0x13的值是(A)A、0xFFEC B、0xFF71 C、0xFF68 D、0xFF17 4.表达式0x130x17的值是(A)A、0x04 B、0x13 C、0xE8 D、0x17 5.表达式0x13&0x17的值是 (B)A、0x17 B、0x13 C、0xf8 D、0xec 6.若a=1,b=2则a|b的值是(D)A、0 B、1 C、2 D、3 7.若有以下程序段: intx=1,y=2; x=xy; y=yx; x=xy; 则执行以上语句后x和y的值分别是(C)A、x=1,b=2 B、x=2,y=2 C、x=2,y=1 D、x=1,y=1 8.若有运算符,sizeof,&=,则它

31、们按优先级由高至低的正确排列次序是(B)A、sizeof,&=, B、sizeof,&= C、,sizeof,&= D、,&=,sizeof 9.若x=2,y=3则x&y的结果是(B)A、0 B、2 C、3 D、5 10. 请读程序片段: unsignedt=129; t=t00; printf(%d,%on,t,t); 以上程序片段的输出结果是(B)A、0,0 B、129,201 C、126,176 D、101,145 11.请读程序片段: intx=20; printf(%dn,x); 上面程序片段的输出结果是(C)A、02 B、-20 C、-21 D、-11 12.请读程序片段: cha

32、rx=56; x=x&056; printf(%d,%on,x,x); 以上程序片段的输出结果是(C)A、56,70 B、0,0 C、40,50 D、62,76 26. 在C语言中,要求运算数必须是整型或字符型的运算符是(B)A、& B、& C、! D、| 14.在执行完以下C语句后,B的值是 charZ=A; intB; B=(241&15)&(Z|A); (B)A、0 B、1 C、TRUE D、FALSE 15.设有以下语句inta=1,b=2,c;c=a(b2)/(b1)的值是(D)A、0 B、2 C、4 D、8 18.以下程序的功能是进行位运算main()unsignedchara,b

33、;a=73;b=4&3;printf(%d%dn,a,b);程序运行后的输出结果是(A)A、43 B、73 C、70 D、40 19.有以下程序main()unsignedchara=2,b=4,c=5,d;d=a|b;d&=c;printf(“%dn”,d);程序运行后的输出结果是(B)A、3 B、4 C、5 D、6 20.有以下程序main()unsignedchara,b;a=4|3;b=4&3;printf(“%d%dn”,a,b(;执行后输出结果是(A)A、70 B、07 C、11 D、430 21.设c为一个字符,且(C3)&C0为真,则C的字符代码是01000001。22.八位二

34、进制补码能表示的最大十进制数为+127或-128 23.设有chara,b;若要通过a&b运算屏蔽掉a中的其它位,只保留第2位和第8位(右起为第1位),则b的二进制是 10000010运算符和表达式 1.假定w、x、y、z、m均为int型变量,有如下程序段: w=1; x=2; y=3; z=4; m=(wX)?W: X; M=(MY)?M:Y; M=(MZ)?M: Z; 则该程序运行后,m的值是: A、4 B、3 C、2 D、1 2.若希望当A的值为奇数时,表达式的值为“真”,A的值为偶数时,表达式的值为“假”,则以下不能满足要求的表达式是 A、A%2

35、=1 B、!(A%2=0) C、!(A%2) D、 A%2 3.若变量已正确说明为float类型,要通过语句scanf(%f %f %f ,&a,&b,&c);给a赋于10.0,b赋予22.0,c赋予33.0,不正确的输入形式是: A) 10 B) 10.0,22.0,33.0 22 33 C) 10.0 D) 10 22 22.0 33.0 33 A、A B、B 4.C语言中运算对象必须是整型的运算符是 A、 %= B、/ C、= D、= 5.若已定义x和y为double类型,则表达式x=1,y=x+3/2 的值是 A、1 B、2 C、2.0 D、2.5 6.下列程序执行后的输出结果是(小数

36、点后只写一位) main() double d; float f; long l; int i; i=f=1=d=20/3; printf(%d %ld %f %f n, i,l,f,d); A、6 6 6.0 6.0 B、6 6 6.7 6.7 C、6 6 6.0 6.7 D、6 6 6.7 6.0 7.设有以下定义: int x=10,y=3,z; 则语句 printf(%dn,z=(x%y,x/y) 的输出结果是_ A、1 B、0 C、4 D、3 8.若已定义x和y为double类型,则表达式:x=1,y=x+3/2的值是_ A、1 B、2 C、2.0 D、2.5 9.设 int b=2

37、;表达式b/(b*2)的值是_A、0 B、0.5 C、0.500000 D、0.000000 10.设int x=5,y=4,(-x=y+)? -x::+y的值是: A、5 B、3 C、4 D、6 11.下面的表达式中_满足:当x为偶数时值为“真”,为奇数时值为“假” A、x%2=0 B、!x%2!=0 C、2*x/2-x=0 D、!(x%2) 12.设有如下定义: int a=1,b=2,c=3,d=4,m=2,n=2; 则执行表达式:(m=ad)后,m的值为_A、1 B、2 C、3 D、0 13.设x、y、z和k都是int型变量,则执行表达式: x=(y=4,z=16,k=32)后,x的值为_A、4 B、16 C、32 D、52 14.设有a=b=c=2,求表达式a+b+c+的结果是_ A、6 B、9 C、8 D、表达式出错 15.以下定义和语句: char cl=b,c2=e; printf(

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1