下面这个程序哪里有问题吗?
打印菱形
package sec;
import java.util.Scanner;
public class Printlingxing {
public static void main(String[] args) {
Scanner scan = new Scanner(System.in);
int i = 0;
//获取用户输入存入整形变量i中
if(scan.hasNextInt()){
i = scan.nextInt();
}
//判断并输出
if(i%2==0||i==1){//注意这里为==!!i%2==0不是 2!
System.out.print("error");
}
else{
for(int j=1;j<=i/2;j++){//若i等于3;只循环一次 //j=1;j<=4;j++
for(int m=i/2; m>0;m--){//m=1,//m=4;m>0;m--
System.out.print(" ");
}
for(int n=1;n<=i-2;n=n+2){//n=1,n
System.out.print("*");
}
System.out.print("\n");
}
for(int k=1;k<=i;k++){
System.out.print("*");
}
System.out.print("\n");
for(int j=i/2;j>=1;j--){
for(int m=1; m<=i/2; m++){
System.out.print(" ");
}
for(int n=i-2;n>=1;n=n-2){
System.out.print("*");
}
System.out.print("\n");
}
}
}
}