第11周——指针的孪生兄弟
1、【单选题】设有定义语句 int x[6]={2,4,6,8,5,7},*p=x,i;要求依次输出x数组6个元素中的值,不能完成此操作的语句是
参考答案: 请先登录
2、【单选题】假设有下面定义语句: float a[10]; float *p=a; 则p++相当于是加上()个字节
参考答案: 请先登录
3、【单选题】若二维数组a有m行n列,则下面能够正确引用元素a[i][j]的为
参考答案: 请先登录
4、【不定项选择题】下列说法错误的是()。
参考答案: 请先登录
5、【不定项选择题】下面关于表达式(*p)++和*p++的含义分析说明中,错误的是
参考答案: 请先登录
6、【单选题】在以下程序段中的空白处填写适当的表达式或语句,使程序能正确引用c数组元素。 #include <stdio.h> int main() { int c[4][5],(*p)[5],i,j,d=0; for(i=0;i<4;i++) { for(j="0;j<5;j++)" c[i][j]="d;" d++; printf("%4d",c[i][j]); } printf("\n"); p="c;" printf("%d,%d\n",____________); return 0;>
参考答案: 请先登录
7、【单选题】char (*p)[10];该语句定义了一个
参考答案: 请先登录
8、【单选题】二维数组a有m行n列,则在a[i][j]之前的元素个数为()
参考答案: 请先登录
9、【不定项选择题】如下程序的执行结果是 #include <stdio.h> int main() { int a[ ][4]={1,3,5,7,9,11,13,15,17,19,21,23}; int (*p)[4],i=1,j=2; p=a; printf("%d\n",*(*(p+i)+j)); return 0; }
参考答案: 请先登录
10、【单选题】下面给出的选项中,能定义为一个指针数组的语句是
参考答案: 请先登录
11、【不定项选择题】有int *p[10];以下说法错误的是________。
参考答案: 请先登录
12、【单选题】设有以下定义:int a[3][3] = {1, 2, 3, 4, 5, 6, 7, 8, 9};int (*ptr)[3] = a;int *p = a[0];则以下能够正确表示数组元素a[1][2]的表达式是
参考答案: 请先登录
13、【单选题】设有语句“int array[3][4];”,则在下面几种引用下标为i和j的数组元素的方法中,不正确的引用方式是( )。
参考答案: 请先登录