


全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
练习6 指针与一维数组 参考答案一、目的1、 掌握指针变量的定义和引用方法;2、 掌握用指向一维数组的指针编写应用程序的一般方法。二、实验1 运行程序C6_1r.C(指导P38实验3.6-1(1)),验证结果。运行结果:a=13,b=102 运行程序C6_2r.C(指导P38实验3.6-1(2)),验证结果。运行结果:2,2,23 运行程序C6_3r.C(指导P38实验3.6-1(3)),验证结果。运行结果:1 2 3 44 程序修改:C6_4m.C首先使指针pa指向变量a(初值为10),然后通过pa间接访问a的方法将a的值修改为20。程序在一对/*/之间有两个错误,请修改。#include void main()int a=10,*pa; /*/pa=&a; /*将20赋给pa指向变量(即a)*/*pa=20; /*将20赋给pa指向变量(即a)*/*/printf(%dn,a);5 运行程序C6_5m.C,输入两个整数,观察程序能否实现功能:使用指针将两个数按降序重新存放。如果不能实现,请修改程序实现上述要求。#include void main( )int a,b,*p1=&a,*p2=&b,t; printf(input a and b:); scanf(%d %d,&a,&b);if(ab) t=*p1; /*应该将p1和p2指针指向的两个变量的值交换*/ *p1=*p2; *p2=t; printf(a=%d,b=%dn,a,b);6 编写程序C6_6.C:用指针方法实现指导P39实验3.6-2(2)(将数组a中的n个数按反序存放)。要求: 用首地址偏移量法输入数组,用指针移动法输出数组; 用某种指针方法实现反序存放。#include#include#define N 6void main() int aN,i,*p=a; int *q,temp;/*输入数组,用首地址偏移量法*/ printf(Please input %d integers:n,N); for (i=0;i=N-1;i+) /*反序存放实现2首地址偏移量法 */for(i=0;i=N/2-1;i+) temp=*(a+i);*(a+i)=*(a+N-1-i);*(a+N-1-i)=temp;scanf(%d,a+i);/*或scanf(%d,p+i);*/*反序存放实现1指针移动法(好!)*/ for (p=a,q=a+N-1;pq;p+,q-) temp=*p;*p=*q;*q=temp;/*输出数组,用指针移动法*/ printf(Output the numbers :n); for (p=a;p=a+N-1;p+) printf(%d ,*p); printf(n); getch();7 书面作业编写程序C6_7.C:用指针方法实现教程P191习题6.2(5)(输入10个整数存入数组a中,按从小到大的次序输出)。解1:选择排序,用指针移动法实现#include#define N 6void main()int aN,*p,*q,temp,*pmin; printf(Please input %d integers:n,N); for(p=a;p=a+N-1;p+) scanf(%d,p); for(p=a;p=a+N-2;p+) pmin=p; for (q=p+1;q=a+N-1;q+) if(*q*pmin) pmin=q; if(pmin!=p) temp=*pmin;*pmin=*p;*p=temp; printf(Output the numbers :n); for (p=a;p=a+N-1;p+) printf(%d ,*p); printf(n);解2:选择排序,用指针偏移量法实现#include#define N 6void main()int aN,*p=a,i,j,temp,*pmin; printf(Please input %d integers:n,N); for(i=0;i=N-1;i+) scanf(%d,p+i); for(i=0;i=N-2;i+) pmin=p+i; for (j=i+1;j=N-1;j+) if(*(p+j)*pmin) pmin=p+j; if(pmin!=p+i) temp=*pmin;*pmin=*(p+i);*(p+i)=temp; printf(Output the numbers :n); for(i=0;i=N-1;i+) printf(%d ,*(p+i); printf(n);三、编程选做(均要求用指针方法)8 教程P191习题6.2(1)(输出数组元素的平均值)9 教程P191习题6.2(2)(输出数组中的最大值与次最大值)10 教程P191习题6.2(3)(将数组中最大值与最小值的位置互换后输出)#include#include#define N 6void main() int aN,i,*p=a; int *pmin,*pmax,temp; printf(Please input %d integers:n,N); for (i=0;iN;i+)/ scanf(%d,a+i); pmin=pmax=a; for (p=a+1;pa+N;p+) if (*p*pmax) pmax=p; temp=*pmin;*pmin=*pmax;*pmax=temp; printf(Output the numbers :n); for (p=a;pa+N;p+) printf(%d ,*p); printf(n); getch();11 书面作业教程P191习题6.2
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年滨州阳信县医疗卫生机构公开招聘人员(44人)考试模拟试题及答案解析
- 2025年智慧农业无人机智能化创新产品报告
- 2025四川达州市教育局部属公费师范生、部属优师 计划毕业生127人备考模拟试题及答案解析
- 外贸代理合同书
- 2025西南政法大学事业单位招聘141人备考考试题库附答案解析
- 2025新疆伊犁州伊宁市中小学招聘各学科编外教师考试参考题库及答案解析
- 门面租赁合同书范文参考
- 2025年职业资格心理咨询师三级-理论知识参考题库含答案解析(5卷)
- 2025年安生产考试题库:安生产隐患排查治理安责任制度与实践试题
- 2025年企业消防安全试题
- 小学五年级上册生命.生态.安全全册教案
- 装饰材料与构造
- GB/T 29781-2013电动汽车充电站通用要求
- 第二化学反应的能量和方向名师编辑课件
- 七年级上册劳技教案
- 培养科研素养提高科研能力课件
- 公司企业接收证明
- 苏州大学医学部操作技能直接观察评估(DOPS)评分表
- 暂时进出口协议范本样本
- (烹饪)基本功教学教案
- 第11章-网络故障诊断及排除ppt课件(全)
评论
0/150
提交评论