【实验指导书】实验7:指针 (1)
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
(2014~2015学年-第1学期)
1. 理解指针、地址和数组间的关系。
2. 掌握通过指针操作数组元素的方法;
3. 掌握数组名作为函数参数的编程方式。
4. 掌握通过指针操作字符串的方法。
5. 了解掌握使用断点调试程序的方法。
二、实验环境:
操作系统:Window 8
编译环境:CodeBlock 13.02
三、实验要求及内容(根据实验要求,将整个实验过程需要的数据和截屏记录于此,并整理成实验步骤。):
1.设计一个程序计算输入的两个数的和与差,要求自定义一个函数sum_diff(float op1,float op2,float *psum,float *pdiff),其中op1和op2是输入的两个数,*psum和*pdiff是计算得出的和与差。
解:
(1)流程图如图1所示:
图1 程序7-1的流程图
图2 实验7-1实验源代码
(3)运行结果(测试用例) 实验7-1运行结果如图3所示
图3 实验7-1运行结果
2. 输入n 个正整数,使用选择法将它们从小到大排序后输出。要求:利用所学指针的内容实现。
提示:在指针这一章所学的冒泡排序算法基础上改写。 解:
(1)流程图如图1所示:
图1 程序7-2的流程图
图2 实验7-2实验源代码(3)运行结果(测试用例)实验7-2运行结果如图3所示
图3 实验7-2运行结果
3. 输入10个整数存入数组a ,再输入一个整数x ,在数组a 中查找x ,若找到则输出相应的下标,否则显示“Not found ”。要求定义和调用函数seach(int list[],int n ,int x),在数组list 中查找元素x ,若找到则返回相应的下标,否则返回-1,参数n 代表数组list 中元素的数量。试编写相应程序。 解:(1)流程图如图1
7-3的流程图 (2)源代码 源代码如图2所示
(3)运行结果(测试用例)实验7-3运行结果如图3所示
图3 实验7-3运行结果
4.输入一个字符串,将该字符串中从第m个字符开始的全部字符复制成另一个字符串。m由用户输入,值小于字符串的长度。要求编写一个函数mcopy(char *s,char *t,int m)来完成。
解:
(1)流程图如图1所示:
图1 程序7-4的流程图
(2)源代码源代码如图2所示
图2 实验7-4实验源代码
(3)运行结果(测试用例)实验7-4运行结果如图3所示
图3 实验7-4运行结果
5. 参照《C语言程序设计实验与习题指导》第46页调试示例(3)的内容,掌握断点调试的方法。
四、实验结果&总结:
(列出实验过程中的收获和遇到的困难)
快该结课考试了,可是对指针是整型变量的理解还不是太深刻,并且数组和指针的转换没有掌握好,还有两周的时间就要考试,继续努力吧。