1 南京邮电大学通达学院程序设计 (上机)报告题目: R009M R024M 专业软件工程学生姓名 xxx 班级学号 xxx 指导教师韦 剑日期 2016年 6 月 6 日2 评分细则评分项优 秀良 好中 等及 格不及格平时成绩软件验收设计报告评分等级教师签名:年月日备注注:评分等级分为五种:优秀、良好、中等、及格、不及格3 题目一:1、问题描述:题目编号内容 要求难度R009M 200 个学生不按身高任意排成10行﹑ 20列的长方形队列
在每一列中选出一个最矮者(如这样人有几个,可任选其中一个)
然后在所选的 20个矮人中挑出最高者一人,叫做“矮人中的高个子”
然后,令这 20个矮人各回原位
再在每一行中选出一个最高者,又从这10个高人中挑出最矮者一人,叫“高个子中的矮子”
请问“矮人中的高个子”和“高个子中的矮子”这二人中哪个高
Middle 2、课题分析:根据题目要求, 可知这题需要运用数组和比较大小
先建立一个10 行 20 列的数组, 然后通过置换比较求得每一列的最小值和每一行的最大值,分别存入min[j]和 max[i] 中
再比较min[j]中的数,求得其中最大数minmax;比较 max[i] 中数, 求得其中的最小数maxmin
最后比较 minmax 和 maxmin,并输出结果
3、算法描述:算法流程图如下图1-1 所示:开始输入并显示数据比较min[j]的值,找出矮人中的高个子 minmax比较minmax和maxmin并输出结束求每列最小值min[j]比较max[i] 的值,找出高个子中的矮子 maxmin求每行最大值max[i]图 1
1: 算法流程图4、源代码:#include void main() { int i,j,maxmin,minmax; int a[10][20]; int min[20],max[10]; printf("输