1. 如何用java在頁面上用循環列印一個愛心形狀
import java.util.Scanner;
public class test{
static void draw(int n)
{
int i,j;
for (i=1-(n>>1);i<=n;i++)
if (i>知仿拿0)
{
for (j=0;j<i;j++) System.out.print("大瞎 ");
for (j=1;j<=2*(n-i)+1;j++)
if (j==1||j==2*(n-i)+1) System.out.print(" *");
else System.out.print(" ");
System.out.println("\n");
}
else
if (i==0)
{
System.out.print(" *");
for (j=1;j<n;j++) System.out.print(" ");
System.out.print(" *");
for (j=1;j<n;j++) System.out.print(" ");
System.out.print(" *\n");
}
else
{
for (j=i;j<0;j++) System.out.print(" ");
for (j=1;j<=n+2*i+1;j++)
if (i==1-(n>>1)) System.out.print(" *"搭搭);
else if (j==1||j==n+2*i+1) System.out.print(" *");
else System.out.print(" ");
for (j=1;j<=-1-2*i;j++) System.out.print(" ");
for (j=1;j<=n+2*i+1;j++)
if (i==1-(n>>1)) System.out.print(" *");
else if (j==1||j==n+2*i+1) System.out.print(" *");
else System.out.print(" ");
System.out.print("\n");
}
}
public static void main(String[] args) {
System.out.println("Please input the size (n>=4):");
Scanner sc = new Scanner(System.in);
int n = sc.nextInt();
draw(n);
}
}先說明這個不是我寫的 是看了有人用C語言寫的 就順便改成了java 結果有點像愛心 還湊合著 你看看怎麼樣吧 哈
2. java中怎樣列印心形
package com.zeph.j2se.alg;
public class Heart {
int HighLevel(int wide) {
int i = 0, j = 0, k = 0, t = 0, m = 0, n = 0, count = 1;// i控制循環內高度,j控制每行前面空格,k控制輸出的*數
// t控制高層星號中間空格,m記錄高層最底行的星數,以下逐行增4
// n記錄頂行空個數,以下逐行減4;count記錄笑滲並高層高碰跡度,與high無關
m = (wide - 4) / 2;
do {
count++;
m -= 4;
} while (m > 4);
if ((wide - 4) % 2 == 0)// 區別對待奇偶寬度,奇數中間喊帆最小空1個,偶數最小空兩個
{
n = 2 + 4 * (count - 1);
m--;
} else
n = 1 + 4 * (count - 1);
for (i = 0; i < count; i++) {
for (j = (count - i) * 2; j > 0; j--)
System.out.print(" ");
for (k = 0; k < m; k++)
System.out.print("*");
for (t = 0; t < n; t++)
System.out.print(" ");
for (k = 0; k < m; k++)
System.out.print("*");
m += 4;
n -= 4;
System.out.print("\n");
}
return 0;
}
int LowLevel(int wide) {
int i = 0, j = 0, k = 0;// i控制輸出行,j控制輸出每行前的空格,k控制輸出*
int high = 0, tmp = wide;
do// 計算所需高度
{
high++;
tmp -= 4;
} while (tmp > 4);
high += 1;
for (i = 0; i < high; i++) {
for (j = 0; j < 2 * i; j++)
System.out.print(" ");
for (k = wide - 4 * i; k > 0; k--)
System.out.print("*");
System.out.print("\n");
}
return 0;
}
public static void main(String[] args) {
int wide = 30;
Heart heart = new Heart();
heart.HighLevel(wide);
heart.LowLevel(wide);
}
}
3. 用java或者c程序輸出如下圖的這種簡單心形,誰能給我講講思路。加上程序示例更好
用方程的話肯定輸出不會和你的圖完全一致
心形線方程如圖
4. java列印空心三角型,和等腰三角型,最好帶有注釋
一:設計思路:
1、空心的等腰三角形,用*作為三角形的邊,用空格做格式控制。
2、第一行輸出一個*號,且要放在正中央,具體位置需要根據三角形的高度來確定。
3、因為是等腰三角形,所以每一行由*號組成的有效字元串長度比上一行多2個。
4、綜合2、3,該三角形的*號間的有效字元串長度,按1、3、5、7...規律變化
5、所以,第一行輸出的*號位置由三角形的高決定,設高度為h,則第一行*號位置為第(2*h-1)/2+1,簡化後為h(因為單數/2後的0.5在int型變數計算中被忽略)。
6、空心的實現中,從第二行輸出*號後開始插入空格,個數每行加2,直到最後一行,不包含最後一行。
二:實現方法
1、定義三角形的高,改變該值,可以改變三角形的大小。
2、根據高鬧碰度,將*號放在對應h位置,用空格做格式控制,空格個數每行-1。
3、如果是第二行且不是最後一行(大於1且小於h),在輸出*號後,輸出空格,以後每行多輸出兩個空格
4、最後一行全部輸出*號液野談
//java代碼:設計空心等腰三角形
{
/**
*一:設計思路:
*1、空心的等腰三角形,用*作為三角形的邊,用空格做格式控制。
*2、第一行輸出一個*號,且要放在正中央,具體位置需要根據三角形的高度來確定。
*3、因為是等腰三角形,所以每一行由*號組成的有效字元串長度比上一行多2個。
*4、綜合2、3,該三角形的*號間的有效字元串長度,按1、3、5、7...規律變化
*5、所以,第一行輸出的*號位置由三角形的高決定,設高度為h,則第一行*號位置為第(2*h-1)/2+1,
*簡化後為h(因為單數/2後的0.5在int型變數計算中被忽略)。
*6、空心的實現中,從第二行輸出*號後開始插入空格,個數每行加2,直到最後一行,不包含最後一行脊旦。
*二:實現方法
*1、定義三角形的高,改變該值,可以改變三角形的大小。
*2、根據高度,將*號放在對應h位置,用空格做格式控制,空格個數每行-1。
*3、如果是第二行且不是最後一行(大於1且小於h),在輸出*號後,輸出空格,以後每行多輸出兩個空格
*4、最後一行全部輸出*號
*三:圖示,5層空心等腰三角形
**
***
***
***
**********
*
**/
//定義三角形的高度,改變此值,可改變三角形的大小,必須大於等於2
publicstaticfinalintHEIGHT=9;
publicstaticvoidmain(String[]args){
//TODOAuto-generatedmethodstub
intcount=HEIGHT-1; //定義輸出空格個數,初值為第一行要輸出的空格個數
System.out.println("空心等腰三角形,高度:"+HEIGHT);
for(introw=1;row<=HEIGHT;row++,count--){
//輸出空格
for(inti=0;i<count;i++){
System.out.print("");
}
System.out.print("*");
//是第一行,則直接換行,最後一行輸出全部*號,否則從第二行開始輸出空格,每行+2
if(row==1){
System.out.println();
}elseif(row==HEIGHT){
for(inti=0;i<row*2-2;i++){
System.out.print("*");
}
System.out.println();
}elseif(row>1&&row<HEIGHT){
for(inti=0;i<row*2-3;i++){
System.out.print("");
}
System.out.println("*");
}
}
}
}
運行結果圖:
理解思路和實現方法後,閱讀代碼會簡單些,注意格式控制中的算式,都是有規律可循的。
5. for語句 輸出心形(java)
for語句輸出心形(java)的方法如下:
使用eclipse,創建一個Java文件命名為Test.java
(5)java列印心擴展閱讀:
for 語句表達式:
表達式1:一般為賦值表達式,給控制變數賦初值;
表達式2:關系表達式或邏輯表達式,循環控制條件;
表達式3:一般為賦值表達式,給控制變數增量運銀正或減旁悔量。
6. java編程中桃心,笑臉。。。怎麼列印
這明脊個問題還真是帆孝高,
如果直接System.out.prinln("♥")的話會提示不是GBK編碼不支持...
所以
解決方法是如果想輸出的話找到
這些特殊符號的unicode編碼
System.out.prinln('\態槐稿u0000')
輸出
所以你建議自己找下,一個corner
case