黑马程序员技术交流社区

标题: 求指教 [打印本页]

作者: ambition    时间: 2015-5-9 00:11
标题: 求指教

#include <stdio.h>
int arryMax (int a[] , int count)
int main ()
{  int ages [] = [10 , 23 , 43 , 45 , 56 ,76 ]
        arryMax ( ages , sizeof(ages)/sizeof(int))
        return 0 ;
}
int arryMax (int a[] , int count )
{
        int temp = a[0];
        for (int i = 0 ; i < count ; i++)
        {
                if (a[i+1] > a[i])
                {
                        temp = a[i+1] ;
                }
        }
       
        return temp ;
}

请问我这个程序哪里错了  老提示 [Error] expected initializer before 'int'
作者: stein    时间: 2015-5-9 08:34
  1. #include <stdio.h>

  2. int arryMax(int a[], int count); //少了一个分号 ;

  3. int main()
  4. {
  5.     int ages[] = {10, 23, 43, 45, 56, 76}; // 不是[ ] 中括号, 应该是大括号 { }

  6.     arryMax(ages, sizeof(ages) / sizeof(int)); // 少了分号 ;

  7.     return 0;
  8. }
  9. int arryMax(int a[], int count)
  10. {

  11.     int temp = a[0];

  12.     for (int i = 0; i < count - 1; i++) // 取值范围 应该是  0 ~ (count-1) , 不然 a[i+1] 会角标越界,得出错误结论
  13.     {
  14.         if (a[i + 1] > a[i])
  15.         {
  16.             temp = a[i + 1];
  17.         }
  18.     }
  19.     return temp;
  20. }
复制代码

作者: 逆流瞅瞅    时间: 2015-5-9 09:35
分号。在Xcode里会报错的
作者: i花生    时间: 2015-5-9 09:37
函数声明和函数定义的不同之处是,函数声明一定要加“;”
作者: CornerFly    时间: 2015-5-9 11:33
你现在学到哪了亲
作者: wangsong    时间: 2015-5-9 17:24
for循环里,i < count - 1
作者: ambition    时间: 2015-5-11 13:09
CornerFly 发表于 2015-5-9 11:33
你现在学到哪了亲

基本看了一遍了 但是发现很多都忘了,正在抓紧学习,你呢
作者: ambition    时间: 2015-5-11 13:11
stein 发表于 2015-5-9 08:34

嗯嗯,谢谢 我自己又弄了一遍了 问题解决了
作者: ambition    时间: 2015-5-11 13:14
i花生 发表于 2015-5-9 09:37
函数声明和函数定义的不同之处是,函数声明一定要加“;”

知道了,谢谢!!
作者: ambition    时间: 2015-5-11 13:15
wangsong 发表于 2015-5-9 17:24
for循环里,i < count - 1

谢谢评论
作者: 飞翔的猪    时间: 2015-5-11 14:12
一行一行的查吧,对于没有定义到那一行的错误




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2