本文共 966 字,大约阅读时间需要 3 分钟。
题目:
本题目要求你在控制台输出一个由数字组成的等腰三角形。 具体的步骤是:输入,一个正整数n(3<n<300),表示三角形的高度
输出,用数字填充的等腰三角形。为了便于测评,我们要求空格一律用"."代替。
例如:
输入: 5程序应该输出:
再例如:
输入: 10程序应该输出:
再例如:
输入: 15程序应该输出:
资源约定: 峰值内存消耗(含虚拟机) < 256M CPU消耗 < 1000ms请严格按要求输出,不要画蛇添足地打印类似:“请您输入…” 的多余内容。
所有代码放在同一个源文件中,调试通过后,拷贝提交该源码。
不要使用package语句。不要使用jdk1.7及以上版本的特性。 主类的名字必须是:Main,否则按无效代码处理。思路:
根据输入的n值,可以求出围成三角形共需多少个字符,从第1行到n-1需要的字符数为1+(n-2) * 2,再加上最后一行的2 * n-1得4 * n-4,所以我们需要一段字符串:1234…,长度为4 * n-4,根据该长度用循环拼接字符串,并要用substring()截取长度为i的字符串,因为在循环过程中,拼接的数字长度大于或等于2时,拼接的字符串长度可能刚好不为i,因此需要用substring()截取一次。获得该字符串后,然后就是输出,用循环对每一行输出。代码:
import java.util.Scanner;public class 等腰三角形 { public static void main(String[] args) { Scanner in=new Scanner(System.in); int n=in.nextInt(); int i=4*n-4; String str=""; for(int j=1;j<=1000;j++) { str+=String.valueOf(j); if(str.length()>=i) break; } str=str.substring(0, i); //截取字符串 for(int j=0;j
转载地址:http://yzwai.baihongyu.com/