若有以下定义和语句,且0≤i<10则对数组元素的错误引用是 。int a[10]={1,2,3,4,5,6,7,8,9,10},*p,i;p=a;
A. *(a+i)
B. a[p-a]
C. p+i
D. *(&a[i])
对如下定义,以下说法中正确的是 。char *a[2]={ "abcd","ABCD"};
A. 数组a的元素值分别为"abcd"和"ABCD"
B. a是指针变量,它指向含有两个数组元素的字符型数组
C. 数组a的两个元素中各自存放了字符’a’、’A’的地址
D. 数组a的两个元素分别存放的是含有4个字符的一维数组的首地址
要求函数的功能是交换x 和y 中的值,且通过正确调用返回交换结果.能正确执行此功能的函数是 。
A. funa(int *x,int *y) { int *p; *p=*x; *x=*y;*y=*p; }
B. fund(int x,int y) { int t; t=x;x=y;y=t; }
C. func(int *x,int *y) { *x=*y;*y=*x;}
D. fund(int *x,int *y) { *x=*x+*y;*y=*x-*y;*x=*x-*y; }