2013-09-28 84 views
0

我试图打印数组中最大的数字,但是有一个错误显示错误的地方。我试着将括号括起来,但仍然存在错误。我不知道为什么会出现错误的其他错误。请帮助:>。 <错误:错位其他

#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(); 
} 
+3

OT:它是'int main(void)'。 – alk

+3

@alk:如果只...请阅读[main()应该在C和C++中返回什么](http://stackoverflow.com/questions/204476/what-should-main-return-in-c-和-c/18721336#18721336)你会发现微软已经颠覆了有关'int main()'的规则。 –

回答

3

if语句删除分号;;

if(aray[yem]>lar); 
       ^
       | 
      Remove this 
+1

非常感谢你:) – deibaby03

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 
... 
2

您终止if语句与;

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

删除;

if(aray[yem]>lar)