PAGE
PAGE 1
测试六( 指针 ) 姓名: 学号:
一.选择题?
1.?变量的指针,其含义是指该变量的(????)。?
A)值????????B)地址???????C)名????????D)一个标志?
2.?已有定义int?k=2;int?*ptr1,*ptr2;且ptr1和ptr2均已指向变量k,下面不能正确执行的赋值语句是(????)。
?A)k=*ptr1+*ptr2???? ??B)ptr2=k??? ?????C)ptr1=ptr2?????? ????D)k=*ptr1*(*ptr2)?
3.?若有说明: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??
4.?若有语句:int?*p,a=4;和p=a;下面均代表地址的一组选项是(?????)。?
A)a,p,*a???????????B)*a,a,*p????????C)*p,*p,a????????D)a,*p,p
5.?下面判断正确的是(?????)。
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”?;?
6.?下面程序段的运行结果是(????)。?
char?*s=”abcde”?;? s+=2; ??printf(“%d”,s);?
A)cde?????????????????B)字符’c’???????C)字符’c’的地址?????D)不确定
7.?设有程序段:char?s[?]=”china”;?char?*p??p=s?则下面叙述正确的是(????)。
A)数组s中的内容和指针变量p中的内容相等 B)s和p完全相同?
?C)s数组长度和p所指向的字符串长度相等 ?D)*p与s[0]相等?
8.?下面程序段的运行结果是(????)。???
?char?a[?]=”language”,*p;????? p=a?;
??? while?(*p!=’u’) ?{?printf(“%c”,*p-32);? p++;?? }?
A)LANGUAGE???????B)language?????????????C)LANG?????????????D)langUAGE
9.?以下说明不正确的是(????)。?
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”;?
10.?设有说明语句:char?a[]=”It?is?mine”;char?*p=”It?is?mine”;则以下不正确的叙述是(????)。?
A)a+1表示的是字符t的地址??????? ??B)p指向另外的字符串时,字符串的长度不受限制?
C)p变量中存放的地址值可以改变? D)a中只能存放10个字符
11.?若已定义char?s[10];则在下面表达式中不表示s[1]的地址是(?????)。?
A)s+1?????? B)s++? ?????C)s[0]+1?? ????D)s[1]?
12.?若有定义:int?a[5],*p=a;则对a数组元素的正确引用是(???)。
?A)*a[5]?? ??B)a+2???? ??C)*(p+5)????? ?D)*(a+2)
13?.若有定义:int?a[2][3];则对a数组的第i行第j列元素值的正确引用是(????)。?
A)*(*(a+i)+j)????????B)(a+i)[j]??????????C)*(a+i+j)??????????D)*(a+i)+j?
14.?若有程序段:int?a[2][3],(*p)[3];?p=a;则对a数组元素地址的正确引用是(????)。?
A)*(p+2)???????? ??B)p[2]????? ????C)p[1]+1???????? ??D)(p+1)+2
15.?若有定
原创力文档

文档评论(0)