这两天在上直播课堂,有个挺好学的学生,想写点什么,我说你写个求int数组里最大值的函数吧,写好后,发了过来:
- int big ()
- {
- int max,n,i;
- printf("输入组数个数:");
- scanf("%d",&n);
- int a[n];
- printf("输入要排的数:");
- for( i=0;i<n;i++)
- {
- scanf("%d",&a[i]);
- }
- max=a[0];
- for(i=1;i<n;i++)
- {
- if(max<a[i])
- max=a[i];
- }
- printf("%d",max);
- return max;
- }
格式还算可以,if语句下面没有用{},小问题,如果按照谭浩强的书,这个代码已经不错了,没什么问题,但这个代码要拿到真实的开发任务里是要被骂死的.让你写个函数是给别的代码用的,不是让你做个求最大值的程序来,看一下我改写后的:
getmax.h
- int getMax(int array[],int n);
getmax.cpp
- int getMax(int array[],int n)
- {
- int max;
- max=array[0];
- for(i=1;i<n;i++)
- {
- if(max<array[i])
- {
- max=array[i];
- }
- }
- return max;
- }
testGetMax.cpp
- #include <stdio.h>
- #include "getmax.h"
- testGetMax()
- {
- int a[]={234,45,575,32,98,332,-23};
- int max;
- max=getMax(a,7);
- if(max==575)
- {
- printf("The max number of{234,45,575,32,98,332,-23} is %d/n",max);
- printf("Test success !/n")
- }
- else
- {
- printf("Test failure!/n")
- }
- }
- int main(int argv,char * argc[])
- {
- testGetMax();
- }
不知道大家看完以后是何感想,我觉的如何写代码,是一个很关键的问题,会一点语法,是远远不够的,没有规定说校园里不能用工程化的方法写代码,恐怕是老师舍不得教吧,大家先讨论一下两种写法的优劣,我暂时保留意见.我现在的直播课堂正在讲述相关内容,欢迎参与