全文预览已结束
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
练习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. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- T/SAQ 0009-2024既有公共建筑节能综合改造技术指南
- T/SXJP 059-2023菌酶复合型饲料添加剂
- T/ZGZS 0108-2024再生铸造铝合金产品碳排放核算方法
- T/CNFIA 256-2026凉拌汁
- T/CSAE 456-2025智能滑板底盘 螺栓连接式接口机械性能要求及试验方法
- T/SDSLA 0006-2025山东省园林绿化工程项目适老化设计指南
- T/CRRA 1901-2022铜冶炼污酸梯级回收利用工程技术规范
- T/CSPSTC 191-2025村镇污水处理智慧化管控平台技术规范
- T/CSES 174-2024近岸海域富营养化评价技术规范
- T/SMA 0085-2026用于强电场环境的盘形悬式绝缘子性能检测装置技术规范
- 新版2026年部编版新教材道德与法治五年级上册全套单元、期中、期末检测题(共6份有答案)合集
- 2026年重庆市安全员A证考试模拟题及答案详解
- 2026-2027学年人教版八年级上册数学第一次月考重难点突破学情自测卷(含答案)
- 2026年江苏省人教版小学四年级语文上册第1单元测试卷
- 2026浙江省强基联盟高一阶段检测英语月考试题(含答案解析)
- 施工现场有限空间作业风险辨识方案
- 矿山安全生产管理体系建设方案
- 2025湖北汉江金融服务中心有限公司校园招聘5人笔试参考题库附带答案详解
- 《美术手工创作方法》全套教学课件
- 雨课堂在线学堂《大学生国家安全教育》作业单元考核答案
- 《概念验证服务规范》
评论
0/150
提交评论