上机实验九 指针--参考答案

上机实验九 指针--参考答案

ID:16136061

大小:63.59 KB

页数:5页

时间:2018-08-08

上机实验九  指针--参考答案_第1页
上机实验九  指针--参考答案_第2页
上机实验九  指针--参考答案_第3页
上机实验九  指针--参考答案_第4页
上机实验九  指针--参考答案_第5页
资源描述:

《上机实验九 指针--参考答案》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、上机实验九指针一.目的要求1.掌握指针的基本概念。2.掌握指针变量的定义和初始化。二.实验内容【实验题1】程序填空,交换指针p1,p2所指向的变量。#includevoidmain(){inta=1,b=2,*p1,*p2,*pt;p1=&a;p2=&b;printf(“p1=%d,p2=%d”,p1,p2);//交换指针变量p1,p2所指向的变量pt=p1;p1=p2;p2=pt;//注意:这三个指针变量前均无间接引用符*printf(“p1=%d,p2=%d”,p1,p2);}运行结果:(注意:输出的是p1、p2所指变量的地

2、址,即变量a或b的地址)【实验题2】程序填空,交换指针p1,p2所指变量的值。#includevoidmain(){inta=1,b=2,*p1,*p2,temp;p1=&a;p2=&b;printf(“*p1=%d,*p2=%d”,*p1,*p2);//交换p1,p2所指向的变量的值temp=*p1;*p1=*p2;*p2=temp;//注意:temp是普通变量,而指针p1,p2前均使用间接引用符*printf(“*p1=%d,*p2=%d”,*p1,*p2);}运行结果:(注意:指针前加*,代表指针所指变量)【实验题3】程序

3、填空:输入三个整型变量i,j,k的值。请设置三个指针变量p1,p2,p3,分别指向i,j,k。然后通过p1,p2,p3使i,j,k三个变量的值依次交换,即原来i的值赋给j,原来j的值赋给k,原来k的值赋给i。输出交换后i,j,k的值。ijk分析:三个值轮换跟两个值互换是一样的原理,在变量被赋新值之前必须保证原值已经被保存。设temp为临时变量,则temp=i;i=k;k=j;j=temp,参考以上做法,轮换时要求用指针p1,p2,p3来替代i,j,k.源程序:#includevoidmain(){inti,j,k,temp,*p1=&i

4、,*p2=&j,*p3=&k;printf("Inputijk:");scanf("%d%d%d",&i,&j,&k);//输入ijk//i-->j-->k-->itemp=*p1;*p1=*p3;*p3=*p2;*p2=temp;printf("%d%d%d",*p1,*p2,*p3);//输出轮换后的ijk}输入:123输出:312【实验题4】程序填空:输入三个整数,要求设计2个指针变量p1,p2,使p1指向这三个数的最大值,p2指向最小者,并输出最大值和最小值。#includevoidmain(){inta,b,c,*p1,*

5、p2,*p3;scanf(“%d%d%d”,&a,&b,&c);//令p1指向最大值p1=a>b?&a:&b;//p1指向a,b中较大者if(c>*p1)p1=&c;//令p2指向最小值p2=avoidmain(){doublea[8],tem

6、p,*p,*q;for(i=0;i<7;i++)for(j=0;j<7-i;j++)if(a[j]>a[j+1]){temp=a[j];a[j]=a[j+1];a[j+1]=temp;}或者//输入数组printf("Input8doubles:");for(p=a;pa;q--)for(p=a;p*(p+1)){temp=*p;*p=*(p+1);*(p+1)=temp;}//输出排序后的数组printf("Aftersorted:");fo

7、r(p=a;pvoidmain(){inti,a[5]={1,2,3,4,5};for(i=0;i<5;i++)printf("%d",*(a+i));printf("");}方法1:用下标引用数组元素,源程序如下:#includevoidmain(){inti,a[5]={1,2,3,4,5};for(i=0;i<

8、5;i++)printf("%d",a[i]);printf("");}方法

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。