第七次上机实验报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
实验十指针数组与函数指针
518021910583 潘汉泓一、实验目的和要求
(1)理解指针数组、多级指针及函数指针的概念。
(2)掌握指针数组编程方法。
(3)掌握函数指针的基本应用。
(4)掌握动态空间分配的编程方法。
(5)理解main函数的参数及应用方法。
实验内容
(一)实验准备:指针数组、多级指针及函数指针的概念知识。指针数组编
程方法相关知识,有函数指针的基本应用的基本概念。掌握动态空间分配的编程方法知识与main函数的参数及应用方法相关知识。
(二)实验项目:
题目1:输入若干个城市的名称(每个城市名称的长度小于30个字符,城市总数不超过30),每行输入一个城市,以一行单独输入字符@作为输入结束标志。要求对这些城市按照字典顺序进行排序后输出。
分析或方案:对二维数组进行运算排序。
测试数据与运行结果:
输入:Shanghai
Beijing
Nanjing
Suzhou
@
输出:Beijing
Nanjing
Shanghai
Suzhou
题目2:编写一个程序,输入n(n<5)个字符串,输出其中最短字符串的有效长度。要求定义函数int minlen(char *str[], int n), 用于计算有n个元素的指针数组str中最短的字符串长度。
分析或方案:分别判断字符串长度进行比较后输出。
测试数据与运行结果:
输入:3
Shanghai
Beijing
Nanjing
输出:7
题目3:编写一个程序。输入一个字符串和一个字符,如果该字符在字符串中存在,就从该字符串最后出现的位置开始输出字符串中的剩余字符。要求定义函数char *mystrrchr(char *str, char ch);如果ch在字符中存在,就返回最后出现的位置;若ch在字符串中不存在,则返回NULL。
分析或方案:从后向前对字符串进行寻找,后截止输出。
测试数据与运行结果:
输入:oqwertyuiop
o
输出:op
题目4:输入两个十进制正整数n和base(base小于等于16大于等于2),将n 转换为base进制输出
分析或方案:利用for循环商余逐步计算。
测试数据与运行结果:
二、实验小结
程序完成正常,难点在于在于指针的准确使用与地址判断。借助实验巩固了自己的基本的使用指针解决问题的知识,熟练地掌握new和*p语句的使用,开拓了自己的编程思维,提高了自己的编程水平。