A)值 B)地址 C)名 D)一个标志
A)k=*ptr1+*ptr2 B)ptr2=k C)ptr1=ptr2 D)k=*ptr1*(*ptr2)
A)p=&n ; B)p = &n ;
scanf(“%d”,*p); scanf(“%d”,&p);
C)scanf(“%d”,&n); D)p = &n ;
*p=n ; 野指针 *p = m ;
A)p1=&m; p2=&p1 ; B)p1=&m; p2=&n; *p1=*p2 ;
C)p1=&m; p2=p1 ; D)p1=&m; *p1=*p2 ;
A)a,p,*&a B)&*a,&a,*p C)*&p,*p,&a D)&a,&*p,p
A)char *a=”china”; 等价于 char *a; *a=”china” ;
B)char str[10]={“china”}; 等价于 char str[10]; str[ ]={“china”;}
C)char *s=”china”; 等价于 char *s; s=”china” ;
D)char c[4]=”abc”,d[4]=”abc”; 等价于 char c[4]=d[4]=”abc” ;
char *s=”\ta\018bc”
for ( ; *s!=’\0’ ; s++) printf(“*”) ;
A)2 B)7 C)6 D)5
A)char s[5]={“ABCDE”};
B)char s[5]={‘A’,’B’,’C’,’D’,’E’};
C)char *s ; s=”ABCDE” ; D)char *s; scanf(“%s”,s) ;
char *s=”abcde” ;
s+=2 ; printf(“%d”,s);
A)cde B)字符’c’ C)字符’c’的地址 D)98
A)s和p完全相同
B)数组s中的内容和指针变量p中的内容相等
C)s数组长度和p所指向的字符串长度相等
D)*p与s[0]相等
char a[ ]=”language” , *p ;
p=a ;
while (*p!=’u’) { printf(“%c”,*p-32); p++ ; }
A)LANGUAGE B)language C)LANG D)langUAGE
A)char a[10]=”china” ;
B)char a[10],*p=a; p=”china”;
C)char *a; a=”china” ;
D)char a[10]; a=”china”;
A)a+1表示的是字符t的地址
B)p指向另外的字符串时,字符串的长度不受限制
C)p变量中存放的地址值可以改变
D)a中只能存放10个字符
A)s+1 B)s++ C)&s[0]+1 D)&s[1]
A)*&a[5] B)a+2 C)*(p+5) D)*(a+2)
A)p+5 B)*a+1 C)&a+1 D)&a[0]
A)*(*(a+i)+j) B)(a+i)[j] C)*(a+i+j) D)*(a+i)+j
A)*(a[i]+j) B)(a+i) C)*(a+j) D)a[i]+j
A)*(p+2) B)p[2] C)p[1]+1 D)(p+1)+2
A)(p+1)[0] B)*(*(p+2)+1) C)*(p[1]+1) D)p[1]+2
A)&a B)a+1 C)a D)&a[1]
A)是一个指向整型变量的指针
B)是一个指针数组名
C)是一个指针,它指向一个含有四个整型元素的一维数组
D)定义不合法
A)int q[5] B)int *q C)int *(q[5]) D)int (*q)[5]
A)int *b[]={1,3,5,7,9} ;
B)int a[5],*num[5]={&a[0],&a[1],&a[2],&a[3],&a[4]};
C)int a[]={1,3,5,7,9}; int *num[5]={a[0],a[1],a[2],a[3],a[4]};
D)int a[3][4],(*num)[4] ; num[1]=&a[1][3];
A)q[i]=b[i]; B)p=b; C)p=b[i]; D)q[i]=&b[0][0]
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;
A)int a[3], *p; p=&a; B)int a[5], *p; p=a;
C)int a[5];int *p=a=100;
D)int a[5]; int *p1,*p2=a; *p1=*p2;
A)x[3] B)p1=x+3,*p1++
C)p1=x+2,*(p1++) D)p1=x+2,*++p1
int a[ ]={2,4,6,8,10,12,14,16,18,20,22,24},*q[4],k;
for (k=0; k<4; k++) q[k]=&a[k*3];
printf(“%d\n”,q[3][0]);
A)22 B)16 C)20 D)输出不合法
A)int a[3][2]; B)char *a[ ]={“12”,”ab”};
C)char (*a) [3] D)int b[10], *a=b;
A)&a[0][0]+6*i+j B)&a[0][0]+4*j+i
C)&a[0][0]+4*i+j D)&a[0][0]+6*j+I
main ( )
{ int x[5]={2,4,6,8,10}, *p, **pp ;
p=x , pp = &p ;
printf(“%d”,*(p++));
printf(“%3d”,**pp);
}
A)4 4 B)2 4 C)2 2 D)4 6
A)*((*p+1)[2]) B)(*p+1)+2
C)*(*(p+5)) D)*(*(p+1)+2)
A)一个字符 B)一个地址 C)一个字符串 D)一个不定值
int main()
{ int x[] = {10, 20, 30};
int *px = x;
printf("%d,", ++*px); printf("%d,", *px);
px = x;
printf("%d,", (*px)++); printf("%d,", *px);
px = x;
printf("%d,", *px++); printf("%d,", *px);
px = x;
printf("%d,", *++px); printf("%d\n", *px);
return 0;
}
程序运行后的输出结果是( A )
A)11,11,11,12,12,20,20,20 B)20,10,11,10,11,10,11,10
C)11,11,11,12,12,13,20,20 D)20,10,11,20,11,12,20,20