C、a[1]+3 D、a[0][0]
162、若有定义:int (*p)[3];,则以下叙述正确的是_c___
A、p是一个指针数组名
B、p是一个指针,它可以指向一个一维数组中的任意元素
C、p是一个指针,它可以指向一个含有3个整型元素的一维数组 D、(*p)[3]等价于*p[3]
163、若有以下定义和语句,则对m数组元素地址的正确引用是_d___
int m[2][3], (*p)[3]; p=m;
A、p[2] B、p[0]+1 C、*(p+2) D、(p+1)+2
164、若有定义:int x[5], *p=x;,则不能代表x数组首地址的是___c_
A、x B、&x[0] C、&x D、p
165、若有以下定义和语句,则对a数组元素的正确引用是__a__
int a[2][3], (*p)[3]; p=a;
A、(p+1)[0] B、*(*(p+2)+1) C、*(p[1]+1) D、p[1]+2
166、若有定义:int i, x[3][4];,则不能将x[1][1]的值赋给变量i的语句是__d__
A、i=x[1][1] B、i=*(*(x+1)) C、i=*(*(x+1)+1) D、i=*(x[1]+1)
167、若有以下定义和赋值语句,且0≤i≤1,0≤j≤2,则以下对s数组元素地址的正确引用形式是___c_
int s[2][3]={0}, (*p)[3], i, j; p=s;
A、(*(p+i))[j] B、*(p[i]+j) C、*(p+i)+j D、(p+i)+j
168、设用以下程序段建立了sp与str的关系,则以下对字符串的引用不正确的是_a___
char str[4][8]={\; int n;
for (n=0; n<4; n++) sp[n]=str[n]; A、sp B、*sp C、sp[0] D、*(sp+1)
169、若有定义:int x[10], *p=x;,则*(p+5)表示_b___
A、数组元素x[5]的地址 B、数组元素x[5]的值 C、数组元素x[6]的地址 D、数组元素x[6]的值
170、若有定义语句:int s[4][6], t[6][4], (*p)[6];,则以下正确的赋值语句是___b_
A、p=t; B、p=s; C、p=s[2]; D、p=t[3];
171、若要对变量a进行--运算,则a应具有的说明是_d___
A、int p[3]; int *a=p; B、int k; int *a=&k; C、char *a[3];
D、int b[10]; int *a=b+1;
172、若有定义语句:int x[5]={0, 1, 2, 3, 4}, *p;,则以下数值不为2的表达式是_
c___
A、p=x+1, ++(*p) B、p=x+2, *p++ C、p=x+1, *(p++) D、p=x+1, *++p 173、执行以下程序段后,y的值是__c__
int a[ ]={1, 3, 5, 7, 9} int x=0, y=1, *ptr; ptr=&a[1]; while (!x)
{ y+=*(ptr+x); x++; } A、1 B、2 C、4 D、24
174、执行以下程序段后,m的值是____
int a[2][3]={{1, 2, 3}, {4, 5, 6}}; int m, *ptr; ptr=&a[0][0];
m=(*ptr)*(*ptr+2)*(*ptr+4); A、15 B、48 C、24 D、无定值
175、设有以下定义:char *ch[2]={\;,则以下正确的叙述是_c___
A、数组ch的两个元素中分别存放了字符串\和\的首地址
B、数组ch的两个元素分别存放的是含有3个字符的一维字符数组的首地址 C、ch是指针变量,它指向含有两个数组元素的字符型一维数组 D、数组ch的两个元素的值分别是\和\176、下面程序的运行结果是____
main( )
{ int x[5]={1, 2, 3, 4, 5}, *p=x, **q; q=&p;
printf(\; printf(\; }
A、1, 1 B、1, 2 C、2, 2 D、2, 3
177、下面程序的运行结果是____
#include \
fun(int **a, int p[2][3]) { **a=p[1][1]; } main( )
{ int x[2][3]={2, 4, 6, 8, 10, 12}, *p; p=(int *)malloc(sizeof(int)); fun(&p, x);
printf(\; }
A、2 B、6 C、8 D、10
179、若有说明:char *pc[ ]={\;,则以下叙述正确的是____
A、*pc[0]代表的是字符串\B、*pc[0]代表的是字符'a' C、pc[0]代表的是字符串\D、pc[0]代表的是字符'a'
180、以下程序的运行结果是____
void sub(int x, int y, int *z) { *z=y-x; } main( )
{ int a, b, c; sub(10, 15, &a); sub(6, a, &b); sub(a, b, &c);
printf(\; }
A、5, 1, 6 B、-5, -11, -6 C、-5, 11, 6 D、5, -1, -6
181、设有变量定义和函数调用语句:int a=20; print_value(&a);,下面函数的输出结果是____
void print_value(int *x)
{ printf(\; } A、20 B、21 C、变量a的地址 D、随机值
182、语句int (*ptr)( );的含义是____
A、ptr是指向一维数组的指针变量 B、ptr是指向int 型数据的指针变量
C、ptr是指向函数的指针,该函数返回一个int 型数据
D、ptr是一个函数名,该函数的返回值是指向int 型数据的指针
183、 若有函数max (a ,b) ,并且已使函数指针变量p 指向函数 max ,则利用函数指针
调用 max 函数的正确形式是____
A、(*p ) max (a , b) B、*p max(a, b) C、p-> max (a, b) D、 ( *p ) (a, b ) 184、若有定义:int (*p)( );,则指针p___
A、代表函数的返回值 B、指向函数的入口地址 C、表示函数的类型 D、表示函数返回值的类型
185、下面程序的运行结果是____
main( )
{ int b[10]={1, 2, 3, 4, 5, 6, 7, 8, 9, 10}; int *q=b;
printf(\; }
A、1 B、2 C、3 D、4 187、下面程序的运行结果是____
#include
{ int a[3][3]={{2},{4},{6}}; int k,*q=&a[0][0]; for(k=0;k<2;k++) { if(k= =0)
a[k][k+1]=*q+1; else ++q;
printf(“%d”,*q); } }
A、26 B、23 C、36 D、33 188、下面程序的运行结果是____
void prt(int *a)
{printf(“%d\\n”,++*a);} main()
{ int b=25; prt(&b); }
A、26 B、24 C、25 D、23 189、下面程序的运行结果是____
main( )
{ int a[3][4]={1, 3, 5, 7, 9, 11, 13, 15, 17, 19, 21, 23}; int (*q)[4]=a, i, j, n=0; for (i=0; i<3; i++) for (j=0; j<2; j++) n=n+*(*(q+1)+j); printf(\; }
A、68 B、99 C、60 D、108 190、下面程序的运行结果是____
#include
{ char a=\; a++; b++;
printf(\; }
A、零 B、正数 C、负数 D、无确定值
191、若运行以下程序时,从键盘上输入OPEN THE DOOR<回车>,则程序的运行结果是____
#include
{ if(*ch<='Z'&&*ch>='A')
*ch-='A'-'a'; return *ch; } main()
{ char s1[81],*q=s1; gets(s1); while(*q) { *q=f(q); putchar(*q); q++; }
putchar('\\n'); }
A、oPEN tHE dOOR B、OPEN THE DOOR C、open the door D、Open The Door
192、下列程序的运行结果是____
#include
void f (float *q1, float *q2, float *a) { a=(float *)calloc(1, sizeof(float));
*a=*q1+*(q2++); }
main()
{ float a[2]={1.1, 2.2}, b[2]={10.0, 20.0}, *s=a; f(a, b, s);
printf(\; }
A、1.100000 B、11.100000 C、12.100000 D、21.100000 193、下列程序的运行结果是____
#include
q1=s; q2=s+n-1; while (q1 { a=*q1++; *q1=*q2--; *q2=a; } } main() { char b[ ]=”ABCDEFG”; f(b, strlen(b) ); puts(b); } A、GAGGAGA B、AGAAGAG C、GFEDCBA D、AGADAGA 194、以下程序的运行结果是____ main ( ) { char *q =\; printf (\; } A、Is , Is i B、Is , Is it C、Is It , Is it D、Is it , Is 195、下面程序的功能是从输入的十个字符串中找出最长的那个串。请选择正确内容填空。 # include { char str[N][81], *sp; int i ; for (i=0 ; i gets ( str[i] ); sp=__①__; for ( i=1 ; i if ( strlen (sp ) sp=__②__; printf (\; } ① A、str[i] B、&str[i][0] C、str[0] D、str[N] ② A、str[i] B、str[i][0] C、str D、str[N]