课本练习有个题,输出如下菱形
*
***
*****
*******
*****
***
*使用for循环,要求在调用System.out.print()和System.out.print()语句时
只用System.out.print(" ")
System.out.print("*")
System.out.println("*")
希望各位大牛帮个忙
*
***
*****
*******
*****
***
*使用for循环,要求在调用System.out.print()和System.out.print()语句时
只用System.out.print(" ")
System.out.print("*")
System.out.println("*")
希望各位大牛帮个忙
public static void main(String[] args){
int i=0;intj=0;
for(int i=;i<=4;i++){
for(int j=0;j<=2*i-1;j++){
System.out.println("*");
System.out.println("");
}
for(i=4;i>=1;i--){
for(j=1;j=2*i-3;j++)
System.out.ptintln("*");
System.out.println("");
}
}
}
public class sanjiao
{
public static void main(String[] args)
{
int i=0;
int j=0;
for( i=1;i<=4;i++)
{
for( j=0;j<4-i;j++)
System.out.print(" ");
for( j=0;j<=2*i-2;j++)
System.out.print("*");
System.out.println(""); }
for(i=4;i>=1;i--)
{
for( j=0;j<=4-i;j++)
System.out.print(" ");
for(j=1;j<=2*i-3;j++)
System.out.print("*");
System.out.println("");
} }
}
我的方法可能不是最好的,但这也是我的能力所及吧,希望对你有所帮助!
这个题其实不算太难,说白了就是将菱形分为一个正置的(上)等腰三角形和一个倒置的(下)等腰三角形
然后将他们一一输出,区别就是一个是正置的,一个是倒置的,还有就是行数不同!
此段代码要注意的问题是要求输入的菱形的行数必须奇数,若输入偶数程序就终止了!
代码如下:
import java.util.*;public class Program1 { /**
* @param args
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
// @整体思路就是将菱形分为上下两个等腰三角形分别输出,值得注意的是菱形的行数必须是奇数
// @所以菱形的上下两部分是关于中间那一行对称的,在这里我把中间那一行划分到上三角形里边了
// @你看下面的上三角形行数的求法就明白了,因为对称所以下三角形的行数比上三角形的行数少1行
// 定义一个变量用于存储菱形的行数
int rows = 0;
// 上三角形的行数
int upTriangle = 0;
// 下三角形的行数
int downTriangle = 0;
// 输入菱形的行数rows
System.out.println("请输入菱形的行数:");
Scanner input = new Scanner(System.in);
rows = input.nextInt();
// 求出上三角形的行数
// 因为菱形的行数为奇数,所以上三角形的行数应该就是菱形的总行数除以2再加1
upTriangle = rows / 2 + 1;
// 求出下三角形的行数比上三角形的行数少1行的
downTriangle = upTriangle - 1;
// 利用for循环输出上等腰三角形
for (int i = 1; i <= upTriangle; i++) {
// 每一行输出空格数
for (int k = 0; k < upTriangle - i; k++) {
System.out.print(" ");
}
// 每一行输出的*数
for (int j = 0; j < 2 * i - 1; j++) {
System.out.print("*");
}
// 用于回车换行
System.out.println();
}
// 利用for循环输出下等腰三角形
// 值得注意的是这里输出的是一个倒三角形,与上面的for循环对比就可看出
for (int i = downTriangle; i >= 1; i--) {
// 输出每一行的空格数
for (int k = 0; k < upTriangle - i; k++) {
System.out.print(" ");
}
// 输出每一行的*数
for (int j = 0; j < 2 * i - 1; j++) {
System.out.print("*");
}
// 换行
System.out.println();
}
}}
System.out.print("*") 这个就是输出的星号呀
System.out.println("*")
for()外面的是每一行
{
for()里面的是每一列
{}
}
for(int i=0;i<4;i++)
{
for(int j=0;j<3-i;j++)
System.out.print(" ");
for(int j=0;j<2*i+1;j++){
if(j==2*i)
System.out.println("*");
else
System.out.print("*");
}
}
for(int i=3;i>0;i--)
{
for(int j=0;j<4-i;j++)
System.out.print(" ");
for(int j=0;j<2*i-1;j++){
if(j==2*i-2)
System.out.println("*");
else
System.out.print("*");
}
}
public class Lingxing {
public static void main(String[] args) {
getPrint(5);
}
public static void getPrint(int param){
for(int i=0;i<param;i++){
for(int m=0;m<=i;m++){
System.out.print("*");
}
for(int j=0;j<param-i;j++){
System.out.print(" ");
}
System.out.println();
}
for(int i=param-1;i>=0;i--){
for(int m=0;m<i;m++){
System.out.print("*");
}
for(int j=0;j<param-i;j++){
System.out.print(" ");
}
System.out.println();
}
}
}*
**
***
****
*****
****
***
**
*
{
public static void main(String[] args)
{
for(int i=1;i<8;i++)
{
for(int j=1;j<=2*Math.abs(i-4);j++)
System.out.print(" ");
for(int k=1;k<=6-2*Math.abs(i-4);k++)
{System.out.print("*");
System.out.print(" ");
}
System.out.println("*");
}
}
}