在中文Windows环境下,控制台窗口中也可以用特殊符号拼出漂亮的表格来。
├─┼─┤
│ │ │
└─┴─┘
其实,它是由如下的符号拼接的:
左上 = ┌ 169 176
上 = ┬ 169 208
右上 = ┐ 169 180
左 = ├ 169 192
中心 = ┼ 169 224
右 = ┤ 169 200
左下= └ 169 184
下 = ┴ 169 216
右下 = ┘ 169 188
垂直 = │ 169 166
水平 = ─169 164
本题目要求编写一个程序,根据用户输入的行、列数画出相应的表格来。
例如用户输入:
3 2
则程序输出:
┌─┬─┐
│ │ │
├─┼─┤
│ │ │
├─┼─┤
│ │ │
└─┴─┘
用户输入:
2 3
则程序输出:
┌─┬─┬─┐
│ │ │ │
├─┼─┼─┤
│ │ │ │
比如:
┌─┬─┐
│ │ │├─┼─┤
│ │ │
└─┴─┘
其实,它是由如下的符号拼接的:
左上 = ┌ 169 176
上 = ┬ 169 208
右上 = ┐ 169 180
左 = ├ 169 192
中心 = ┼ 169 224
右 = ┤ 169 200
左下= └ 169 184
下 = ┴ 169 216
右下 = ┘ 169 188
垂直 = │ 169 166
水平 = ─169 164
本题目要求编写一个程序,根据用户输入的行、列数画出相应的表格来。
例如用户输入:
3 2
则程序输出:
┌─┬─┐
│ │ │
├─┼─┤
│ │ │
├─┼─┤
│ │ │
└─┴─┘
用户输入:
2 3
则程序输出:
┌─┬─┬─┐
│ │ │ │
├─┼─┼─┤
│ │ │ │
└─┴─┴─┘
总结:代码很乱,稍后再优化。
import java.util.Scanner;
public class MyTest {
public static void main(String[] args) {
Scanner sc=new Scanner(System.in);
int row=sc.nextInt();
int col=sc.nextInt();
row=row*2+1;
col=col*2+1;
for(int i=1;i<=row;i++){
for(int j=1;j<=col;j++){
if(i==1 && j==1){
System.out.print("┌");
}
else
if(j%2==0 && i%2!=0){
System.out.print("───");
}
else
if(j!=1 && j!=col && i==1){
System.out.print("┬");
}
else
if(j==col && i==1){
System.out.println("┐");
}
else
if(i%2==0){
if(j%2==0){
System.out.print(" ");
}
else{
System.out.print("│");
}
if(j==col)
System.out.println();
}
else
if(i%2!=0 && j==1 && i!=1 && i!=row){
System.out.print("├");
}
else
if(i%2!=0 && j%2!=0 && i!=1 && i!=row && j!=1 && j!=col){
System.out.print("┼");
}
else
if(i%2!=0 && i==row && j==1){
System.out.print("└");
}
else
if(i%2!=0 && i==row && j==col){
System.out.println("┘");
}
else
if(j!=1 && j!=col && i==row){
System.out.print("┴");
}
else
System.out.println("┤");
}
}
}
}