2020西安交大网络继续教育《程序设计基础》试题及答案_第1页
2020西安交大网络继续教育《程序设计基础》试题及答案_第2页
2020西安交大网络继续教育《程序设计基础》试题及答案_第3页
2020西安交大网络继续教育《程序设计基础》试题及答案_第4页
2020西安交大网络继续教育《程序设计基础》试题及答案_第5页
已阅读5页,还剩6页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、程序设计基础一、单选题1. 以下选项中,与k = n+完全等价的表达式是(A)A: k=nn=n+1B:n= n+1 , k= nC: k=+nD:k+ = n+12. 结构体类型的定义允许嵌套是指(A)A:成员是已经或正在定义的结构体型B: 成员可以重名C: 结构体型可以派生D: 定义多个结构体型3. 函数 rewind 的作用是( A)A 使位置指针重新返回文件的开头B:将位置指针指向文件中所要求的特定位置C:使位置指针指向文件的末尾D: 使位置指针自动移至下一个字符位置4. 下列程序的输出结果为( A )main(int m=7,n=4; floata=38.4,b=6.4,xx=m/2

2、+n'a/b+1/2; print("%fn",X),A:27B:27.5C:28D:28.55. char a = Thisisaprogram. 输出前 5 个字符的语句是( A )A: printf(%.5s,a)B: puts(a)C: printf("%s,a)D: a5"2=0: puts(a)6. 若有 intp-(nt) malloc( sizeof(n): 则向内存申请到内存空间存入整数 123 的语句为( A) A: scanf(%od",p)B: scanf(%d",&p)C: scanf(&qu

3、ot;d",p)D: scanf(%d,""p)7. 若使用一维数组名作函数实参,则以下正确的说法是(A)A:必须在主调函数中说明此数组的大小B: 实参数组类型与形参数组类型可以不匹配C:在被调用函数中,不需要考虑形参数组的大小D: 实参数组名与形参数组名必须一致8. 以下标识符中,不能作为合法的C 用户定义标识符的是( A)A: putcharB: doubleC:123D:INTE9. 设有如下定义 StrUCts(int a , float b: data , Z P若要使指向da中的a域,正确的值语句是(A) A: p=(structs")&am

4、p;data. aB: P=(strUCts")data. aC: P=&data.aD: P=data. a10. 应用缓冲文件系统对文件进行读写操作,关闭文件的函数名为(A)A: fCloseB: Close()C: freadD: fwrite11. 若用数组名作为函数的实参,传递给形参的是( A)A: 数组的首地址B: 数组第一个元素的值C: 数组中全部元素的值D. 数组元素的个数12. 要打开 A 盘上 User 子目录下名为 abC.txt 的文本文件进行读、写操作,下面符合此要求的函数调用是( A)A: foPen("A. lUserabC. xt&q

5、uot;, "")B: foPen("A. llUserlabC txt","r+)C: foPen("A. lUserabC bxt", rb)D:foPen(AUserllabC txt"," w)13. 凡是函数中未指定存储类别的局部变量,其隐含的存储类别为(A)A: 自动 (aUto)B: 静态 ( statiC)C: 外部 ( extern)D: 寄存器 ( ( register )14. 以下语句中,不能实现回车换行的是( B)A: Printf("nB:PUtChar( n)C:

6、fPrintf(stdoUt, "n")D: fwrite("n", 1, 1, stdoUt)15. 以下程序的输出结果是( B)main( CharS- " 123 , Z PiP = s; Printf " oc % c% Cn " Z p+ Z p+ )A:123B:321C. -213D. 31216. C 语言中,定义结构体的保留字是(B)A: UnionB: strUctC:enUmD: tyPedef17. 以下正确的说法是( B)A: 用户若需调用标准库函数,调用前必须重新定义B:用户可以重新定义标准库函数

7、,若如此,该函数将失去原有含义CC:系统根本不允许用户重新定义标准库函数D: 用户若需调用标准库函数,调用前不必使用预编译命令将该函数所在文件包活到用户源文件中, 系统自动去调18. 下列程序段的输出结果为( B)。Float k = 0.8567 SPrintf( "% 06.1d %" k100A:0085.6%B:0085.7%C:00856%D:85719. 在调用函数时,如果实参是简单变量,它与对应形参之间的数据传详方式是( B)A: 地址传递B: 单向值传递C: 由实参传给形参,再由形参传回实参D: 传递方式由用户指定20. 若X= 2y = 3则x&y

8、的结果是(B)。A.0B:2C:3D:-521. 下列程序的输出结果是(B)O main(Char c1 = 97, c2 = 98;Pini( " % d%C" c1c2) A.9798B: 97bC.a98D: ab22. 抗行以下程序段后,输出结果和的值是(B)O nta=10 Printf( %od, a+A:10 和 10B:10 和 11C:11 和 10D:18 和 1123. 设C语言中,int型数据占2个字节,则short类型数据占(B)。A:1 个字节B:2 个字节C:4 个字节D:8 个字节24.inta10 = 1 , 2, 3, 4, 5, 6,

9、7, 8); intZ P; P = ,&a : 5p;-3的值是(B)A:2B:3C:4D: 不一定25.25、若有下列定义和语句,则对a数组元素的非法引用是(B )。it a23 , (*Pt)3; Pt=aA: PttojrojB:* (pt+1 )2C:"(pt1+2)D: * (a/+226. 设 it X = 1, y = 1 ;表达式(! xlly-)的值是(B)A:0B:1C:2D:-127. C 语言中的文件类型只有( B)B:ASCII 文件和二进制文件两种C:文本文件一种D: 二进制文件一种28. 若二维数组 a 有 m 列,则在 aij 前的元素个数为

10、( B)。 A:j*m+1B: i*m+jC:i*m+j-1D:i*m+j+129. 以下只有在使用时才为该关型变量分配内存的存储类说明是( B)A:auto 和 staticB:auto 和 registerC:registe 和 IstaticD:extem 和 register30. 对以下说明语句 int a10 = 6, 7, 8, 9, 10的正确理解是( B)A:将5个初值依次赋给a1至a5B: 将 5 个初值依次赋给 a0 至 a4C: 将 5 个初值依次赋给 a6 至 a10D: 因为数组长度与初值的个数不相同,所以此语句不正确31. 下列程序的输出结果是( B)。main(

11、)intx = 1, y=0, a= 0, b=0 switch(X(case0. a+break; case1. b+: break: )case2.a+ b+ break: case3. aA: a=1,b=0B:a=2,b=1C:a=1 , b= 1D:a=2, b=232. C 语言中,要求运算数必须是整型的运算符是(B)。A:aB:% C:!D:>33. 下列四个选项中,均是 C 语言关键字的选项是( B)。A:auto 、enum 、 includeB: switch 、typedef 、 continueC:signed 、 union 、scanfD: if 、 stru

12、ct 、 type34. 以下数值中,不正确的八进制或十六进制数是(C)。A: 0x16B: 16C:-16D: 0 ×aaaa35. fgets(str , n , fp)函数从文件中读入一个字符串,以下正确的叙述是(C)。A:字符串读入后不会自动加入0'B:fp 是 file 类型的指针C: fgets 函数将从文件中最多读入 n-1 个字符 D:fgets 函数将从文件中最多读入 n 个字符36. 用户定义的函放不可以词用的函数是( C)。A: 非整型返回值的B: 本文件外的C:main 函数D: 本函数下面定义的37. 若有int i = 3, *p;P = &

13、;i;下列语句中输出结果为3的是(C)。A: printf("%d",&p);B: printf("%d" ,*i) ;C: printf("%d",*p ) ;D: printf("%d",p ) ;38. 设变量a是整型,f是实型,i是双精度型,则表达式 1O+"a"+i*f值的数据类型为(C)A:intB: floatC: doubleD: 不确定39. 已知函数的调用形式 fread( buffer , SiZe , COUnt , fp);其中buffer代表的是(C )。A:

14、 个整数,代表要读入的数据项总数B: 一个文件指针,指向要读的文件C: 一个指针,指向要读入数据的存放地址D: 一个存储区,存放要读的数据项40. 以下叙述正确的是 (C)。A: 在 C 程序中, main 函数必须位于程序的最前面B:C 程序的每行中只能写一条语句C:C 语言本身没有输入输出语句D:在对一个C程序进行编译的过程中,可发现注释中的拼写错误41. 若 fp 是指向某文件的指针,且已读到此文件末尾,则库函数 feOf(fp) 的返回值是 (C)。A:EOFB:0C: 非零值D:NULL42. 以下的选择中,正确的赋值语句是 (C )。A:a = 1, b = 2B:j+C: a=b

15、=5D: y=int(x )43. 以下叙述中错误的是( D)。A: 二进制文件打开后可以先读文件的末尾而顺序文件不可以B: 在程序结束时应当用 fclose 函数关闭已打开的文件C: 在利用 fread 函数从二进制文件中读数据时,可以用数组名给数组中所有元素读入数据D: 不可以用 FILE 定义指向二进制文件的文件指针44. C 语言中要求对变量作强制定义的主要理由是 (D )。A: 便于移植B: 使于写文件C: 便于编辑预处理程序的处理D: 便于确定类型和分配空间45. 以下程序的运行结果是 (D)。main()it i = 1 , SUm = 0; while (i<10 ) S

16、Um = sum+1 ;A: i=10 , sum=9B: i=9 , SUm=9C: i=2 , SUm=1D :运行出现错误46. 在 C 语言中,能代表逻辑值 "真的是 (D)。A: TrUeB: 大于 0 的数C: 非 0 的整数D: 非 0 的数47. 若有说明 int a34; 则 a 数组元素的非法引用是( D)。A: a02*1B: a13C:a4-20D:a0448. 在 C 语言中, char 型数据在内存中的存储形式是 (D)。A: 补码B: 反码C: 原码D:ASCII 码49. 以下运算符中,优先级最高的运算符是 (D)。A: =B: !=C: *(乘号 )

17、D:()50. 若有 inta10 = 0 , 1 , 2, 3, 4, 5, 6, 7, 8, 9 , *p = a;则输出结果不为 5 的语句为(D) A: printf("%d", ( a+5);B: printf("%d", p5);C: printf("%d, *(p+5);D: printf("%d" , *p5);51. 设有说明 .51.设有说明 .char w;int x; float y; double z; 则表达式 w*x+z-y 值的数据类型为 (D) A: floatB: charC: intD:

18、 double52. 函数的形式参数隐含的存储类型说明是(D)。A:externB: staticC: registerD: auto53. 下面有关 for 循环的正确描述是 (D)。A:for 循环只能用于循环次数已经确定的情况B:for 循环是先执行循环循环体语句,后判断表达式C: 在 for 循环中,不能用 breaks 语句跳出循环体D:for 循环的循环体语句中,可以包含多条语句,但必须用花括号括起来二、多选题1. 下面哪些为合法整型常量( ABC )。A:190B:0xfC:765D:0xk2. C 语言中三种基本的类型为( ABC )。A: intB: charC: float

19、D: struct3. 以下选顶中合法的表达式是( ABC )。A:0<=x<100B:i=j=0C:(char)(65+3)D:x+1 = x+14. 下列为 C 语言的关键字是 (ABC )。A:ifB: structC: unionD: Int5. 以下叙述中正确的是 (ABC )。A: 一个 C 源程序可由一个或多个函数组成B: 一个 C 源程序必须包含一个 man() 函数C:C 源程序的基本组成单位是函数D:在C源程序中,注释说明只能位于一条语句的最后6. 关于 while 语句与 do- while 语句,以下正确的是 (ABC )。A: while 是当型结构B:d

20、o- while 是直到型结构C. 两者有区别D: 两者无区别(ABC)。7. 设有以下定义int a=0;double b = 1.25; Cha rc ='A:#defined2 则下面语句中正确的是 A:a+;B:b+;C:C+;D:d+;8. 以下 4个选项中,可以看作是一条语句的有(ABC )。A:;B:a=0,b=0,=0;C: if(a>0);D:if(b=0)m=1;n=2;9. 以下 4个选项中,可以看作是一条语句的有(ABC )。A:;B:a=0,b=0,=0;C: if(a>0);D:if(b=0)m=1;n=2;10. 以下叙述中正确的是 (ABC

21、)。A: 一个 C 源程序可由一个或多个函数组成B: 一个C源程序必须包含一个 man()函数C:C 源程序的基本组成单位是函数D:在C源程序中,注释说明只能位于一条语句的最后11. 以下叙述正确的是 (ABCD)。A:C 语言严格区分大小写英文字母B:C 语言用 ;作为语句分隔符C:C 程序书写格式自由,一行内可以写几个语句,一个语句也可以写在几行上D:可以使用/* */对C程序中的任何部分作注释12. 正确的 if 语句形式是 (ABD )。A: if(x>y&&x!=y);B:if(x=y)x+=y;C:if(x!=y)sCanf("%d",&a

22、mp;x)elsesCanf"%d",&y);D:if(x<y)x+;y+;13. 以下对 switCh 语句和 break 语句中描述错误的有 (ABD )。A在SWitCh语句中必须使用 break语句B: break 语句只能用于 switCh 语句C:在SWitCh语句中,可以根据需要使用或不使用break语句D:break 语句是 switCh 语句的一部分(ABD )。14. 若a, b, c, d都是int型变量且初值为O,以下选项中正确的赋值语句是 A:a=b=c=d=100;B:d+;C: c+b;D:d=(c=22)-(b+);15. 以下

23、不符合 C 语言语法的实型常量是 (ABD )。 A:1.2EO.5B:3.14.159EC:OD: E1516. 以下关于数组描述错误的是 (ABD )。A:数组的大小是固定的,但可以有不同的类型的数组元素B: 数组的大小是可变的,但所有数组元素的类型必须相同C: 数组的大小是固定的,所有数组元素的类型必须相同D:数组的大小是可変的,可以有不同的类型的数组元素17. 合法的标识符 (AC)。A: 可以由字母构成B: 第一个字母可以为数字C: 第一个字母可以为下划线D :最后一个字母必须为字母18. 以下不合法的赋值语句( ACD)。A:x=y=1OOB:d-;C: x+y;D: c=int(

24、a+b);19. 以下选项中不合法的字符常量是 (ACD )。A: BB:'O1O'C:68D: D20. 若以下选项中的变量已正确定义,则不正确的赋值语句是(AD )。A:x1=26.8%3B:X = 3*x+xC:x3 = 0x12D:x4=1+2=3;21. 对 do-while 语句描正确的是( AD )。A:do- while 语句构成的循环可以使用 break 语句退出循环B:do- while 语句构成的循环必须使用 break 语句退出循环C:do- while 语句构成的循环,当 while 中的表达式值为非零时结束循环 D:do- while 语句构成的循环

25、,当 while 中的表达式值为零时结束循环22. 以下合法的十六进制数是( BC)。A: oxffB: 0XabcC:0x01D: 0X9X23. 以下说法正确的是 (BC )。A:C 语言里有字符串变量B:C 语言里没有字符串变量C:C 语言里有字符变量D:C 语言里没字符变量24. 以下合法的十六进制数是 (BC )。A: oxffB: 0XabcC:0x01D: 0X9X25. 关于for(表达式1,表达式2 ,表达式3)循环以下正确的是(BCD )。A:三个表达式都不可省略B:表达式1可以省略C: 表达式 2 可以省略D: 表达式 3 可以省路26. 有定义语句:int x,y;若要

26、通过scanf( "% d,% d",&x , &y)语句使变量X得到数值11 ,变量y得到 数值 12,下面四组输入形式中,正确的有( BCD)。A:1112 V 回车B:11 ,空格12回车C:11 , 12 V 回车D:11 V回车 12 V回车27. 下面有关 or 循环的正确描述是( CD)。A:for 循环只能用于循环次数已经确立的情況B:for 循环先执行循环体语句后判断表达式C: 在 for 循环中能用 breaki 语句跳出循环体D:for 循环的循环体语句中可以包含多条语句但必须用花括号括起来28. 以下描述错误的是 (CD)。A: co

27、ntinue 语句的作用是重新开始一次循环体的执行B: 只能在循环体内和 switch 语句体内使用 break 语句C: 在循环体内使用 break 语句和 continue 语句的作用相同D :从多重循环嵌套中退出是,只能使用 goto 语句三、判断题1. 有 UnSigned int a = 16 ; a = a2;贝U a 的值是 64 °()2. 表达式'a'和"a"是不同的,前者长度为1 ,后者长度为2°()3. 自增自減运算符+,-可以用于int型、float型和double型资料。()4. 一个 C 源程序只能有一个 main() 函数。( )5. C 中的变量必须 "先定义,后使用 ",函数也不例外。( )6. 有 UnSigned int a = 16 ; a=>>2 ;贝卩 a 的值是 4°()7. C语言既可以用来写系统软件,也可以用来写应用软件。()8. 在某种意义上, char 和 int 通用。 ()9. C 语言可以直接访问物理位元元址。()10. 在 C 中能代表逻辑值 "假"的是 0。 ()11. 用数组名作为实参时,把实

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论