指针综合练习题(带答案)_第1页
指针综合练习题(带答案)_第2页
指针综合练习题(带答案)_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、指针综合练习题一、选择题1 .若有以下定义,则对a数组元素的正确引用是 a5,*p=a;a)*&a5b)a+2 c)*(p+5)d)*(a+2)2 .若有定义:int a23,则对a数组白勺第i行j列元素地址的正确引用为_da)*(ai+j)b)(a+i)c)*(a+j) d)ai+j3 .若有以下定义,则p+5表示 a10,*p=a;a)元素a5的地址b)元素a5的值c)元素a6的地址d)元素a6的值4 .设pl和p2是指向同一个字符串的指针变量,c为字符变量,则以下不能正确执行的赋值语句是 b.a)c=*p1+*p2; b)p2=c c)p1=p2d)c=*

2、p1*(*p2);5 .若有说明语句char a="It is mine"char *p="It is mine"则以下不正确的叙述是 d.a)a+1表示的是字符t的地址b)p指向另外的字符串时,字符串的长度不受限制c)p变量中存放的地址值可以改变d)a中只能存放10个字符二、填空题1指针变量保存了另一变量的(1)值,不可以任意给指针变量赋一个地址值,只能赋给它(2) 和 (3) 的地址。使用变量名来访问变量,是按 (4) 来直接存取变量 称为 方式;而借助指针变量取得另一变量的地址,访问该变量称为(6)方式。答案:(1)地址(2) NULL(3)已经分

3、配了内存的变量的地址(4)按变量的地址(5)直接访问(6)间接访问2以下程序的功能是:通过指针操作,找出三个整数中的最小值并输出。请填空。void main()int *a,*b,*c,num,x,y,z;a=&x;b=&y;c=&z;cou<<"输入3个整数:"cin>>a>>b>>c;cout<<*a<<*b<<*c;num=*a;if(*a>*b)_num=*b;if(num>*c) _num=*c;cout<<" 输出最小整数

4、:"<<num<<endl;3 下面程序段的运行结果是_ef.char str="abc0def0ghi",*p=str;cout<<p+5;4若有定义:int a=2,4,6,8,10,12,*p=a; 则 *(p+1) 的值是_4. *(a+5) 的值是_12.5 若有以下定义:int a23=2,4,6,8,10,12; 则 a10 的值是_8_. *(*(a+1)+0) 的值是8.6 以下程序将数组a 中的数据按逆序存放,请填空。#define M 8/定义宏 M 代表了 8void main()int aM,i,j,t

5、;for(i=0;i<M;i+)cin>>ai;i=0;j=M-1;while(i<j)t=*(a+i);_*(a+i)=*(a+j);*(_a+j)=t;i+;j-; for(i=0;i<M;i+) cout<<*(a+i);三、简答题1 指针变量与整型量的加减运算代表什么意义?答: 指针变量与整型量的加减表示移动指针,以指向当前目标前面或后面的若干个位置的目标。 指针与整型量i 的加减等于指针值(地址)与i*sizeof( 目标类型)积的加减,得出新的地址。2 设a为数组名,那么 a+是否合法?为什么?答:非法。因为a 是指针常量。3 有如下定义:

6、int ival=60021;int *ip;double *dp;下面哪些赋值非法或可能带来错误,并加以讨论。ival=*ip; ival=ip; *ip=ival; ip=ival; *ip=&ival;ip=&ival; dp=ip; dp=*ip; *dp=*ip;解: ival=*ip; 错,未确定指针ip 初值,用随机内存地址中的数据给ival 赋值是危险的。但语法对。ival=ip; 错,赋值类型错,指针型不能赋给整型。*ip=ival; 错,未确定指针ip 初值,用ival 给随机内存赋值是危险的。但语法对。ip=ival; 错,赋值类型错,整型不能赋给指针型。*ip=&ival; 错,赋值类型错,地址(指针型)不能赋给整型。ip=&ival; 对,地址赋给指针型。dp=ip; 错,整型指针

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论