当前位置:文档之家› 12-C程序设计实验(十二)模版

12-C程序设计实验(十二)模版

计算机程序设计基础实验报告
实验十二:实验名称函数(二) 实验地点机房
姓名张三专业班级学号 2 日期
【实验目的】
(1)掌握函数的嵌套调用的方法
(2)掌握函数的递归调用的方法
(3)掌握全局变量和局部变量的概念和用法
【实验要求】
(1)熟练掌握函数的嵌套调用的方法
(2)熟练掌握函数的递归调用的方法
【实验环境】
(1) Microsoft XP操作系统
(2) Microsoft VC++ 6.0
【实验内容】
1.极值问题
题目描述:编写一个函数,其功能是求给定数组中的最小值与最大值的元素。

输入:第一行是测试数据的组数,第二行是数组的大小(n<=10)和数组元素输出:最大值和最小值
样例输入:
2
10 10 15 21 54 87 15 15 12 45 32
5 1 2 3 9 10
样例输出:
87 10
10 1
2.渊子赛马
题目描述:
赛马是一古老的游戏,古代战国时期就有田忌赛马。

现在渊子也来赛一赛马。

假设每匹马都有恒定的速度,所以速度大的马一定比速度小的马先到终点(没有
意外!!)。

不允许出现平局。

最后谁赢的场数多于一半(不包括一半),谁就是赢家(可能没有赢家)。

渊子有N(1≤N≤1000)匹马参加比赛。

对手的马的数量与渊子马的数量一样,并且知道所有的马的速度。

聪明的你编写一个函数,来预测一下这场世纪之战的结果,看看渊子能否赢得比赛。

输入:
输入有多组测试数据。

每组测试数据包括3行:
第一行输入N(1≤N≤1000)。

表示马的数量。

第二行有N个整型数字,即渊子的N匹马的速度。

第三行有N个整型数字,即对手的N匹马的速度。

当N为0时退出。

输出:
若通过聪明的你精心安排,如果渊子能赢得比赛,那么输出“YES”。

否则输出“NO”。

样例输入:
5
2 3 3 4 5
1 2 3 4 5
4
2 2 1 2
2 2
3 1
样例输出:
YES
NO
提示:参见P160 例7.9 “按值传递参数”
3.进制转换
题目描述:请你用函数递归,输入一个十进制数整数N,将它转换成R进制数输出。

输入:
输入数据包含多个测试实例,每个测试实例包含两个整数N(32位整数)和R (2<=R<=16, R<>10)。

输入以文件结束符结束。

输出:
为每个测试实例输出转换后的数,每个输出占一行。

如果R大于10,则对应的数字规则参考16进制(比如,10用A表示,等等)。

样例输入:
7 2
23 12
-4 3
样例输出:
111
1B
-11
提示:
(1)方法参见PPT第七章
(2)输入两个十进制整数,结果输出则采用字符输出,且需要判断求余运算是否大于等于10,若结果小于10,则将结果+’0’(转换为数字字符),若结果大于10,则将结果-10+’A’(转换为字母)
4.简单排序
题目描述:给定N个整数,编写一个函数对这些整数进行升序排列并输出。

输入:
输入数据有多组,第一行是测试数据的组数T,接下的T行中,每行表示一组测试数据,每组测试数据的第一个数字为N(1<=N<=1000),接下来是N个整数。

输出:输出每组测试数据排序后的结果。

每组测试数据占一行。

样例输入:
2
3 2 1 3
4 1 3 4 2
样例输出:
1 2 3
1 2 3 4
提示:
参见P164 实参和形参都是数组名,“按地址传递参数”
5.杨辉三角(选作)
题目描述:编写一个函数,其功能是输出杨辉三角,输出行数可以任意指定。

输入:输入数据有多组,输入杨辉三角的行数。

输出:输入杨辉三角。

样例输入:
3
样例输出:
1
1 1
1 2 1
6.汉诺塔(选作)
题目描述:
汉诺塔(又称河内塔)问题是印度的一个古老的传说。

开天辟地的神勃拉玛在一个庙里留下了三根金刚石的棒A、B和C,A上面套着n个圆的金片,最大的一个在底下,其余一个比一个小,依次叠上去,庙里的众僧不倦地把它们一个个地从A棒搬到C棒上,规定可利用中间的一根B棒作为帮助,但每次只能搬一个,而且大的不能放在小的上面。

僧侣们搬得汗流满面,可惜当n很大时这辈子恐怕就很搬了。

聪明的你还有计算机帮你完成,你能写一个程序帮助僧侣们完成这辈子的夙愿吗?
输入:输入金片的个数n。

这里的n<=10。

输出:输出搬动金片的全过程。

格式见样例。

样例输入:2
样例输出:
Move disk 1 from A to B
Move disk 2 from A to C
Move disk 1 from B to C
提示:参见P157 例7.8
【实验方法】
1.极值问题【源代码】
【运行结果】【结论】
2.渊子赛马【源代码】
【运行结果】【结论】
3.进制转换【源代码】
【运行结果】【结论】
4.简单排序【源代码】
【运行结果】【结论】
【成绩评定】。

相关主题