我遇到第34行的编译错误.我已经尝试将变量设置为等于自身并修复了编译错误,但它没有正确运行程序.
这是错误:
BaseConverter.java:34: error: illegal start of expression
for(iCount=; iCount>=0; iCount--)
Run Code Online (Sandbox Code Playgroud)
码:
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)
{
}
*/
//}
}
}
Run Code Online (Sandbox Code Playgroud)
这条线
for(iCount; iCount>=0; iCount--)
Run Code Online (Sandbox Code Playgroud)
在Java中是非法的,因为它必须是一个声明,并且iCount
它本身不是一个声明.如果您不想更改值iCount
,请将for
循环的第一部分留空:
for( ; iCount>=0; iCount--)
Run Code Online (Sandbox Code Playgroud)
即使你真的有for(iCount=; iCount>=0; iCount--)
; 因为语句不完整而无法编译.但是因为你iCount
在这个特定for
循环之前专门建立了一个值,我仍然认为它应该是该for
循环中的空白第一个语句.