一个关于Java for循环的问题:
for(int i=1,j=1;j<10;(i==j)?(i++):(j++))
{ System.out.printf("%d*%d=%2d%c",j,i,i*j,(i==j)?('\n'):(' ')) }
就是一个循环的九九乘法表,在TC里可以完美运行,在Java里就编译不了了,不知道是为什么,还请各位高手指教。
for(int i=1,j=1;j<10;(i==j)?(i++):(j++))
{ System.out.printf("%d*%d=%2d%c",j,i,i*j,(i==j)?('\n'):(' ')) }
就是一个循环的九九乘法表,在TC里可以完美运行,在Java里就编译不了了,不知道是为什么,还请各位高手指教。
{
int i=1,j=1;
int s;
for(i=1;i<=9;i++)
{
for(j=1;j<=i;j++)
{
s=i*j;
if(j<i)
{
System.out.print(i+ "*" + j + " = " + s + " ");
}
else
{
System.out.println(i+ "*" + j + " = " + s + " ");
} }
} }
补充一下,我的jdk是1.6_17的
就可以编译了,怪了……
for(int i=1,j=1;j <10&&i<10;){
System.out.printf("%d*%d=%2d%c",j,i,i*j,(i==j)?('\n'):(' '));
if(i==j){
i++;
}else{
j++;
}
} for里面的(i==j)?(i++):(j++)这个地方报错,我修改了一下应该输出的效果和你在TC中一样吧
java中没有这个语句吧。