|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
- #include <stdio.h>
- int max(int a[],int length)
- {
- int i,b = a[0];
- for( i=1 ; i<length ; i++){
- if(a[i] >= b){
- b = a[i];
- }
- }
- return b;
- }
- int main()
- {
- int a[4] = {1,8,5,6,};
- //scanf("%d",&a[4]);
- printf("%d",max(a[4],4));
- return 0;
- }
复制代码
其实你的程序也没什么大问题
注意问题给你说一下
你写的printf("%d",Max(a[4],4));里面的a[4]在c语言里面不是指向的a的地址,而是a数组第五个元素
因为你a定义了4个元素,表示为a[0]---a[3]
而a[4]是不存在的,另外max最好写成Max,因为小写的max系统某些库里面有,可能会因为参数形式而报错
另外写int *是为了更好的让你理解数组在内存中的形式,就是连续的内存地址,如果让你原来的程序能跑起来,这样写也可以printf("%d",Max(a,4)); a才代表你定义的数组的地址
|
|