c语言(指针).docVIP

  • 169
  • 0
  • 约8.43千字
  • 约 12页
  • 2017-11-10 发布于江苏
  • 举报
第八章 指 针 一.? 选择题 1.??变量的指针,其含义是指该变量的( )。 A.值 B.地址 C.名 D.一个标志 2.???? 已有定义int k=2,*ptr1,*ptr2;且ptr1和ptr2均已指向变量k,下面不能正确执行的赋值语句是( )。 A.k=*ptr1+*ptr2 B.ptr2=k C.ptr1=ptr2 D.k=*ptr1*(*ptr2) 3.???? 若有说明:int *p,m=5,n; 以下程序段正确的是( )。 A.p=n; scanf(“%d”,p); B.p = n ; scanf(“%d”,*p); C.scanf(“%d”,n); *p=n ; D.p = n ; *p = m ; 4.???? 若有说明:int *p1, *p2,m=5,n;以下均是正确赋值语句的选项是( )。 A.p1=m; p2=p1 ; B.p1=m; p2=n; *p1=*p2 ; C.p1=m; p2=p1 ; D.p1=m; *p1=*p2 ; 5.???? 若有语句:int *p,a=4;和p=a;下面均代表地址的一组选项是( )。 A.a, p, *a B.*a,a,*p C.*p,*p,a D.a,*p,p 6.???? 下面程序段中,for循环的执行次数是( )。 A.9 B.7 C.6 D.5 char *s=”\ta\018bc” ; for ( ; *s!=’\0’ ; s++) printf(“*”) ; 7.???? 下面能正确进行字符串赋值操作的是( )。 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) ; 8.???? 下面程序段的运行结果是( )。 char *s=”abcde” ; s+=2 ; printf(“%d”,s); A.cde B.字符’c’ C.字符’c’的地址 D.不确定 9.???? p1和p2是指向同一个字符串的指针变量,c为字符变量,则以下不能正确执行的赋值语句是( )。 A.c=*p1+*p2 B.p2=c C.p1=p2 D.c=*p1*(*p2) 10.? 以下说明不正确的是( )。 A.char a[10]=”china” ; B.char a[10],*p=a; p=”china”; C.char *a; a=”china” ; D.char a[10],*p; p=a=”china”; 11.? 若有定义:int a[5];则a数组中首元素的地址可以表示为( )。 A.a B.a+1 C.a D.a[1] 12.? 已有函数max(a,b),为了让函数指针变量p指向max,正确的方法是( )。 A.p=max; B.p=max(a,b); C.*p=max; D.*p=max(a,b); 13.?? 对于类型相同的指针变量,不能进行哪种运算? A. + B. - C. = D. == 14.?? 若有以下说明和语句,则p1-p2的值为多少? int a[10], *p1, *p2; p1=a; p2=a[5]; A. 5 B. 6 C. 10 D. 非法 15.?? main()函数可以带两个形参,一般分为argc和argv,其中argv可以定义为(   )。 A. int argv; B. char * argv[]; C. char argv[]; D.char *

文档评论(0)

1亿VIP精品文档

相关文档