0

我试图打印数组中的最大数字,但出现错误,显示错位。我试着把括号放在周围,但仍然有错误。我不知道为什么会出现错误的 else 错误。请帮忙:>.<

#include <stdio.h>
#include <conio.h>

void main()
{
  int lar, yem;
  clrscr();
  int aray[10];
  for (yem = 0; yem < 10; ++yem)
  {
    printf("Input numbers:");
    scanf("%d", &aray[yem]);
  }

  lar = aray[0];

  for (yem = 1; yem < 10; ++yem)
  {
    if (aray[yem] > lar);
      lar = aray[yem];
    else
      ++yem;

    printf("Biggest: %d\n", lar);
   }
    getch();
}
4

3 回答 3

3

;从语句中删除分号if

if(aray[yem]>lar);
                 ^
                 |  
            Remove this  
于 2013-09-28T10:31:29.920 回答
3
 if(aray[yem]>lar);
                  ^^ get rid of this semi-colon

使用这个分号将等同于

 if(aray[yem]>lar)
    ;
 lar=aray[yem];

 else //Now this else doesn't have a matching if hence the error
 ...
于 2013-09-28T10:31:31.470 回答
2

您正在终止 if 语句;

if(aray[yem]>lar);
                 ^         
                 |

删除;最后的

if(aray[yem]>lar)
于 2013-09-28T10:33:14.820 回答