云题海 - 专业文章范例文档资料分享平台

当前位置:首页 > 第八章 指针

第八章 指针

  • 62 次阅读
  • 3 次下载
  • 2025/6/22 23:26:58

一、概念题

1.下列定义的含义

(1)int *p[3]; (2)int (*p)[3]; (3)int *p(int); (4)int (*p)(int); (5)int **p;

2.语句int a,*p=&a;的含义是什么?

3.二维数组a[3][4],&a[i][j]表示_____________,a表示___________,a[0] 表示____________。

4.下列数组元素的指针法表示。 (1)num[3] (2)data[4][2]

写出下列数组元素的下标法表示。 (1)*(*(a+1)+2) (2)(*(a+3))[4] (3)*(a[2]+5)

二、判断题

1.若定义int i,*p; 使p指向i的赋值语句是 *p=&i ( )。

2.若定义int i=100,*p=&i;设为i分配的内存地址为200~201,则*p为100 ( )。 3.若定义int a,b,*p1=&a,*p2=&b;使p2也指向a的赋值语句是p2=p1 ( )。 4.设p是一个指针变量,则int a[6],*p;p=&a;使指针p指向数组a。( )。 5.a是一维数组名,数组元素a[1]还可以写作“*(a++)”( )。 6.p为指向字符串的指针变量,*p表示所指字符串的值( )。 7.若定义int b[8], *p=b;则数组元素b[4]地址的引用为p+4 ( )。 8.若定义int b[8], *p=b;则执行p++;后,p指向b[1]( )。 9.对于定义int a[10], *p=a+8;数组a的最后一个元素是p[1]( )。

三、单选题

1. 设int *p,i;以下正确地语句是( )。

A. p=10;

B. i=p;

C. i=*p ;

D. p=&i;

2. 设char s[10];*p=s;以下语句不正确的是( )。

A. p=s+5; B. s=p+5;

C.s[2]=p[4]; D. *p=s[0];

3. 若有下列定义:char c[3],*pc=c; 则对c数组元素地址的正确引用是( )。

A. &c[3] A. *pf--

B. pc+2 B. *(--pf)

C. c++ C. *(pf++)

D. &c D. *(++pf)

4. 已知:float f [ ]={1.0, 2.3 , 4.5}, *pf=f; 则以下哪项不能正确引用数组元素( )。

5. 声明语句为“int a[3][4];”,下列表达式中与数组元素a[2][1]等价的是( )。

A.*(a[2]+1) B. a[9] C. *(a[1]+2) D. *(*(a+2) ) +1 6. 设变量定义为:int n,*p;char ch,*q,*g;,则不正确的语句是( )。

A. p=&n;g=q=&ch; C. p=&n;g=&ch

B. p=&n;q=&ch; D. p=&n;q=&ch;g=p; 7. 设有定义:int a,*pa=&a;以下scanf语句中能正确为变量a读入数据的是( )。

A. scanf(\

B. scanf(\

C. scanf(\

D. scanf(\

8. 不正确的赋值或赋初值的方式是( )。

A. char str[6]={'s', 't', 'r', 'i', 'n', 'g'}; B. char str[10]= \C. char *str=\

D. char str[10]; str=\;

9. 以下程序段中,不能正确赋字符串(编译时系统会提示错误)的是( )。

A. char s[10]=\

B. char t[]=\

C. char s[10];s=\D. char s[10];strcpy(s,\10. 设char *s; 以下正确地语句是( )。

A. s=”computer”; B.* s=”computer”;

C. *s=” ”;

D.*s=?c?;

11. 设有程序段:“char s[ ]= \”则下面叙述正确的是( A. *p与s[0]相等

B. s和p完全相同

C. s数组长度和p所指向的字符串长度相等 D. 数组s中的内容和指针变量p中的内容相等 12. 以下程序执行的结果( )。

main()

{ int a,b, k=4, m=6, *p1=&k, *p2=&m; a=p1==&m; b=(*p1)/(*p2)+7;

printf(\}

A. a=4, b=7

B. a=0, b=7 C. a=4, b=0 D. a=0, b=0

13. 下列程序段的输出结果是( )。

int *p, *q, k = 5, j=10; p=&j; q = &k ;p = q ; (*p)++; printf(\A. 5

B. 6

C. 10

D. 11

14. 下列程序段的输出结果是( )。

int c[ ]={1, 7, 12}; int *k=c+1;

。 )

printf(\A. 2 main()

{ int a[5]={1,2,3,4,5}; int *p=&a[1]; printf(\ A. 2;

B. 3;

C.4;

D.5;

16. 以下程序执行的结果( )。

#include main()

{ int a[]={1,2,3,4,5,6}; int *p; p=a; *(p+3)+=2;

printf(“%d,%d\\n”, *p,*(p+3)); } A. 1,3

B. 1,6

C. 3, 6

D. 1, 4

17. 下列程序的输出结果是( )。

#include void p(int *x, int *y) { ++*x; --*y;} void main() { int x=0, y=3; p(&x, &y);

printf(\} A. (0, 2) A. &a[2]-2

B. (0, 3) B. 5

C. (1, 3) D. 1

D. p=EOF D.(1, 2)

18. 设变量定义为 int a[3]={1,4,7},*p=&a[2]-2,则*p的值是( )。

C. 2

19. 若变量己正确定义,下列不能使指针p成为空指针的是( )。 A. p='\\0' B. p=0 C. p=NULL 20. 有以下定义

#include char a[10],*b=a;

不能给数组a输入字符串的语句是( )。 21. 以下程序执行的结果( )。

B. 7

C. 8

D. 12

15. 以下程序执行的结果( )。

A. gets(a) B. gets(a[0]) C. gets(&a[0]); D. gets(b);

main()

{ char a[]=\ char *p=a; p=p+2;

printf(\A. I love China! 22. 阅读以下函数

int fun(char *sl,char *s2) { int i=0;

while(sl[i]==s2[i]&&s2[i]!='\\0') i++; return(sl[i]=='\\0'&&s2[i]=='\\0'); }

此函数的功能是( )。 A. 将s2所指字符串赋给s1

B. 比较s1和s2所指字符串的大小,若s1比s2的大,函数值为1,否则函数值为0 C. 比较s1和s2所指字符串是否相等,若相等,函数值为1,否则函数值为0 D. 比较s1和s2所指字符串的长度,若s1比s2的长,函数值为1,否则函数值为0 23. 以下程序执行的结果( )。

main()

{ char str[]=\ while(*ps)ps++;

for(ps--;ps-str>=0;ps--) puts(ps); } A. yz xyz xyz main()

{ int a[3][4]={1,2,3,4,5,6,7,8,9,10,11,12}; int (*pa)[4]=a; pa++;

printf(\A. 3 A. 函数

main()

{ char *s[]={\

B. 7

C.10

D. l1 C.指针变量

D. 数组

25. 对于变量定义char *pp[100],pp是一个( )。

B. 数组元素

26. 以下程序执行的结果( )。

B. z yz xyz

C. y yz xyz

D. x xy

B. love China!

C. China!

D. l

24. 以下程序执行的结果( )。

搜索更多关于: 第八章 指针 的文档
  • 收藏
  • 违规举报
  • 版权认领
下载文档10.00 元 加入VIP免费下载
推荐下载
本文作者:...

共分享92篇相关文档

文档简介:

一、概念题 1.下列定义的含义 (1)int *p[3]; (2)int (*p)[3]; (3)int *p(int); (4)int (*p)(int); (5)int **p; 2.语句int a,*p=&a;的含义是什么? 3.二维数组a[3][4],&a[i][j]表示_____________,a表示___________,a[0] 表示____________。 4.下列数组元素的指针法表示。 (1)num[3] (2)data[4][2] 写出下列数组元素的下标法表示。 (1)*(*(a+1)+2) (2)(*(a+3))[4] (3)*(a[2]+5) 二、判断题 1.若定义int i,*p; 使p指向i的赋值语句是 *p=&i ( )。

× 游客快捷下载通道(下载后可以自由复制和排版)
单篇付费下载
限时特价:10 元/份 原价:20元
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
VIP包月下载
特价:29 元/月 原价:99元
低至 0.3 元/份 每月下载150
全站内容免费自由复制
注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信:fanwen365 QQ:370150219
Copyright © 云题海 All Rights Reserved. 苏ICP备16052595号-3 网站地图 客服QQ:370150219 邮箱:370150219@qq.com