欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    C语言-第8章 指针.doc

    • 资源ID:78783257       资源大小:33KB        全文页数:7页
    • 资源格式: DOC        下载积分:20金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要20金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    C语言-第8章 指针.doc

    第8章 善于利用指针一、单项选择题1 语句int *p;说明了 。A)p是指向一维数组的指针 B)p是指向函数的指针,该函数返回一int型数据C)p是指向int型数据的指针 D)p是函数名,该函数返回一指向int型数据的指针2. 变量的指针,其含义是指该变量的:( ) A) 值 B) 地址 C) 名 D)一个标志3.若x是整型变量,pb是基类型为整型的指针变量,则正确的赋值表达式是( )A) pb=&x B) pb=x C) *pb=&x D) *pb=*x4、已知:int a, *p=&a; 则下列函数调用中错误的是( )。 A、scanf(“%d”,&a); B、scanf(“%d”,p); C、printf(“%d”,a); D、printf(“%d”,p);5. 对于同类型的指针变量,不可能进行的运算是()。A)- B)= C)+ D)=6. 下列不正确的定义是()。A)int *p=&i,i; B)int *p,i; C)int i,*p=&i; D)int i,*p;7. 若有说明:int n=2,*p=&n,*q=p,则以下非法的赋值语句是:A)p=q B)*p=*q C)n=*q D)p=n8. int *p,a=10,b=0; p=&a; a=*p+b;执行该程序段后,a的值为 A) 编译出错 B) 10 C) 11 D) 129有语句:int a10,;则 是对指针变量p的正确定义和初始化。A)int p=*a; B)int *p=a; C)int p=&a; D)int *p=&a;10. 若有说明语句“int a5,*p=a;”,则对数组元素的正确引用是( )。A)ap B)pa C)*(p+2) D)p+211. 若指针变量p指向整型数组a10的首地址, 即p=a ; 则下列数组元素ai的表示方法中正确的是( )A) p+i B)&( a+i) C) *(a+i) D) *(p+i*2)12. 有如下程序: int a10=1,2,3,4,5,6,7,8,9,10,*P=a;则数值为9的表达式是 A) *P+9 B) *(P+8) C) *P+=9 D) P+813. 若有以下定义,则不能表示a数组元素的表达式是( )。 int a10=1,2,3,4,5,6,7,8,9,10,*p=a;A)*p B)a10 C)*a D)ap-a14. 已知int a5,*p=a;下面的叙述中正确的是 。A) p+1与a+1等价 B) p1与*p等价 C) *(p+1)与a+1等价 D) p1与a+等价15. 若有以下说明: int a10=1,2,3,4,5,6,7,8,9,10,*p=a; 则数值为4的表达式是A) *p+4 B) *(p+4) C) *(p+3) D) p+316. 下面程序的输出结果是 main() int a =1,2,3,4,5,6,7,8,9,0,*p; p=a; printf(“%dn”,*p+1); A) 0 B) 1 C) 2 D) 输出错误18. 执行语句 char c10= ”abcd”,*pc=c; 后,*(pc+4)的值是()A) “abcd” B)0 C) d D) 不确定19下列函数的功能是 。 void fun(int *p1,int *p2) int p;p=*p1;*p1=*p2;*p2=p;A) 交换*p1和*p2的值 B) 语法正确,但无法交换*p1和*p2的值C) 交换*p1和*p2的地址 D)有语法错误20. 有如下程序main() char s=“ABCD”, *P;for(p=s+1; p<s+4; p+) printf (“%sn”,p); 该程序的输出结果是 A) ABCD B) A C) B D) BCDBCD B C CDCD C D DD D21. 请读程序,输出结果为: ( )#include<stdio.h>int a=2,4,6,8;main() int i,b4;int *p=a;for(i=0;i<4;i+) bi=*p;p+;printf("%dn",b2);A) 6 B) 8 C) 4 D) 2二、阅读程序,写出运行结果1.# include <stdio.h>main ( ) int x = 10, 20, 30, 40, 50 ;int *p ;p=x;printf ( “%d”, *(p+2 ) ); 运行结果为: 302.#include <stdio.h>main( ) char s=”abcdefg”; char *p; p=s; printf(“ch=%cn”,*(p+5);运行结果为: ch=f3.#include<stdio.h>main ( ) int a=1, 2, 3, 4, 5 ;int x, y, *p;p=a;x=*(p+2);printf("%d:%d n", *p, x);运行结果为: 1:34.#include <stdio.h>main( ) int a =1, 2, 3, 4, 5, 6; int x, y, *p; p = &a0; x = *(p+2); y = *(p+4); printf(“*p=%d, x=%d, y=%dn”, *p, x, y);运行结果为: *p=1, x=3, y=55.#include<stdio.h>main() int a5=1,2,3,4,5; int i,*p; p=a; for(i=0;i<5;i+)printf("*%d",ai); for(i=0;i<5;i+) printf("#%d",*p+);运行结果为: *1*2*3*4*5#1#2#3#4#56.#include<stdio.h>main() static int a =2,5,7; int s,k,*p=NULL; s=1; p=a; for (k=0;k<3;k+) s*=*(p+k); printf("%dn",s);运行结果为: 707.#include<stdio.h>main()int x=2,y,z; int *px=&x; *(px+1)=4; y=*+px; z=+*px; printf("ny=%dz=%d",y,z); 运行结果为: y=4z=38#include <stdio.h>main()char a="I am a boy.", b20;int i; for(i=0; *(a+i)!='0' i+) *(b+i)= *(a+i);*(b+i)='0' for(i=0; bi!='0' i+) printf("%c",bi); 运行结果为:I am a boy.9.#include<stdio.h>main() int a=1,2,3,4,5,6;int *p;p=a;printf("%d ",*p);printf("%d ",*(+p);printf("%d ",*+p);printf("%d ",*(p-); p+=3;printf("%d %d ",*p,*(a+3); 运行结果为:2 3 3 5 410.#include <stdio.h>char s=”ABCD”;main() char *p; for(p=s;p<s+4;p+) printf(“%c %sn”,*p,p); 运行结果为: A ABCDB BCDC CDD D11.#include<stdio.h> main( ) static char a =”Program”, *ptr; for(ptr=a, ptr<a+7; ptr+=2) putchar(*ptr); 运行结果为: Prom12.#include<stdio.h> main() ststic int a =2,5,7;int s,k,*p=NULL; s=1; p=a; for (k=0;k<3;k+) s*=*(p+k); printf("%dn",s);运行结果为: 7013.#include <stdio.h>main() static int a34=1,2,3,4,5,6,7,8,9,10,11,12; int *p,i,j,n; for(p=a0;p<a0+6;p+) printf("%d,",*p);运行结果为: 1,2,3,4,5,6,14. #include<stdio.h>swap(int *, int *);main( ) int a=5,b=0; int *p=&a, *q=&b; printf(“before swap a=%d,b=%dn”,a,b); swap(p,q); printf(“after swap a=%d,b=%dn”,a,b);swap(int *px, int *py) int temp; temp=*px; *px=*py; *py=temp; printf(“in swap x=%d,y=%dn”,*px,*py);运行结果为: before swap a=5,b=0in swap x=0,y=5after swap a=0,b=5

    注意事项

    本文(C语言-第8章 指针.doc)为本站会员(飞****2)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开