关于用循环来输出三角形 ****************************这样的三角形怎么用最简单的方式来输出呢? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 这个就是最简单的,public class Test1 { public static void main(String[] args) { System.out.println("*\n*** \n****** \n******** \n****** \n*** \n*"); }}哈哈。 你的这几个数 的规律是没规律吗?其实重要的不在这个问题上,而是循环中如何处理这一类问题public class TesTriangle { public static void main(String[] args) { String[][] s = new String[][]{{"*"},{"* * *"},{"* * * * * *"},{"* * * * * * * *"}}; for(int i = 0;i < s.length;i++){ for(int j = 0;j < s[i].length;j++){ System.out.println(s[i][j]); System.out.println(); } } for(int i = s.length-2;i > -1;i--){ for(int j = 0;j < s[i].length;j++){ System.out.println(s[i][j]); System.out.println(); } } }} //再贴一个菱形的吧~~class TestForFor{ public static void main(String[] args) { for(int i = 0;i < 9;i++){ if(i<5){ for(int k = 0;k < 4-i;k++){ System.out.print(" "); } for(int j = 0;j < i+1;j++){ System.out.print("* "); } } else{ for(int k = 0;k < i-4;k++){ System.out.print(" "); } for(int j = 0;j < 9-i;j++){ System.out.print("* "); } } System.out.println(); } }}//输出结果为: * * * * * * * * * * * * * * * * * * * * * * * * * public classClsTest(){public static final String TXT="********";public static void main(){ selfCall(1,2);}public static void selfCall(int outCnt, int plus){ if (outCnt > 7) { outTxt(8); } else { outTxt(outCnt); selfCall(plus+=outCnt, plus); outTxt(outCnt);}private static void outTxt(int length){ System.out.println(TXT.substring(0, length));}} 这个数的规律是很重要的,可以说就是唯一的难点。我就按照1、3、6、10这个规律给楼主写下代码吧,希望对楼主能有帮助。public class TestTriangle { public static void main(String[] args) { PrintTriangle(4); } public static void PrintTriangle(int middleLine) { if(middleLine < 2){ System.out.println("输入有误"); } else { int y = 0; for(int i=1; i<=middleLine; i++){ int k = i*i - y; y = k; for(int j=1; j<=k; j++){ System.out.print("*"); } System.out.println(); } for(int i=1; i<=middleLine-1; i++){ int k = (middleLine-i+1)*(middleLine-i+1) - y; y = k; for(int j=1; j<=k; j++){ System.out.print("*"); } System.out.println(); } } }} 把整个图形补成一个矩形,用if else判断输出*还是输出空格 有关比较的问题 , 请知道的朋友开示: == 关于+=复合运算 EJB Remote使用完之后,没有被清除,会引发什么问题? 请教一下如何在eclipse调试中如何知道一个变量什么时候变成NULL了,感谢 怎样在程序中得到JNDI连接的数据库的用户名 有几个定义数据大小的小题 请教下大家! 为什么可以调用Connection的方法? 一个非常简单的问题 谁知道这段 5行 程序的结果和原因,就来拿分吧 JAVA虚拟机 求救 java 五子棋错误 求java swing图形界面开发与案例详解pdf文档
System.out.println("*\n*** \n****** \n******** \n****** \n*** \n*");
}
}
哈哈。
String[][] s = new String[][]{{"*"},{"* * *"},{"* * * * * *"},{"* * * * * * * *"}};
for(int i = 0;i < s.length;i++){
for(int j = 0;j < s[i].length;j++){
System.out.println(s[i][j]);
System.out.println();
}
}
for(int i = s.length-2;i > -1;i--){
for(int j = 0;j < s[i].length;j++){
System.out.println(s[i][j]);
System.out.println();
}
}
}}
class TestForFor{
public static void main(String[] args) {
for(int i = 0;i < 9;i++){
if(i<5){
for(int k = 0;k < 4-i;k++){
System.out.print(" ");
}
for(int j = 0;j < i+1;j++){
System.out.print("* ");
}
}
else{
for(int k = 0;k < i-4;k++){
System.out.print(" ");
}
for(int j = 0;j < 9-i;j++){
System.out.print("* ");
}
}
System.out.println();
}
}
}
//输出结果为:
*
* *
* * *
* * * *
* * * * *
* * * *
* * *
* *
*
(){public static final String TXT="********";
public static void main(){
selfCall(1,2);}public static void selfCall(int outCnt, int plus){
if (outCnt > 7) {
outTxt(8);
} else {
outTxt(outCnt);
selfCall(plus+=outCnt, plus);
outTxt(outCnt);
}private static void outTxt(int length){
System.out.println(TXT.substring(0, length));
}
}
PrintTriangle(4);
}
public static void PrintTriangle(int middleLine) {
if(middleLine < 2){
System.out.println("输入有误");
} else {
int y = 0;
for(int i=1; i<=middleLine; i++){
int k = i*i - y;
y = k;
for(int j=1; j<=k; j++){
System.out.print("*");
}
System.out.println();
}
for(int i=1; i<=middleLine-1; i++){
int k = (middleLine-i+1)*(middleLine-i+1) - y;
y = k;
for(int j=1; j<=k; j++){
System.out.print("*");
}
System.out.println();
}
}
}}