您好, 访客   登录/注册

C语言中求最大值的方法研究与实现

来源:用户上传      作者: 王祥瑞 梁 杰 柳彦春

   [摘要]C语言使用灵活,功能丰富,表达能力强,在多年的教学实践中发现,及时地归纳总结各种类型题的算法,特别是一题多解的方法,更有助于学生拓宽思维,加深对题目的理解。文章总结并介绍了求最大值的几种不同编写方法,便于学生认识C语言学习的前后知识的连续性,对所学知识能够灵活运用。
  [关键词]C语言 程序 最大数 方法
  
  C语言是广泛使用的一种高级程序设计语言。它由于使用灵活方便,功能丰富,表达能力强,目标程序效率高,成为国内高校理工科专业首选的入门计算机程序设计教学语言。
  要成功地讲授程序设计语言课程,在学生熟悉所学习的程序语言规则的基础上,重点要训练学生逐步掌握一套科学的程序设计方法。随着课程的进度,要求学生在充分理解各部分内容后要及时进行归纳、总结,得出解决相似的问题的规律和方法解决,融会贯通,运用自如。
  求最大值问题是一个功能并不复杂的程序,用C语言来实现在不同的章节有不同的方法。为便于学生掌握,现归纳总结如下。
  一、用条件运算符实现求两个整数的最大值
  条件运算符是C语言中唯一的三目运算符,它的运算符号为“?:”,共要求三个操作数。它的一般形式为:e1? e2: e3。它称为“条件表达式”。操作过程为:若e1的值为真(非0),则此条件表达式的值为e2的值;若e1的值为假(等于0),则此条件表达式的值取e3的值。源程序如(a)。
  二、用if-else分支语句实现求三个整数的最大值
  if-else构造了一种二路分支选择结构,是一种最基本的选择结构。它的工作过程是:先对if后面的表达式进行判断,若为真,就执行if后面的语句;否则,就执行else后面的语句。因为判断主要以条件表达式其值是否为0为准。对于此类简单问题可以不必画出流程图,直接编写程序即可。源程序如(b)。
  三、用函数实现求三个整数的最大值
  C语言是一种模块化程序设计语言,是由若干个函数构成的,可以采用主函数调用自定义的求最大值函数的方法来解决此问题。自定义函数要先进行函数定义,然后进行函数原型声明,最后进行调用。本程序中,由于max()函数的返回值是int型,所以,可以不声明而直接调用。源程序如(c)。
  四、用宏定义实现求三个整数的最大值
  宏定义是用#define指定的预处理命令。宏定义是用宏名代替一个字符串,只做简单替换。宏名习惯用大写字母表示。带参数的宏定义的一般形式为:#define宏名(参数表)字符串。源程序如(d):
  五、用指针实现求两个整数的最大值
  指针指向的是变量的地址,学生对指针的使用掌握得不是很灵活。对于此题,可以通过定义两个指针变量指向两个整型变量来实现最大值的求取,借此进一步加深学生对指针的理解和运用。源程序如(e)。
  六、用数组实现求N个整数的最大值
  数组适合于多个相同性质数据的处理问题,对于多个整数求最大值,定义多个变量就显得很繁琐,借助于数组就非常容易实现。输入10个数后,让max的初始值为a[0],让max逐个和其他数组元素相比较,遇到比自己值大数组元素就将这个较大值赋给max,i继续增加,如此循环,直到i==9,最后循环结束后的max的值就是10个整数中的最大值。源程序如(f)。
  采用多种方法解决同一问题,一方面有助于加深学生对问题的理解,另一方面有助于学生对各章节知识点的掌握。教师在教学中有必要及时地引领学生进行归纳总结,前后贯通,激发学生的学习兴趣,使他们通过分析、分解、归纳、整理提高创新思维能力。
  
  参考文献:
  [1]谭浩强. C程序设计(第二版) [M].北京:清华大学出版社, 1999.
  [2]李明. C语言程序设计教程[M].上海:上海交通大学出版社, 2008.
  [3]吕凤翥. C语言基础教程[M].北京:北京大学出版社, 1998.


转载注明来源:https://www.xzbu.com/2/view-464370.htm