C语言指针练习+答案+讲解_第1页
C语言指针练习+答案+讲解_第2页
C语言指针练习+答案+讲解_第3页
C语言指针练习+答案+讲解_第4页
C语言指针练习+答案+讲解_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

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

文档简介

第7章指针7.1选择题1.如果存在说明,则int a=2、*p=a、* q=p;以下无效的赋值语句为(d):a . p=q;b . * p=* q;c . a=* q;d . q=a;a是整数,Int *p,*q定义了指针p,q是指向整数的指针。p获取a的地址,q获取p的地址p,q是指针(即地址),*p和*q是此指针指向的整数值(此地址中存储的值)。a)如果将q的地址分配给p,则p和q指向完全相同的数字2B) q的数据个pc)将q的数据发送给aD) a的数据为2,无法给出地址。*如果q=a如果已定义:int a=511,* b=a;printf(“% d n”,* b);结果如下:dA.待定值b.a的地址c.51d.511Int a=511,* b=a;a是成型变量b是成型指针变量,指向aprintf(“% d n”,* b);输出指针变量b。参考变量的值输出结果511Int a=2,*p1=a,*p2=a已定义。下面未正确执行的赋值语句为(b)。A.A. a=* p1 * p2b . P1=a;C. p1=p2d . a=* P1 *(* p2);47、以下语句已知在程序中定义:Int *P1,* P2int k;P1=k;p2=k;无法在以下语句中正确执行示例(b)a,k=* P1 * P2b,p2=k;c,P1=P2d,K=* P1 *(* P2);P1 P2是指针,k是整数变量,变量如何为指针赋值?a实际上执行了k=k(P1和P2都指向k,因此*P1 *P2实际上意味着k)c是赋值语句d实际上运行了K=K*K4.指向变量的指针,表示该变量的(b)。A.值b .地址c .名称d .标志5.如果有说明性语句:int a、b、c、* d=c;从键盘准确地读取三个整数,并分配给变量a、b和c的语句为(a)。A.scanf(“% d % d % d”,a,b,d);B.scanf(“% d % d % d”,a,b,d);C.scanf(“% d % d % d”,a,b,d);D.scanf(“% d % d % d”,a,b,* d);对于Int c,* d=c;输入c的值可以是scanf(“% d”,c),因为c是整数数据,d是指向变量c的指针(即d=c,*是指针类型的说明符)。也可以使用scanf(“% d”,d)。如果定义了int a=5:(1),(2)两个语句的正确说明为(d)。(1)int * p=a;(2)* p=a;A.语句(1)和(2)的*p语义相同,意味着为指针变量p赋值。B.语句(1)和(2)的执行结果是将变量a的地址值分配给指针变量p。C.(1)初始化p,使p指向a。(2)变量a的值指定给指针变量p。D.(1)初始化p,使p指向a。(2)将变量a的值指定给*p。A:(1):*p,使用int类型指针定义(2): * p表示p指向的变量将B(1)变量a的地址赋给指针变量p(2),将变量a的值赋给p指向的变量如果c的前半部分正确,后半部分错误,则(2)将变量a的值赋给p指向的变量。如果有语句,则int *p,a=10p=a;以下是表示地址的选项集(d):A.a、p、* a B. * a、a、* pC.* p、* p、a d.a、* p、pInt *p定义指针。p=a,p指向a的地址,*p=a,*指针名称是指针指向的地址,a是a的地址,*p=a,p是a的放置地址0.2345px8.如图所示,如果需要建立double *p,x=0.2345等存储结构:正确的赋值语句为()。ba . p=x;b . p=x;C.* p=x;d . * p=x;9.如果存在描述,请输入int *p,a=1,b;下面的有效程序段为(b)。a . p=b;b . scanf(“% d”,b);scanf(“% d”,p);* p=b;c . p=b;d . p=b;scanf(“% d”,* p);* p=a;在a,B中,p是B的地址,要输入B,必须是scanf(“% d”,p)。在c中,p尚未分配给*p。也就是说,为未打开的地址指定值d表示p等于b的地址,p地址的数量替换为a,等于b= m=6、n=9、*p、*q等语句。p=m;q=n;可选择的赋值语句(c)实现下图所示的存储结构,如图1所示。mpnqpmqnA.* p=* q;b . p=* q;C.p=q;d . * p=q;11.以下程序调用scanf函数并在变量a中输入数值的方法是错误的原因(b):#includeMain()Int *p、*q、a、b;p=a;printf( input a : );scanf(“% d”,* p);.A.* p表示指针变量p的地址B.* p表示变量a的值,而不是变量a的地址C.* p表示指针变量p的值D.* p只能用于说明p是指针变量Scanf后面的参数是地址,该地址接收的值位于此地址12.下一个程序的功能是在输入的10个字符串中查找最长的字符串。请在_

温馨提示

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

评论

0/150

提交评论