int a[3][3]={{2},{4},{6}}; main()
{int i,*p=&a[0][0]; for(i=0;i<2;i++) {if(i==0) a[i][i+1]=*p+1; else
++p;
printf(\ }
}
A) 23 B) 26
C) 33 D) 36 A
133. 下面的程序,调用findmax函数求出数组中最大元素在数组中的下 标。请选择正确的内容填入________中。 #include
for(p=0, *k=p; p
main( )
{int a[10],i,k; for(i=0;i<10;i++) scanf(\ findmax(a,10,&k);
printf(\}
A) k=p B) *k=p C) k=p-s D) *k=p-s B
134. 下列程序的输出结果是
main()
{char ch[2][5]={\,\,*p[2]; int i,j,s=0; for(i=0;i<2;i++) p[i]=ch[i]; for(i=0;i<2;i++) for(j=0;p[i][j]>'\\0';j+=2) s=10*s+p[i][j]-'0'; printf(\}
A) 69825 B) 63825 B) 6385 D) 693825 C
135. 请选出正确的程序段
A) int *p; B) int*s,k; scanf(\,p); *s=100; . . . . . .
C) int *s,k; D) int *s,k; Char *p,c; char *p,c; s=&k; s=&k; p=&c; p=&c; *p='a'; s=p; . s=1; . . . . . C
136. 下列程序的输出结果是 int b=2;
int func(*a)
{b+=*a;return(b);} main()
{int a=2,res=2; res+=func(&a); printf(\
}
A) 4 B) 6 C) 8 D) 10 B
137. 下列程序执行后的输出结果是 void func(int *a,int b[]) {b[0]=*a+6;} main()
{int a,b[5]; a=0;b[0]=3; func(&a,b);
printf(\}
A) 6 B) 7
C) 8 D) 9 A
138. 若有以下定义和语句\ r=99,*p=&r;*p=r;\
则以下正确的叙述是
A) 以上两处的*p含义相同,都说明给指针变量p赋值 B) 在\ r=99,*p=&r;\中,把r 地址赋给了p 所指的存储单元
C) 语句\;\把变量r的值赋给指针变量p D) 语句\;\取变量r的值放回r中 D
139. 以下程序执行后,a的值是 main()
{int a,k=4,m=6,*p1=&k,*p2=&m; a=p1==&m; printf(\
}
A) 4 B) 1
C) 0 D) 运行时出错,a无定值 C
140. 以下程序的输出结果是
int fun(int x,int y,int *cp,int *dp) {*cp=x+y;*dp=x-y;} main ()
{int a,b,c,d; a=30;b=50; fun(a,b,&c,&d);
printf(\}
A) 50,30 B) 30,50 C) 80,-20 D) 80,20 C
141. 执行以下程序段后,m的值为
int a[2][3]={{1,2,3},{4,5,6}}; int m,*p; p=&a[0][0];
m=(*p)*(*(p+2)*(*(p+4));
A) 15 B) 14 C) 13 D) 12 A
142. 设有如下定义:
int arr[]={6,7,8,9,10}; int *ptr;
则下列程序的输出结果为 ptr=arr;
*(ptr+2)+=2;
printf(\,%d\\n\,*ptr,*(ptr+2)); A) 8,10 B) 6,8
C) 7,9 D) 6,10
D
143. 设p1和p2是指向同一个int型一维数组的指针变量, k为int型变量,则不能正确执行的语句是 A) k=*p1+*p2; B) p2=k; C) p1=p2; D) k=*p1*(*p2); B
144. 若有以下定义和语句:
char *s1=\,*s2=\; printf(\,strlen(strcpy(s1,s2)); 则输出结果是
A) 4 B) 5 C) 9 D) 10 A
145. 若有以下定义:
char s[20]=\,*ps=s; 则不能代表字符o的表达式是
A) ps+2 B) s[2]
C) ps[2] D) ps+=2,*Ps A
146. 若有以下说明,则数值为6的表达式是
int a[10]={1,2,3,4,5,6,7,8,9,10},*p=a; A) *p+6 B) *(p+6) C) *p+=5 D) p-5 C
147. 若有说明:\ i,j=7,*p=&i;\则与i=j;等价的语句是 A) i=*p; B) *p=*&j; C) i=&j; D) i=**p; B
148. 执行以下程序后,y的值是 main()
{int a[]={2,4,6,8,10}; int y=1,x,*p; p=&a[1]; for(x=0;x<3;x++) y+=*(p+x); printf(\
}
A) 17 B) 18 C) 19 D) 20 C
149. 下列程序的输出结果是
main()
{char ch[2][5]={\,\,*p[2];
int i,j,s=0;
for(i=0; i<2; i++)
for (j=0;p[i][j]>'\\0'&& p[i][j]<='9';j+=2) s=10*s+p[i][j]-'0'; printf(\}
A) 6385 B) 69825 C) 63825 D) 693825 A
150. 下列程序的输出结果是 main()
{char *p1,*p2,str[50]=\; p1=\;p2=\;
strcpy(str+2,strcat(p1+2,p2+1)); printf(\,str); }
A) xyabcAB B) abcABZ C) Ababxy D) xyabcBCD D
百度搜索“77cn”或“免费范文网”即可找到本站免费阅读全部范文。收藏本站方便下次阅读,免费范文网,提供经典小说综合文库C语言指针章节选择题(6)在线全文阅读。
相关推荐: