指针习题(C语言程序设计).ppt

上传人:wuy****n92 文档编号:88500640 上传时间:2023-04-26 格式:PPT 页数:23 大小:506.50KB
返回 下载 相关 举报
指针习题(C语言程序设计).ppt_第1页
第1页 / 共23页
指针习题(C语言程序设计).ppt_第2页
第2页 / 共23页
点击查看更多>>
资源描述

《指针习题(C语言程序设计).ppt》由会员分享,可在线阅读,更多相关《指针习题(C语言程序设计).ppt(23页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、第第7章章 指针指针习题习题1.指针变量指针变量保存地址的变量叫指针变量保存地址的变量叫指针变量2.指针变量的声明方式:指针变量的声明方式:数据类型数据类型*变量名;变量名;int*p;char *x;指针变量只占两个字节指针变量只占两个字节3.指针变量的赋值:指针变量的赋值:给一个变量的地址给一个变量的地址int i;p=&ichar a10;x=a;4.指针指向的变量:指针指向的变量:给指针变量的值是哪个变量的地址,给指针变量的值是哪个变量的地址,这个变量就叫指针指向的变量这个变量就叫指针指向的变量5.指针指向的变量的表示:指针指向的变量的表示:*指针变量名指针变量名 *p=2;(i=2)

2、int*q;int b10;int i;q=&b0;for(i=0;i10;i+)scanf(“%d”,q);q+;for(i=0;i10;i+)printf(“%d”,*q);q+一、单项选择题(第188页)1.*p的最终值是()的最终值是()int*p,b=10;int a=2,3,4,1,5,6;p=a;p+=3;a3=b;A.1 B.3 C.4 D.10 p10b2341560a*paa+3*p102.*p的最终值是()的最终值是()char*p,b10=“abcdefghi”;int i;for(i=0,p=b;i10;i+)*p+=*p+1;p=b+5;pib0b1b2b3b4b5

3、b6b7b8b9b10babcdefghi00*pb*pb1b+1cb+2*pdefghij001b+10b+5*p *p=*p+1;p+;210*pg3.3.已知已知p1p1和和p2p2为指针变量,且已指向同一个为指针变量,且已指向同一个整型数组的元素,整型数组的元素,a a是一个整型变量,则下是一个整型变量,则下面无意义的语句是【面无意义的语句是【】。】。p1:p2:a:*p1*p2A.a=*p1;B.a=*p1+*p2;C.a=p1-p2;D.p1=a-p2;7.pA.p+=2,*(+p)B.p+=2,*p+C.p+=3,p+D.p+=2,+*p1234567890数组数组a*p*p*p

4、*p BD 4若有以下定义语句若有以下定义语句int a=1,2,3,4,5,6,7,8,9,0;*p=a;则值为则值为3的表达式是()的表达式是()一单项选择题一单项选择题.8若有以下定义:若有以下定义:char s20=“programming”,*ps=s;则下列则下列不能不能代表代表字符字符o的表达式是的表达式是()A.ps+2 B.s2A.ps+2 B.s2 C.ps2 D.s+=2,*ps;spsps+2 *(ps+2)*(s+2)ps+=2,*ps;一单项选择题一单项选择题.10程序中对fun函数有如下说明:void*fun()此说明的含义是:A.fun函数无返回值B.fun函数

5、的返回值可以是任意的数据类型C.fun函数的返回值是无值型的指针类型D.指针fun()指向一个函数二、填空题1.设有以下定义和语句:设有以下定义和语句:int a32=10,20,30,40,50,60,(*p)2;p=a;则则*(*(p+2)+1)的值为的值为_ 60*(p2+1)p21 *(p+2)1行指针变量行指针变量pp+1p+2*p行指针行指针列指针列指针(元素指针元素指针)*(p+1)*(p+2)2.若有以下说明和语句,则在执行若有以下说明和语句,则在执行for语句后,语句后,*(*(pt+1)+2)表示的数组元素是表示的数组元素是_int t33=1,2,3,4,5,6,7,8,

6、9,*pt3,k;for(k=0;k3;k+)ptk=&tk0;t12指针数组指针数组ptpt0pt1pt21 2 34 5 67 8 9t元素表示:元素表示:*(*(pt+i)+j)3.以下程序运行后输出结果是以下程序运行后输出结果是_main()char s=“9876”*p;for(p=s;ps+2;p+)printf(“%sn”,p);p98760数组数组sss9876876 s+1s+24.若有以下定义:若有以下定义:int a=6,7,8,9,10,*p;则下列程序段的输出结果为则下列程序段的输出结果为_p678910数组数组aap=a;*(p+2)+=2;printf(“%d,%

7、dn”,*p,*(p+2)a*pp+2*(p+2)106,10三、写出程序运行结果1.main()int a=1,2,3,4,5,6;int*p;int i;(;(删除)删除)删除)删除)p=a;*(p+3)+=2;printf(“n1=%d,n2=%dn”,*p,*(p+3);123456apa*pp+3*(p+3)661n1=1,n2=62.main()int i;int*p;p=&i;*p=2;p+;*p=5;p-;printf(“%dn”,i);ip&i*p2&i+1*p5*p3.main()char s=“abcdefg”;char*p;p=s;printf(“ch=%cn”,*(p

8、+5);pabcdefg0ss*p*(p+5)ch=f4.main()int a=2,3,4;int s,i,*p;s=1;p=a;for(i=0;i3;i+)s*=*(p+i);printf(“s=%dn”,s);234apis1a*p*(p+0)*(p+1)*(p+2)24s=24 5.main()int*p1,*p2,*p,a=3,b=5;p1=&a;p2=&b;if(*p1*p2)p=p1;p1=p2;p2=p;printf(“%d,%d,”,a,b);printf(“%d,%d”,*p1,*p2);pp1p23a5b&a&b*p1*p2&a&b&a*p1*p23,5,5,3四四 程序

9、填空程序填空.四四 程序填空程序填空.2.以下函数返回以下函数返回a所指数组中最小值下标所指数组中最小值下标 fun(int*a,int n)int i,j=0,p;p=j;for(i=j ;in;i+)if(aiap)p=i;return p;main()int s=20,10,4,15,35;int k;k=fun(s,5);printf(“%dn”,sk);p=0;1p20 10 4 15 35 5ia0 a1 a2 a3 a4pipii五五 编程编程1.调用函数由调用函数由大大到小排序三个整数(指针法)到小排序三个整数(指针法)2调用函数由大到小排序一维数组(数组名)调用函数由大到小排序一维数组(数组名)void sort(int *a,int n)void sort(int a,int n)5 2 9 6 4 9 2 5 6 4 9 6 5 2 4 9 6 5 2 4 int i;/*i为轮数,共n-1轮*/for(i=0;in-1;i+)i=0i=1i=2i=n-2int k;/*k为最大值下标*/k=i;/*k初值在数组开头*/kkkkint j;/*数组下标*/for(j=i+1;jn;j+)if(akaj)k=j;temp=ai;ai=ak;ak=temp;int temp;a0a1a2a3a4kkkiiii

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 大学资料

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

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