试卷详情
-
数组(一)
-
[单项选择]设有定义语句 int x[6]={2,4,6,8,5,7},*p=x,i; 要求依次输出x数组6个元素中的值,不能完成此操作的语句是______。
A. for(i=0;i<6;i++) printf("%2d",*(p++));
B. for(i=0;i<6;i++) printf("%2d",*(p+);
C. for(i=0;i<6;i++) printf("%2d",*p++);
D. for(i=0;i<6;i++) printf("%2d",(*++);
-
[单项选择]以下能正确定义一维数组的选项是______。
-
[单项选择]若有以下的说明和语句,则在执行for语句后,*(*(pt+1)+2)表示的数组元素是______。 int t[3][3], *pt[3], k; for(k=0; k<3 k++) pt[k]=&t[k][0]
A. t[2][0]
B. t[2][2]
C. t[1][2]
D. t[2][1]
-
[单项选择]以下程序的输出结果是______。 main( ) { int i, x[3][3]={9,8,7,6,5,4,3,2,1},*p=&x[1][1]; for(i=0;i<4;i+=2)printf("%d",p[i]); }
A. 52
B. 5 1
C. 5 3
D. 97
-
[单项选择]以下正确的数组定义语句是______。
A. int y[1][4]={1,2,3,4,5};
B. float x[3][]={{1},{2},{3}};
C. long s[2][3]={{1},{1,2},{1,2,3}};
D. double t[][3]={0);
-
[单项选择]设有以下定义和语句 int a[3][2]={1,2,3,4,5),*p[3]; p[0]=a[1]; 则*(p[0]+1)所代表的数组元素是______。
A. a[0][1]
B. a[1][0]
C. a[1][1]
D. a[1][2]
-
[单项选择]有以下程序 #include <stdio.h> main( ) { int a[]={1,2,3,4,5,6,7,8,9,10,11,12},*p=a+5,*q=NULL; *q=*(p+5); printf("%d %d/n",*p,*q); } 程序运行后的输出结果是______。
A. 运行后报错
B. 6 6
C. 6 11
D. 5 10
-
[单项选择]以下叙述中,错误的是______。
A. 对于double类型数组,不可以直接用数组名对数组进行整体输入或输出
B. 数组名代表的是数组所占存储区的首地址,其值不可改变
C. 当程序执行中,数组元素的下标超出所定义的下标范围时,系统将给出“下标越界”的出错信息
D. 可以通过赋初值的方式确定数组元素的个数
-
[单项选择]若有说明“int s[3][4]={0}:”,则下面正确的叙述是______。
A. 只有元素s[0][0]可得到初值0
B. 此说明语句不正确
C. 数组s中各元素都可得到初值,但其值不一定为0
D. 数组s中每个元素均可得到初值0
-
[单项选择]有以下程序 main( ) { int a[3][3],*p,i; p=&a[0][0]; for(i=O;i<9;i++)p[i]=i; for(i=O;i<3;i++)printf("%d",a[1][i]); } 程序运行后的输出结果是______。
A. 0 1 2
B. 1 2 3
C. 2 3 4
D. 3 4 5
-
[单项选择]若有以下定义“int t[3][2];”,能正确表示t数组元素地址的表达式是______。
A. &t[3][2]
B. t[3]
C. t[1]
D. *t[2]
-
[单项选择]若已定义: int a[]={0,1,2,3,4,5,6,7,8,9},*p=a,i; 其中0≤i≤9,则对a数组元素不正确的引用是()。
A. a[p-a]
B. *(&a[i])
C. p[i]
D. a[10]
-
[单项选择]以下程序的运行结果是______。 #include <stdio.h> main( ) {int a[]:{1,2,3,4,5,6,7,8,9,10,11,12): int *p=a+5,*q=NULL: *q=*(p+5): printf("%d %d/n",*p,*q); }
A. 运行后报错
B. 66
C. 612
D. 5 5
-
[单项选择]有以下程序 point(char*p){ p+=3; } main( ) { char b[4]={'a','b','c','d'},*p=b; point(p); printf("%c/n",*p); } 程序运行后的输出结果是______。
A. a
B. b
C. c
D. d
-
[单项选择]若已定义:“int a[9],*p=a;”,并在以后的语句中未改变p的值,不能表示a[1]地址的表达式是______。
A. p+1
B. a+1
C. a++
D. ++p