分類  >  編程 >

03-01自頂向下作派_編程

tags:    時間:2014-05-04 18:39:35
03-01自頂向下風格_編程

設計程序

在中文Windows環境下,控制台窗口中也可以用特殊符號拼出漂亮的表格來。

比如:

┌─┬─┐

│   │  │

├─┼─┤

│   │  │

└─┴─┘

其實,它是由如下的符號拼接的:

左上 = ┌

上 = ┬

右上 = ┐

左 = ├

中心 = ┼

右 = ┤

左下= └

下 = ┴

右下 = ┘

垂直 = │

水平 = ─

本題目要求編寫一個程序,根據用戶輸入的行、列數畫出相應的表格來。

例如用戶輸入:

3 2

則程序輸出:

┌─┬─┐

│   │  │

├─┼─┤

│   │  │

├─┼─┤

│   │  │

└─┴─┘

用戶輸入:

2 3

則程序輸出:

┌─┬─┬─┐

│   │  │   │

├─┼─┼─┤

│   │  │   │

└─┴─┴─┘

標準答案:

class MyCell { 	private char leftUp = '┌'; 	private char up = '┬'; 	private char rightUp = '┐'; 	private char left = '├'; 	private char center = '┼'; 	private char right = '┤'; 	private char leftDown = '└'; 	private char down = '┴'; 	private char rightDown = '┘'; 	private char ver = '│'; 	private char hor = '─'; 	 	private int row = 2;  // 行數 	private int col = 2;  // 列數 	 	public void setRow(int x) 	{ 		if(row>=1 && row <=20) row = x; 	} 	 	public void setCol(int x) 	{ 		if(col>=1 && col <=10) col = x; 	} 	 	public void show() 	{ 		printBeginRow();  //首行特殊 		for(int i=0; i<row-1; i++) 		{ 			printRow1();  // 空格+豎線 			printRow2();  // 橫線+轉角 		} 		printRow1(); 		printEndRow();  // 末行特殊 	} 	 	private void printBeginRow() 	{ 		System.out.print(leftUp); 		for(int i=0; i<col-1; i++) 		{ 			System.out.print(hor); 			System.out.print(up); 		} 		System.out.print(hor); 		System.out.print(rightUp); 		System.out.println(); 	} 	 	private void printEndRow() 	{ 		System.out.print(leftDown); 		for(int i=0; i<col-1; i++) 		{ 			System.out.print(hor); 			System.out.print(down); 		} 		System.out.print(hor); 		System.out.print(rightDown); 		System.out.println(); 	} 	 	private void printRow1() 	{ 		System.out.print(ver); 		for(int i=0; i<col; i++) 		{ 			System.out.print("  "); 			System.out.print(ver); 		} 		System.out.println(); 	} 	 	private void printRow2() 	{ 		System.out.print(left); 		for(int i=0; i<col-1; i++) 		{ 			System.out.print(hor); 			System.out.print(center); 		} 		System.out.print(hor); 		System.out.print(right); 		System.out.println(); 	} 	 	 }	 	 public class PinBiaoGe { 	public static void main(String[] args) 	{ 		// 在字元界面用特殊符號拼圖形 		/*		 		┌─┬─┐ 		│  │  │ 		├─┼─┤ 		│  │  │ 		└─┴─┘		 		*/ 		 		MyCell a = new MyCell(); 		a.setRow(1); 		a.setCol(1);		 		a.show(); 		 		a.setRow(1); 		a.setCol(4);		 		a.show(); 		 		a.setRow(4); 		a.setCol(1);		 		a.show(); 		 		a.setRow(5); 		a.setCol(5);		 		a.show(); 		 		a.setRow(10); 		a.setCol(18);		 		a.show(); 		 		 		// 如何設置行距離和列距離 		 	 	} }

推薦閱讀文章

Bookmark the permalink ,來源:互聯網