Java新手求助:修改程序实现指定字符和高度的直角三角形绘制
解决Java直角三角形绘制的修改需求
嘿,作为Java新手,你要做的修改其实很清晰,核心就是把硬编码的输出改成嵌套循环来动态生成对应高度和指定字符的三角形。下面是修改后的完整代码,我会给你拆解关键部分:
import java.util.Scanner; public class DrawRightTriangle { public static void main(String[] args) { Scanner scnr = new Scanner(System.in); char triangleChar; int triangleHeight; // 获取用户输入的字符和高度 System.out.println("Enter a character:"); triangleChar = scnr.next().charAt(0); System.out.println("Enter triangle height:"); triangleHeight = scnr.nextInt(); System.out.println(""); // 外层循环控制三角形的行数(从1到指定高度) for (int i = 1; i <= triangleHeight; i++) { // 内层循环控制每行输出的字符数量(等于当前行数) for (int j = 1; j <= i; j++) { // 输出指定字符加空格 System.out.print(triangleChar + " "); } // 每行结束后换行 System.out.println(); } } }
关键修改点说明:
- 替换固定字符:把原程序中硬写的
*换成了用户输入的triangleChar,这样就能支持任意指定字符了。 - 嵌套循环实现动态高度:
- 外层
for循环从1跑到triangleHeight,每一次循环对应三角形的一行。 - 内层
for循环的次数等于当前行号i,这样第1行输出1个字符,第2行输出2个,以此类推,直到达到指定高度。
- 外层
- 格式匹配要求:每个字符后都输出空格,并且每行结束后换行,和你给出的示例输出完全一致。
示例运行效果(输入%和5):
Enter a character: % Enter triangle height: 5 % % % % % % % % % % % % % % %
内容的提问来源于stack exchange,提问作者Daniel
相关产品推荐
相关产品推荐

