㈠ java利用for循环打印一个菱形,实心的,边长为n
按照你的要求编写的用for循环打印边长为n的实心菱形的Java程序如下(Math.abs 是数学类的求绝对值的函数)
importjava.util.Scanner;
publicclassAA{
publicstaticvoidmain(String[]args){
inti,j,n;
Scannersc=newScanner(System.in);
n=sc.nextInt();
for(i=1;i<=2*n-1;i++){
for(j=1;j<=Math.abs(n-i);j++){
System.out.print("");
}
for(j=1;j<=2*n-1-2*Math.abs(n-i);j++){
System.out.print("*");
}
System.out.println();
}
}
}
运行结果
输入 5
输出
㈡ 用java打印菱形。
一、整体实现思路:菱形9行9列可以将菱形分成上下两个三角形,分析每行空格数和星号个数的关系。
二、一个三角形的实现思路:以输出一个空心三角形为例:
(1)空格的输出按-1递减,字符的输出按等差数列,公差为2
(2)判断第一行和最后一行照常输出。
(3)中间行仅输出两个字符。
三、菱形分实心和空心两种,其代码及解析分别如下:
(一)实心菱形。
1、函数代码:
(2)javafor循环打印菱形扩展阅读:
java打印的输出方式解析:
1、print():print就是一般的标准输出,但是不换行。
2、println():println和print基本没什么差别,就是最后会换行。
要分辨清楚System.out.print()和System.out.println()的区别。System.out.print()是单纯的输出,而System.out.println()的功能是输出内容后换行,到达下一行,在使用时要注意区分两者之间的不同。
㈢ 怎么用Java中的for循环写出一个菱形 求讲解
你好,提问者:
若解决了你的问题请采纳,若有疑问请追问,谢谢!
这个菱形应该是由四个三角形组成,上面两个三角下面两个三角,拼接而成的。下面给你写了个例子:
publicclassLingXing2{
publicstaticvoidmain(String[]args){
//菱形
CeSanJiao(6);
}
publicstaticvoidCeSanJiao(intnumber){
//上半截
for(inti=1;i<=number;i++){
if(i==1){
for(intlage=1;lage<number;lage++){
System.out.print("-");
}
for(intj=i;j>0;j--){//列数
System.out.print("*");
}
System.out.println();
}else{
//反正三角
for(intj=i;j>1;j--){
if(j==i){
for(intlage=1;lage<=number-i;lage++){
System.out.print("-");
}
}
System.out.print("*");
}
//正三角
for(intj=i;j>0;j--){//列数
System.out.print("*");
}
System.out.println();
}
}
//下半截
for(inti=1;i<=number;i++){
if(i==(number-1)){
for(intlage=i;lage>(number-i-1);lage--){
System.out.print("-");
}
System.out.println("*");
}else{
//反倒三角
for(intj=number-i;j>=1;j--){
if(j==(number-i)){
for(intlage=number;lage>(number-i);lage--){
System.out.print("-");
}
}
System.out.print("*");
}
//倒三角
for(intj=1;j<number-i;j++){//列数
System.out.print("*");
}
}
System.out.println();
}
}
}
结果:
-----*
----***
---*****
--*******
-*********
***********
-*********
--*******
---*****
----***
-----*
㈣ 编写java程序,应用for循环打印菱形。
import java.util.Scanner;
public class v {
public static void main(String[] args) {
int h=1;
while(h<5){ //可重复执行5次
System.out.println("请输入菱形的行数:"); //输入你所需要的行数,也就是最多的那行的的个数
Scanner scanner = new Scanner(System.in);
int j=scanner.nextInt();
if(j%2==0) { // 判断输入的是否为偶数
System.out.println("由于输入的是偶数,现已+1转换成奇数!");
j=j+1; //如果是,+1转换为奇数
}
int i,y,data1,data2;
for (i=1;i<=j;i++){
if(i<=(j+1)/2)
{data1=-i+(j+1)/2;
data2=i+(j+1)/2;}
else
{data1=i-(j+1)/2;
data2=-i+3*(j+1)/2;}
for ( y=1;y<=j;y++)
{ if(y<=data1||y>=data2)
System.out.print(" ");
else
System.out.print("*");}
System.out.println();
} h++;}
}
}
这个你可以随便输入大小。。。希望能够采纳。。。
㈤ java用for循环打印菱形
你可以换个来看,每少一行需要少输出两个*,所以这部分的量就是(size-i)*2,而最少需要输出的是1个*,刚好size那边是奇数并且满足size-i大于0的,所以需要再-1