8至12(3)

2019-02-15 16:43

A. 若引用a[10],编译时报错 C. 若引用a[10],运行时出错 A. gets(字符数组)

C. strlen (字符串) 二 判断

B. 若引用a[10],连接时报错 D. 若引用a[10],系统不报错

33.aC语言中实现字符串输入的库函数是______。

B. puts(字符数组) D. strcmp(字符串1,字符串2)

1. 若字符串串长为n个字节,则其占用内存空间为n+1个字节。T

2. 设已定义:float a[5][4];并赋值,要求每行输出4个数,则以下输出二维数组a的程序段是正确的:

for(i=0;i<5;i++)

for(j=0;j<4;j++) printf(\ F

3. 定义一维数组int a[10];则语句for(i=0;i<10;i++) scanf(\;是正确的。F

4. 对二维数组元素赋初值:int a[3][4]={5,12,7,4,8,3,9,24,11,2,6,4,}, 则其中数组元素a[2][2]的值为3。F 5. 下面字符串赋值的方式是正确的: char str1[10];str1=\。F 6. C语言中数组所占存储单元的多少仅由数组的长度决定。F

7. 可以把二维数组看作是一种特殊的一维数组:它的每一个元素又是一个一维数组。T

8. 数组是C语言的一种构造数据类型,其元素的类型可以是整型、实型、字符型甚至结构类型。T

9. 定义字符数组c[6],可以使用格式符%s实现字符串整体的输入和输出,则语句scanf(\是正确的。F 10. 数组定义时,只允许使用常量表达式定义数组的大小,其值必须是正整数,而不能用变量来定义数组长度。T 11. 给二维数组的全部元素赋初值,可以不指定第二维的长度,但第一维的长度不能省略。F 12. 由于二维数组在内存中是按行存放的,因此二维数组的初始化也是按行进行赋值的。T 13. 用字符串为字符数组赋初值:char c[ ]={\;则数组c的长度是3。F 14. 在字符数组中,每一个元素只能存放一个字符。T 15. 二维数组在内存中占用一串连续的存储单元。T 三 填空 1. main()

{ int i,j,a[][3]={1,2,3,4,5,6,7,8,9}; for(i=0;i<3;i++)

for(j=i+1;j<3;j++) a[j][i]=0; for(i=0;i<3;i++)

{ for(j=0;j<3;j++) printf(\printf(\输出:__1 2 3____

2. 以下程序运行后的输出结果是: main()

{ int i,n[]={0,0,0,0,0}; for(i=1;i<=4;i++) { n[i]=n[i-1]*2+1; printf(\输出:___1 3 7 15____

ELEVEN 一 单项

1.d 以下数组定义中正确的是______。 A. float f[3,4];

B. int a[ ][4];

C. char c(3);

D. double d[3+2][4];

2.a一维数组初始化时,若对部分数组元素赋初值,则下面正确的说法是______。

A. 可以只对数组的前几个元素赋初值 B. 可以只对数组的中间几个元素赋初值 C. 可以只对数组的后几个元素赋初值 D. 以上说法全部正确

3.d若有以下说明:int a[10]={1,2,3,4,5,6,7,8,9,10}; char c='a'; 则数值为4的表达式是______。 A. a['f'-c]

B. a[4] C. a['d'-'c'] D. a['d'-c]

4.c当执行下面程序时,输出结果是______。

#include void main()

{ int i; char b[6]={\; for(i=0;i<=4;i++) printf(\; } A.\ B.'1''2''3''4''5' C.12345 A. 数组首地址

D.1,2,3,4,5

D. 数组元素的个数

5.a用数组名作为函数调用时的实参,实际上传送给形参的是______。

B. 数组的第一个元素值 C. 数组中全部元素的值

6.c若已有char b[10]={'0','1','2','3','4'},则______。

A.元素b[5]到b[9]没有被赋值 B.元素b[5]到b[9]不存在 C.元素b[5]到b[9]自动为空字符 D.元素b[5]到b[9]自动为0字符 7.d决定数组所占内存单元多少的是______。

A. 数组的长度

B. 数组的类型

C. 数组在初始化时被赋值的元素的个数 D. 数组元素的个数及其类型 8.d已知有char a[]={\;a数组的长度是______。 A.7 A. 'L' A.3

B.8

C.9

D.10

9.a若定义数组并初始化char a[10]={\该数组的元素中 a[2]是______。

B. 'E' C. 'H' D. 'O' B.2

C.5

D.6

10.d设有数组定义: char a[2][3]={{'a','b'},{'e'}};则数组a所占空间的字节数为______。 11.b数组初始化时,下面说法错误的是______。

A.当对一维数组的全部元素赋初值时,可以不指定长度 B.当对二维数组的全部元素赋初值时,可以省略维数 C.用字符串对一维字符数组赋值时,可以不指定长度 D.用字符串对二维字符数组赋值时,可以省略维数

12.c如已有定义:int a[4];若要把10,20,30,40分别赋值给数组a的4个元素,下面正确的赋值方式是______。

A. scanf(\; B. scanf(\

C. a[0]=10;a[1]=a[0]+10;a[2]=a[1]+10;a[3]=a[2]+10; D. a={10,20,30,40};

13.a若定义数组并初始化char a[10]={'0','1 ','2','3','4','5','6','7','8','9'},指出以下会导致错误的语句______。 A. printf(\; A. '5'

B. 5

B. printf(\; C. printf(\; D. printf(\;

14.c设定义了:char a[10]={'1','2','3','4','5'}; 则a[5]的正确初值是______。

C. '\\0' D. ' '

15.a以下程序的输出结果是______。

#include void main()

{ int a[4][4]={{1,3,5},{2,4,6},{3,5,7}};

printf(\; } A.0650

B. 1470 C. 5430

D.输出值不确定

16.d下面程序的输出是______。

#include void main()

{ struct cmplx int x;inf y;}cnum[2]={1,3,2,7}; printf(“%d、n”,cnum[0].y/cnum[0].x*cnum[1].x);} A.0

B.1

C.3

D.6

17.c若定义数组并初始化

int i,j,a[2][3]= {{1,2},{3,4},{5,6}}; for(i=0;i<2;i++)

for(j=0;j<3;j++) printf(\;语句的结果是哪一个______。 A. 1,2,3,4,5,6 B. 1 2 3 4 5 6 C. 120340 A. 表达式b[1][2]的值为1 C. 表达式b[1][2]的值为6 A.字符数组可以存放字符串

B.字符数组中的字符串可以整体输入、输出

C.可以在赋值语句中通过运算符“=”对字符数组整体赋值 D.不可以用关系运算符对字符数组中的字符串进行比较 20.c设有程序:

#include void main()

{ int i,a[5]; printf(\; for (i=0;i<=4;i++) scanf(\,( )); ... ...

printf(\输出数组:\\n\;

for(i=0;i<=4;i++) printf(\ )); } 则在程序中的两个括号中应填入______。 A. a[i]和&a[i] B. &a[i]和&a[i]

C. &a[i]和a[i]

D. a[i]和a[i]

21.a若定义数组并初始化int a[10]={ 1,2,3,4},以下语句哪一个不成立______。

A.a[10]是a数组的最后一个元素的引用 B.a数组中有10个元素 C.a数组中每个元素都为整数 D.a数组是整型数组 22.d已定义:float a[5]; 则数组a可引用的元素有______。

A. a[1]~a[5] A. *,*

B. a[0]~a[5]

C. a[1]~a[4]

D. a[0]~a[4]

D. *,空白符

D. 15,a[4][2]

23.d设有定义:char a[][5]={{'*'},{'*',' ','*'},{'*',' ',' ',' ','*'},{'*',' ','*'},{'*'}}; 则a[0][0]和a[4][4]的初值分别为______。

B. 空格,空格 C. 空白符,*

B. 15,a[3][5]

24.d设有程序段: #define N 3 #define M N+2 float a[M][N]; 则数组a的元素个数和最后一个元素分别为______。 A. 15,a[5][3]

#include

void main( ) {int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a;printf(“%d、n”,*(p2));} A.3

B.4

C.1

D.2

26.d阅读程序:

f(int b[],int n) { int i,r=1;

for(i=0;i<=n;i++) r=r*b[i]; return r; } main()

{ int x,a[]={2,3,4,5,6,7,8,9};x=f(a,3); printf(\; } 以上程序的输出结果是______。 A. 720 B. 6

C.24

D. 120

C. 8,a[4][2]

25.a下面程序的输出是______。

D. 1 2 0 3 4 0

18.c若定义数组并初始化int b[2][3]= { 1,2,3,4,5,6},以下语句哪一个成立______。

B. 表达式b[1][2]的值为4 D. 表达式b[1][2]的值为2

19.c下述对C语言字符数组的描述中错误的是______。

27.a若有数组定义 char str[10]={\;则执行printf(\;后,输出结果是______。

A.输出第1,第2,第3个元素的值 B.输出str[1],str[2],str[3]的值 C.输出全部元素 D.输出格式描述不正确 28.d在对二维数组初始化时,错误的说法是______。

A.可对二维数组的全部元素赋初值 B.可对二维数组的部分元素赋初值

C.给二维数组的全部元素赋初值时,可以不指定第一维的长度但第二维的长度不能省略 D.给二维数组的全部元素赋初值时,可以不指定第二维的长度但第一维的长度不能省略 29.c若定义数组并初始化char a[20]= \; printf(\语句的结果是哪一个______。 A. hello

A. 15 ______。 A. Hello

B. Hello word

C. world

D. 不确定

32.b以下数组定义中,不正确的是______。

A.int b[3][4]; 33.d指出以下错误语句______。

A. 用#define N 10语句定义了n后,可以使用char str[N+1];语句定义数组 B. 在用#define N 10语句定义了n后,可以使用char str[N];语句定义数组 C. 在用#define n 10语句定义了n后,可以使用char str[n];语句定义数组 D. int x=10; int a[x]; 二 判断

1. 可以用如下的语句定义数组a:int n=10,a[n]; F

2. 设需定义一个有15个元素的数组a,并对其前5个元素赋初值,可用如下语句实现:int a[]={1,2,3,4,5}; F 3. 数组中的所有元素必须属于同一种数据类型。T

4. 定义数组: int a[10]; 则数组a的最后一个元素是a[9],数组 a共有9个元素。 F 5. 语句printf(“%d\\n”,strlen(“\\t\\”\\065\\xff\\n”))输出项不合法,无正常输出。F

6. 在计算机中二维数组的元素是按行顺序存放的,即在内存中,先顺序存放二维数组第一行的元素,再顺序存放二数组第二行的元素,以此类推。T

7. 数组是数目固定的若干变量的有序集合,数组中各元素的类型可以不同。F 8. 设定义了:char c[]={\则字符数组c在内存中占用5个字节的内存单元。T 9. C语言只能单个引用数组元素而不能一次引用整个数组。T

10. 设已定义:double a[5][5]; 则数组a在内存中的存放顺序是:a[0][0],a[0][1],a[0][2], ... ,a[4][3],a[4][4] 。T 11. 在C语言中,可以用表达式:\比较字符串的大小。F

12. 设已定义:char a[3][5]; 则可用语句 scanf(\给数组a输入15个字符之内的字符串。 T 13. 设有int a[2][3],元素a[1][2]是数组中第六个元素。T

14. C语言数组的下标从0开始,下标必须是整数型的常量或变量。T 15. C语言中数组元素用数组名后带圆括弧的下标表示。F 三 填空

1. #include

void main( )

{ int a[4][4]={{1,3,5},{2,4,6},{3,5,7}};

printf(\输出:__0650_______ 2. #include

#include void main( )

{ char ss[10]={\ gets(ss);

B.int c[3][ ]={{1,2},{1,2,3},{4,5,6,7}};

C.int b[200][100]={0}; D.int c[ ][3]={{1,2,3},{4,5,6}};

B. Hello

C. HELLO D. 不确定

30.c已定义:int a[15]; 则数组a占用的内存单元数是______。

B. 16 C. 30 D. 32

31. b若定义数组并初始化char a[20]= \使用函数调用strcat(a,\world\后, printf(\a)语句的结果是哪一个

strcat(ss,\ printf(\

如果输入ABC,则输出:_ABC6789_____

TWELVE 一 单项

1.a下面给出的是使用typedef 定义一个新数据类型的4项工作,如果要正确定义一个新的数据类型,进行这4项工作

的顺序应当是______。 1.把变量名换成新类型名 3.用新类型名定义变量

2.按定义变量的方法写出定义体 4.在最前面加上关键字 typedef

D. 4,2,3,1

A. 2,4,1,3 B. 1,3,2,4 C. 2,3,4,1

A. q->next=NULL;p=p->next;p->next=q; B. p=p->next;q->next= p->next; p->next=q; C. p=p->next;q->next= p; p->next=q;

2.c 设有以下链表,则不能将q所指的结点插入到链表末尾的是______。

D. p=(*p).next;(*q).next= (*p).next; (*p).next=q; 3.b阅读程序,选择正确的输出结果______。

#include void main() { union

{ int i[2]; long k; char c[4]; } t, *s = &t; s->i[0] = 0x39; s->i[1] = 0x38; printf(\ } A. 39 struct student {int age; int num; }stu,*p; p=&stu;

A. stu.age B. p->age C. (*p).age D. *p.age

5.c设有以下说明 union { int i; char c; float f; }a; 则错误的叙述是______。

A. a所占的内存长度等于成员f的长度 B. a的地址和它的各成员地址都是同一地址 C. a可以作为函数参数 D. 不能对a赋值,也不能在定义a时对它初始化 6.c阅读程序,选择正确的输出结果______。 #include void main() { union

{ char c; int i; }t; t.c = 'A'; t.i = 1;

printf(\ A. 65,1 B. 65,65

C. 1,1 D. 以上都不对

7.a结构体类型变量所占内存是______。

A. 各成员所需内存的总和 B. 结构体中第一个成员所需内存量 C. 结构体中占内存量最大者所需内存量 D. 结构体中最后一个成员所需内存量 8.d对结构体类型变量定义不正确的是______。

A. #define STUDENT struct student B.struct student STUDENT { char name; {char name; int num; int num; }stu;

B. 9 C. 38 D. 8

4.d设有以下定义,则不正确的引用是______。


8至12(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:高椅学校《弟子规》活动方案

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: