16、设int x[10]={0,2,4};,假定在VC++编译环境下,int类型变量占用四个字节,则数组x在内存
中所占字节数是( )。
A.6 B.12 C.20 D.40 您的答案为:D
17、定义: int a[2][2]; 则数组 a在内存中的存放顺序为( )。
A.a[0][0]、a[1][0]、a[0][1]、a[1][1] B.a[0][0]、a[0][1]、a[1][0]、a[1][1] C.a[0][0]、a[1][1]、a[0][1]、a[1][0] D.a[0][0]、a[1][1]、a[1][0]、a[0][1] 您的答案为:B
18、以下数组定义中不正确的是( )。
A.int a[2][3];
B.int b[][3]={0,1,2,3}; C.int c[100][100]={0};
D.int d[3][]={{1,2},{1,2,3},{1,2,3,4}}; 您的答案为:D
19、以下程序的输出结果是( )。 main() {
int a[3][3]={{1,2},{3,4},{5,6}},i,j,s=0; for(i=1;i<3;i++) for(j=0;j<=i;j++) s+=a[i][j]; printf(“%d\\n”,s); }
A.18 B.19 C.20 D.21 您的答案为:A
20、数组定义为int a[3][2]={1,2,3,4,5,6},数组元素( )的值为6。
A.a[3][2] B.a[2][1] C.a[1][2] D.a[2][3] 您的答案为:B
参考答案为:B 参考答案为:A 参考答案为:D 参考答案为:B 参考答案为:D
21、以下程序的输出结果是( )。 main() {
int i,x[3][3]={1,2,3,4,5,6,7,8,9}; for(i=0;i<3;i++)
printf(“%d,”,x[i][2-i]); }
A.1,5,9 B.1,4,7 C.3,5,7 D.3,6,9 您的答案为:C
参考答案为:C
作业六 指针
选择:15题
1.执行以下程序后,a的值为( ).
main() {
int a,k=4,m=6,*p1=&k,*p2=&m; a=p1==&m; printf(\ }
A)-1 B)1 C)0 D)4 您的答案为:C
2.以下程序中调用scanf函数给变量a输入数值的方法是错误的,其错误的原因是( ).
main() {
int *p,*q,a,b; p=&a;
printf(\ scanf(\ }
A)*p表示的是指针变量p的地址.
B)*p表示的是变量a的值,而不是变量a的地址.
参考答案为:C
C)*p表示的是指针变量p的值 D)*p只能用来说明p是一个指针变量 您的答案为:B
3.已有定义 int k=2;int *ptr1,*ptr2;且ptr1 、ptr2均已指向变量k,下面不能正确执行的赋值语句 是( )
A) k=*ptr1+*ptr2 B) prt2=k;
C) ptr1=ptr2 D) k=*ptr1*(*ptr2); 您的答案为:B
4.变量的指针,其含义是指变量的( )
A) 值 B) 地址 C) 名 D) 一个标志 您的答案为:B
5.若有说明: int *p,m=5,n; 以下正确的程序是( )
A) p=&n; B)p=&n;
scanf(\ C) scanf(\ *p=n; *p=m; 您的答案为:D
6.下面程序段的运行结果是( )
char *s=\ s+=2; printf(\
A) cde B) 字符‘c’ C) 字符‘c’的地址 D) 无确定的输出结果 您的答案为:B
7.设指针x指向的变量值为25, 则printf(\的输出结果是( )
参考答案为:B 参考答案为:D 参考答案为:B 参考答案为:B 参考答案为:B
A)23 B)24 C)25 D)26 您的答案为:D
8.若有定义char s[10];则在下面表达式中不表示s[1]的地址的是( )
A) s+1 B) s++ C) &s[0]+1 D) &s[1] 您的答案为:B
9.有以下程序
#include
char str[][20]={\ printf(\ }
程序运行后的输出结果是( ) A)0 B)5 C)7 D)20 您的答案为:C
10.有以下程序
main() {
int a[3][3],*p,i; p=&a[0][0]; for(i=0;i<9;i++) *(p+i)=i+1;
printf(\ }
程序运行后的输出结果是( ) A)3 B)6 C)9 D)2 您的答案为:B
11.已定义以下函数
fun(int *p) { return *p; } 该函数的返回值是( )
A)不确定的值 B)形参p中存放的值
参考答案为:B 参考答案为:C 参考答案为:B 参考答案为:D
C)形参p所指存储单元中的值 D)形参p的地址值 您的答案为:C
12.对于基类型相同的指针变量,不能进行( )运算。
A) + B)- C) = D)= = 您的答案为:A
13.若已定义a为int型变量,则对p的说明和初始化正确的是( )
A) int *p=a; B)int p=a; C) int p=a; D)int *p=&a; 您的答案为:D
14.设有如下程序段
char str[]=”hello”; char *ptr; ptr=str;
执行完上面的程序后,*(ptr+5)的值为( )
A) ‘0’ B)’\\0’ C)不确定的值 D)’0’的地址 您的答案为:B
15.若x为整型变量,pb是基类型为整型的指针变量,则正确的赋值表达式是( )
A)pb=&x B)pb=x C)*pb=&x D)*pb=*x 您的答案为:A
参考答案为:A 参考答案为:B 参考答案为:D 参考答案为:A 参考答案为:C