- 1、本文档共10页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
PAGE
- PAGE 10 -
练习7-1答案
选择题
1.已知:int *p, a;,则语句“p=a;”中的运算符“”的含义是( D )。
A.位与运算 B.逻辑与运算 C.取指针内容 D.取变量地址
2.已知:int a, x;,则正确的赋值语句是( C )。
A.a=(a[1]+a[2])/2; B.a*=*a+1; C.a=(x=1, x++, x+2); D.a=good;
3.已知:int a, *p=a;,则下列函数调用中错误的是( D )。
A.scanf(%d, a); B.scanf(%d, p); C.printf(%d, a); D.scanf(%d, *p);
4.已知:char *p, *q;,选择正确的语句( C )。
A.p*=3; B.p/=q; C.p+=3; D.p+=q;
5.已知:int x;,则下面的说明指针变量pb的语句( C )是正确的。
A.int pb=x; B.int *pb=x; C.int *pb=x; D.*pb=*x;
练习7-2答案
一、选择题
1.设有说明int (*ptr)[M];,其中的标识符ptr是( C )。
A.M个指向整型变量的指针
B.指向M个整型变量的函数指针
C.一个指向具有M列的二维数组的一行的指针
D.具有M个指针元素的一维数组的指针
2.已知:double *p[6];,它的含义是( C )。
A.p是指向double型变量的指针 B.p是double型数组
C.p是指针数组 D.p是数组指针
3.已知:char s[10], *p=s,则在下列语句中,错误的语句是( B )。
A.p=s+5; B.s=p+s; C.s[2]=p[4]; D.*p=s[0];
4.已知:char s[100]; int i;,则在下列引用数组元素的语句中,错误的表示形式是( D )。
A.s[i+10] B.*(s+i) C.*(i+s) D.*((s++)+i)
5.已知:char b[5], *p=b;,则正确的赋值语句是( C )。
A.b=abcd; B.*b=abcd; C.p=abcd; D.*p=abcd;
6.下列对字符串的定义中,错误的是( A )。
A.char str[7]=FORTRAN; B.char str[]=FORTRAN;
C.char *str=FORTRAN; D.char str[]={F, O, R, T, R,A,N,0};
7.已知:char s[20]=programming, *ps=s;,则不能引用字母o的表达式是( A )。
A.ps+2 B.s[2] C.ps[2] D.ps+=2,*ps
8.已知:char **s;,正确的语句是( B )。
A.s=computer; B.*s=computer; C.**s=computer; D.*s=A;
9.已知:char c[8]=beijing, *s=c; int i;,则下面的输出语句中,错误的是( B )。
A.printf(%s\n, s); B.printf(%s\n, *s);
C.for (i=0; i7; i++) D.for(i=0; i7; i++)
printf(%c, c[i]); printf(%c, s[i]);
10.已知:char *aa[2]={abcd, ABCD};,则以下说法正确的是( D )。
A.aa数组元素的值分别是abcd序列和ABCD序列
B.aa是指针变量,它指向含有两个数组元素的字符型一维数组
C.aa数组的两个元素分别存放的是含有4个字符的一维字符数组的首地址
D.aa数组的两个元素中各自存放了字符a和A的地址
11.已知:int a[3][4], *p=a[0][0]; p+=6;,那么*p和( D )的值相同。
A.*(a+6) B.*(a[0]+6) C.*a[1]+2 D.a[1][2]
12.已知:int a[]={1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12}, *p=a;,则值为3的表达式是( A )。
A.p+=2, *(p++) B.p+=2, *++p C.p+=3, *p++ D.*(a[0][0]+6)
13.已知:int **p;,则变量p是( B )。
A.指向int的指针 B.指向指针的指针
C.int型变量 D.以上三种说法均是错误的
14.已知:int a[]={1, 2, 3, 4}, y, *p=a[1];,则执行语句y=(*--p)++
文档评论(0)