int a[12]={0},*p[3],**pp,i; for(i=0;i<3;i++) p[i]=&a[i*4]; pp=p;
A) a[12] B) p[2][3] C) a[10] D) pp[0][1]
95. 若在C程序中有以下说明和语句,则能都表示a 数组元素的 地址的是(其中0<=i<4, 0<=j<3) main()
{int a[4][3]={0},*p[4],**pa,i,j; for (i=0; i<4;i++) p[i]=a[i]; . . . pa=p; . . . }
A) &a[i][j], p[i]+j, pa[i][j] B) *(pa+i)+j, p[i], *(p+i)+j
C) &a[j], &p[i], *(*(pa+i)+j) D) **pa, a, p
96. 下列程序的输出结果是 char s[ ]=\; main()
{char *p;
for(p=s;p
A) ABCD B) A ABC B AB C A D C) D D) ABCD C BCD B CD A D
97. 若有以下说明和语句,其输出结果是 char *s=\; printf(\,strlen(s));
A) 14 B) 3
C) 9 D) 10
98. 若有以下说明和语句,其输出结果是 char *sp=\:\\\\ANI.WPS\\\; printf(\,sp);
A) 字符串中有非法字符,输出值不定 B) \\\:\\\\ANI.WPS\\\C) \:\\ANI.WPS\D) \:\\\\ANI.WPS\
99. 若有以下说明和语句,其输出结果是 char *sp=\; printf(\,strlen(sp)); A) 3 B) 5
C) 1 D) 字符串中有非法字符,输出值不定
100. 下面程序的输出结果是
char *a[6]={\,\,\,\, \,\; char **p; main () { int i; p=a;
for(i=0;i<4; i++)
printf(\ *(p[i])); printf(\}
A) AEIM B) BFJN C) ABCD D) DHLP
101. 若有说明语句\ *strp=\;\,则对字符串 字符的错误引用是
A) *strp B) *(strp+i) C) strp[i] D) strp
102. 下面程序的输出结果是 main ()
{int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a; printf(\,*(p+2)); }
A) 3 B) 4 C) 1 D) 2
103. 下面程序的输出结果是 #include
void prt(int *x., int *y., int *z)
{printf(\}
int a=10,c=20,b=40; main()
{prt(&a,&b,&c); prt(&a,&b,&c); }
A) 11,42,31 B) 11,41,20 12,22,41 12,42,20 C) 11,21,40 D) 11,41,21 11,21,41, 12,42,22
104. 下面程序输出的结果是 #include
{char *p=\ str[50]=\ strcpy(str+2,strcat(p1,p2)); printf(\}
A) xyzabcABC B) zabcABC C) yzabcABC D) xyabcABC
105. 下面程序的输出结果是 void prtv(int *x)
{printf(\,++*x);} main()
{int a=25; prtv(&a); }
A) 23 B) 24 C) 25 D) 26
106. 下面程序的输出结果是 main ()
{int a[3][4]={1,3,5,7,9,11,13,15,17,19,21,23}; int (*p)[4]=a,i,j,k=0; for(i=0; i<3; i++) for(j=0; j<2; j++) k=k+*(*(p+i)+j); printf(\}
A) 60 B) 68 C) 99 D) 108
107. 执行下列程序后的输出结果是
char s1[4]=\; char *ptr; ptr=s1;
printf (\,*(ptr+1));
A) 字符'2' B) 字符'1' C) 字符'2'的地址 D) 不确定
108. 执行下列程序段后y 的值是 static int a[ ]={1,3,4,5,7,9}; int x, y, *ptr; y=1;
ptr=&a[1];
for(x=0; x<3; x++) y*=*(ptr+x);
A) 105 B) 15
C) 60 D) 无定值
109. 执行下列程序段后m 的值是 static int a[ ]={7,4,6,3,10}; int m,k,*ptr; m=10; ptr=&a[0]; for(k=0; k<5; k++ )
m=(*ptr+k) 110. 执行以下程序段后s的值是 static int a[ ]={5,3,7,2,1,5,4,10}; int s=0,k; for(k=0;k<8;k+=2) s+=*(a+k); A) 17 B) 27 C) 13 D) 无定值 111. 以下程序段的输出结果是 static char a[ ]=\; char *ptr; ptr =a; for(;ptr A) program B) porm C) por D) 有语法错误 112. 以下程序段的输出结果是 staric char a[]=\,b[]=\; char *ptrl,*ptr2; int k; ptrl=a;ptr2=b; for(k=0;k<7;k++) if(*(ptr1+k)==*(ptr2+k)) printf(\ A) gae B) ga C) language D) 有语法错误 113. 以下程序段执行后,m的值是 static 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) 12 114. 执行以下程序段后的输出结果是 static char a[]=\; char *ptr; ptr=a; while(*ptr) {printf(\,*ptr-32); ptr++; } A) LANGUAGE B) 陷入死循环 C) language D) 有语法错误 115. 下列程序的运行结果是 main () {char *letter[5]={\; char **ptr; int i; ptr=letter; for(i=0; i<4; i++) printf(\ printf(\} A) abef B) abefg C) abefghijkmnop D) abefghijkmnopst 116. 下列程序的运行结果是 #include {static int a[]={2,6,8,10,14,18}; static int *ptr[]={&a[0],&a[1],&a[2],&a[3],&a[4]}; int **p,i;