-1

我收到第 34 行的编译错误。我尝试将变量设置为等于自身并修复了编译错误,但它没有正确运行程序。

这是错误:

BaseConverter.java:34: error: illegal start of expression
                    for(iCount=; iCount>=0; iCount--)

代码:

import java.util.Scanner;


public class BaseConverter
{
public static void main(String []args)
{
    Scanner Keyboard=new Scanner(System.in);
    int iConvertNum;
    int iFromBase;
    int iToBase;
    int iCount;
    int iQuotent=0; 
    int[] iRemander= new int[100];

    System.out.print("Enter the positive integer you want to convert: ");
    iConvertNum=Keyboard.nextInt();
    System.out.print("\nEnter the base you are converting from(1-16): ");
    iFromBase=Keyboard.nextInt();
    System.out.print("\nEnter the base you are converting to(1-16): ");
    iToBase=Keyboard.nextInt();

    //if(iFromBase<iToBase)
    //{
        for(iCount=0; iQuotent>0; iCount++)
        {
            iRemander[iCount]=iConvertNum/iToBase;
            iQuotent=(iConvertNum/(iToBase+iRemander[iCount]));
            iConvertNum=iQuotent;

            //return iRemander[iCount];
        }
    iCount-=1;
        for(iCount; iCount>=0; iCount--)
        {
            System.out.print(iRemander[iCount]);
        }

    /*  
    }
    else if(iFromBase>iToBase)
    {
    }
    else(iFromBase==iToBase)
    {
    }
    */
        //}
    }
}
4

2 回答 2

6

这条线

for(iCount; iCount>=0; iCount--)

在 Java 中是非法的,因为它必须是一个语句,而且iCount它本身不是一个语句。如果您不想更改 的值,则将循环iCount的第一部分留空:for

for( ; iCount>=0; iCount--)

即使你真的有for(iCount=; iCount>=0; iCount--);那不会编译,因为语句不完整。iCount但是因为您在此特定循环之前专门为 for 建立了一个值for,所以我仍然认为它应该是该for循环中的空白 first 语句。

于 2013-11-11T20:15:03.640 回答
1

根据错误,你写了for(iCount=; iCount>=0; iCount--). 在第一个之后需要有一些表达=iCount以便开始。

于 2013-11-11T20:14:50.140 回答