C期末考试复习题2(1)

上传人:s9****2 文档编号:512605830 上传时间:2022-11-04 格式:DOC 页数:13 大小:173.50KB
返回 下载 相关 举报
C期末考试复习题2(1)_第1页
第1页 / 共13页
C期末考试复习题2(1)_第2页
第2页 / 共13页
C期末考试复习题2(1)_第3页
第3页 / 共13页
C期末考试复习题2(1)_第4页
第4页 / 共13页
C期末考试复习题2(1)_第5页
第5页 / 共13页
点击查看更多>>
资源描述

《C期末考试复习题2(1)》由会员分享,可在线阅读,更多相关《C期末考试复习题2(1)(13页珍藏版)》请在金锄头文库上搜索。

1、【精品文档】如有侵权,请联系网站删除,仅供学习与交流C期末考试复习题2(1).精品文档.(1)inta4=5,3,8,9;其中a3的值为(D)。A.5B.3C.8D.9(2)以下4个数组定义中,(D)是错误的。A.inta7;B.int n=5;longbn;C.charc5;D.intn,d7;(3)对字符数组进行初始化,( B)形式是错误。A.charc1=1,2,3;B.charc2=123;C.charc310=1,2,3,0;D.charc4=123;(5)在数组中,数组名表示(A.)。A.数组第1个元素的首地址B.数组第2个元素的首地址C.数组所有元素的首地址D.数组最后1个元素的

2、首地址(6)若有以下数组说明,则数值最小的和最大的元素下标分别是(B)。inta12=1,2,3,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=3A.ag-cB.a4C.ad-cD.ad-c(8)设有定义:chars12=string;则printf(%dn,strlen(s);的输出是(A)。A.6B.7C.11D.12(9)设有定义:chars12=string;则printf(%dn,sizeof(s)

3、;的输出是(D)。A.6B.7C.11D.12(10)合法的数组定义是(A)。A.chara=string;B.inta5=0,1,2,3,4,5;C.chara=string;D.chara=0,1,2,3,4,5(11)下面的程序中哪一行有错误(D)。#includemain() floatarray5=0.0;/第A行inti; for(i=0;i5;i+)scanf(%f,&arrayi);for(i=1;i5;i+) array0=array0+arrayi;/第B行printf(%fn,array0);/第C行A.第A行B.第B行C.第C行D.没有(12)下面哪一项是不正确的字符串

4、赋值或赋初值的方式(C)。CA.char*str;str=string;B.charstr7=s,t,r,i,n,g;C.charstr110;str1=string;D.charstr1=string,str2=12345678;(13)若有以下说明和语句,则输出结果是哪一项(C)。(strlen(s)为求字符串s的长度的函数)chars12=abook!;printf(%d,strlen(s);A.12B.8C.7D.11(14)若有以下说明和语句,则输出结果是(C)。charstr=c:abc.dat;printf(%s,str);A.字符串中有非法字符B.c:abc.datC.c:ab

5、c.datD.c:abc.dat(15)若有以下语句,则下面是正确的描述。charx=123456;chary=1,2,3,4,5,6;(B )A.x数组与y数组长度相同。B.x数组长度大于y数组长度。C.x数组长度小于y数组长度。D.x数组和y数组的赋值是非法的。(16)在C 语言中,引用数组元素时,其数组下标的数据类型允许是。C A)整型常量B)整型表达式C)整型常量或整型表达式D)任何类型的表达式(17)以下对一维整型数组a 的正确说明是。 DA)inta(10);B)int n=10,an;C)int n;D)#define SIZE 10scanf(“%d”,&n);int aSIZ

6、E;int an;(18)若有说明:int a10;则对a 数组元素的正确引用是。 C A)a10 B)a3.5 C)a(5) D)a10-10(19)在C 语言中,一维数组的定义方式为:类型说明符数组名; (C) A)整型常量表达式 B)整型表达式C)整型常量 或整型表达式 D)常量(20)以下能对一维数组a 进行正确初始化的语句是。 ( C)A)int a10=(0,0,0,0,0); B)int a10=;C)int a=0; D)int a10=”10*1”;(21)下面程序如果只有一个错误,那么是(每行程序前面的数字表示行号) 。(A)1 main()2 3 float a3=3*0

7、;4 int i;5 for(i=0;i3;i+) scanf(“%d”,&ai);6for(i=1;i3;i+) a0=a0+ai;7 printf(“%dn”,a0);8 A)第3 行有错误B)第7 行有错误C)第5 行有错误D)没有错误(22)下面程序中有错误9*/的行是(每行程序前面的数字表示行号)。(D)1 main()2 3 float a3=1;4 int i;5 scanf(“%d”,&a);6 for(i=1;i3;i+) a0=a0+ai;7printf(“a0=%dn”,a0);8 A)3 B)6 C)7 D)5(23)下面程序(每行程序前面的数字表示行号)。 (D)1

8、main()2 3float a3=0;4 int i;5 for(i=0;i3;i+) scanf(“%f”,&ai);6 for(i=1;i4;i+) a0=a0+ai;7 printf(“%fn”,a0);8 A)没有错误B)第3 行有错误C)第5 行有错误D)第6 行有错误(24)对以下说明语句的正确理解是。 (B)int a10=6,7,8,9,10;A)将5 个初值依次赋给a1至a5B)将5 个初值依次赋给a0至a4C)将5 个初值依次赋给a6至a10D)因为数组长度与初值的个数不相同,所以此语句不正确1.变量的指针,其含义是指该变量的_B_. a)值 b)地址 c)名 d)一个标

9、志2若有语句int *point,a=4;和point=&a;下面均代表地址的一组选项是_D_. a)a,point,*&a b)&*a,&a,*point c)*&point,*point,&a d)&a,&*point ,point3若有说明;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;pri

10、ntf(“input a:”);scanf(“%d”,*p);a)*p表示的是指针变量p的地址b)*p表示的是变量a的值,而不是变量a的地址c)*p表示的是指针变量p的值d)*p只能用来说明p是一个指针变量5. 已有变量定义和函数调用语句:int a=25; print_value(&a); 下面函数的正确输出结果是_D_. voidprint_value(int *x) printf(“%dn”,+*x);a)23b)24 c)25 d)266.若有说明:long *p,a;则不能通过scanf语句正确给输入项读入数据的程序段是A A) *p=&a;scanf(%ld,p); B) p=(l

11、ong *)malloc(8);scanf(%ld,p); C) scanf(%ld,p=&a); D) scanf(%ld,&a);7.有以下程序B #include main() int m=1,n=2,*p=&m,*q=&n,*r; r=p;p=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.有以下程序 Cmain() int a=1, b=3, c=5;int *p1=&a, *p2=&b, *p=&c; *p =*p1*(*p2);printf(%dn,c);执行后的输出结果是A)1B)2C)3D)49.有以下程序 main() inta,k=4,m=4,*p1=&k,*p2=&m;a=p1=&m;printf(%dn,a);程序运行后的输出结果是(C)A)4B)1C)0 D)运行时出错,无定值10.在16位编译系统上,若有定义int a=10,20,30, *p=&a;,当执行p+;后,下列说法错误的是(A) A)p向高地址移了一个字节B)p向高地址移了一个存储单元C)p向高地址移了两个字节D)p与a+1等价

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 研究生课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号