C期末考试复习题_第1页
C期末考试复习题_第2页
C期末考试复习题_第3页
C期末考试复习题_第4页
C期末考试复习题_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

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

文档简介

1、(1)inta4=5,3,8,9 ;3的值是(d)。A.5B.3C.8D.9(2)在以下四个数组定义中,(d)是错误的。a . inta7;B.int n=5;长n;c . charc5;D.intn,d7;(3)初始化字符数组;表格有误。A.charc1=1,2,3 ;b . char C2=123;C.charc310=1,2,3,0。d . char C4= 123 ;(5)在数组中,数组名表示(a)。A.数组的第一个元素的第一个地址C.数组d所有元素的第一个地址。数组最后一个元素的第一个地址(6)如果存在以下数组描述,则具有最小值和最大值的元素下标分别为(b)。inta12=1,2,3

2、,4,5,6,7,8,9,10,11,12 ;A.1,12B.0,11C.1,11D.0,12(7)如果给出以下描述,值为4的表达式为(d)。inta12=1,2,3,4,5,6,7,8,9,10,11,12 ;charc=a ,d=4,g=3ag-cB.a4C.ad-cD.ad-c(8)它被定义为字符12=字符串;然后printf(“% d n”,strlen(s);的输出是(a)。A.6B.7C.11D.12(9)定义:字符12=字符串;然后printf(“% d n”,大小为(s);的输出是(d)。A.6B.7C.11D.12(10)数组的法律定义是(a)。A.chara=字符串;B.i

3、nta5=0,1,2,3,4,5。C.chara= stringD.chara=0,1,2,3,4,5(11)下列程序中的哪一行有错误(d)。#包括main()浮动数组5= 0.0 ;/a行inti对于(I=0;i5;(I)scanf(“% f”,数组I);对于(I=1;i5;(I)数组0=数组0数组I;/b行printf(“% f n”,数组0);/行cA.甲线乙线丙线丙线编号(12)以下哪一项是给字符串(c)赋值或赋值初始值的错误方式?字符*字符串;str= stringB.charstr7=s,t,r,I,n,g ;c . charst R110;str1= stringD.charst

4、r1=string ,str 2= 12345678 ;(13)如果有以下解释和陈述,哪一项(c)是输出结果?(strlen(s)是字符串长度的函数)chars12=abook!;printf(“% d”,strlen(s);A.12B.8C.7D.11(14)如果有以下指令和语句,输出结果为(c)。charstr= c : ABC . dat ;printf(“% s”,字符串);A.有非法字符 b . c : ABC . dat c . c : ABC . dat d . c : ABC . dat (15)如果有以下陈述,以下是正确的描述。charx= 123456 ;chary=1,2

5、,3,4,5,6 ;(二)数组的长度与数组的长度相同。x数组的长度大于y数组的长度。数组的长度小于数组的长度。数组和数组的赋值是非法的。(16)在c语言中,当引用数组元素时,数组下标的数据类型被允许为。Ca)整数常数b)整数表达式c)整数常数或整数表达式d)任何类型的表达式(17)下面对一维整数数组a的正确描述是。Da)inta(10);B)int n=10,an;c)整数。d)#定义尺寸10scanf(%d ,n);int aSIZE;int an;(18)如果有任何解释:int a10;对数组元素的正确引用是。Ca)a10B)a3.5C)a(5)D)a10-10(19)在C语言中,一维数组

6、的定义是:类型描述符数组名;(三)整数常量表达式整数常数或整数表达式D常数(20)以下语句可以正确初始化一维数组a。(三)A)int a10=(0,0,0,0,0);b)int a10= ;C)int a=0。d)int a10= 10 * 1 ;(21)如果以下程序中只有一个错误,则为(每个程序前面的数字表示行号)。(一)1主()2 3浮动a3= 3 * 0 ;4国际;5表示(I=0;i3;i ) scanf(%d ,aI);6对于(I=1;i3;I)a0=a0aI;7 printf(%dn ,a0);8 a)第3行有错误b)第7行有错误c)第5行有错误;d)没有错误(22)以下程序中出现错

7、误9*/的行是(每行前面的数字表示行号)。(四)1主()2 3浮动a3= 1 ;4国际;5 scanf(%d ,a);6表示(I=1;i3;I)a0=a0aI;7 printf(“a0=% d n”,a0);8 甲)3乙)6丙)7丁)5(23)下列程序(每个程序前面的数字表示行号)。(四)1主()2 3浮动a3= 0 ;4国际;5表示(I=0;i3;i ) scanf(%f ,aI);6表示(I=1;i4;I)a0=a0aI;7 printf(%fn ,a0);8 a)没有错误b)第3行有错误c)第5行的误差d)第6行的误差(24)正确理解以下陈述是。(二)int a10=6,7,8,9,10

8、 ;a)依次给a1和a5分配五个初始值b)依次给a0和a4分配五个初始值c)依次给a6和a10分配五个初始值这种说法是不正确的,因为数组长度不同于初始值的个数1.变量的指针,其含义是指_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _。a)值b)地址名字一个标志2.如果有语句int *point,a=4;点=a。下面的选项集,每个代表一个地址,是_D_。a)a点,*a b)*a点,*a点c)*点,*点

9、,a)d)a,*点,点3.如果有描述;int *p,m=5,n;下列正确的程序是_ _ _ _ _ D _ _ _ _ _。a)p=n;b)p=n;scanf(“% d”,p);scanf(“% d”,* p);c)scanf(“% d”,n);d)p=n;* p=n;* p=m;4.在下面的程序中,调用scanf函数向变量A输入数值的方法是错误的,错误的原因是_ _ _ _ _ b _ _。main()int *p,*q,a,b;p=a。printf(“输入a :”);scanf(%d ,* p);A)*p代表指针变量p的地址。B)*p代表变量a的值,而不是变量a的地址。C)*p代表指针变量

10、p的值。D)*p只能用来表明p是一个指针变量5.有变量定义和函数调用语句:int a=25打印值(a);下列函数的正确输出是_D_。无效打印值(int *x) printf(%dn ,* x);a)23b)24 c)25 d)266.如果有描述:长*p,a;那么不能通过scanf语句正确读取输入项数据的程序段就是一个。A) *p=a。scanf(“% LD”,p);B) p=(长*)malloc(8);scanf(“% LD”,p);c)扫描f(“% LD”,p=a);d)扫描(“%ld”,a);7.有以下程序#包括main() int m=1,n=2,*p=m,*q=n,* r;r=p;p=

11、q;q=r;printf(%d,%d,%d,%dn ,m,n,*p,* q);程序运行后的输出是A)1,2,1,2 B)1,2,2,1C)2,1,2,1 D)2,1,1,28.有以下程序main() int a=1,b=3,c=5;int *p1=a,*p2=b,* p=c;* p=* P1 *(p2);printf(“% d n”,c);执行后的输出是A)1B)2C)3D)49.有以下程序main() inta,k=4,m=4,*p1=k,* p2=m;a=P1=m;printf(“% d n”,a);程序运行后的输出结果是(C)A)4B)1C)0 D)没有固定值的运行时错误10.在16位编

12、译系统中,如果定义了int a =10,20,30,p=a;当执行p;在那之后,下面的陈述是错误的(一)p将一个字节移到高地址p向高地址移动两个字节D)p相当于111.有以下程序int a10=1,2,3,4,5,6,7,8,9,10,*p=a3,b;b=p5;b中的值是(c)甲)5乙)6丙)8丁)912.如果存在以下定义,对数组元素的正确引用是_ _ d _ _。int a5,* p=a;a)*a5 b)a 2 c)*(p 5) d)*(a 2)13.p 5指_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _。int a10,* p=a;a)元素a5的地址b)元素

13、a5的值c)元素a6的地址d)元素a6的值14.让现有的定义: int a 10=15,12,7,31,47,20,16,28,13,19,* p;下列陈述中正确的陈述是(b)a)对于(p=a;a(临10);a)。b)对于(p=a;p(a10);p);c)对于(p=a,a=a 10pint main() int x=10,20,30 ;int * px=x;printf(“% d”,* px);printf(“% d”,* px);px=x。printf(“% d”,(* px);printf(“% d”,* px);px=x。printf(“% d”,* px);printf(“% d”,*

14、 px);px=x。printf(“% d”,* px);printf(“% d n”,* px);返回0;程序运行后的输出结果为(A)A)11,11,11,12,12,20,20,20 B)20,10,11,10,11,10,11,10C)11,11,11,12,12,13,20,20 D)20,10,11,20,11,12,20,2016.有以下定义:intar= 6,7,8,9,10 ;int * ptrptr=arr*(ptr 2)=2;printf (%d,%dn ,*ptr,*(ptr 2);那么程序段的输出结果是dA)8,10 B)6,8 C)7,9 D)6,1017.如果定义了: int a =2,4,6,8,10,12,* p=a;*(p 1)的值是_ _ _ _

温馨提示

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

评论

0/150

提交评论