for语句输出心形(java)的方法如下:
使用eclipse,创建一个Java文件命名为Test.java
2.系统自动建立Test类及主函数。
3.输入以下代码:
public class Test{
public static void main (String []args){
int k=5 //控制心型大小
for ( int i=0i<=k*2i++){
for (int j=0j<=k*4j++){
if (((i-k)*(i-k)+(j-k)*(j-k)==k*k&&i<=k )||( (j-3*k)*(j-k*3)+(i-k)*(i-k)==k*k&&i<=k)
||(((2*k-i)-2*k)*((2*k-i)-2*k)+(j-2*k)*(j-2*k)==k*k*4 ) )
{ if (i==0&&j==0||i==0&&j==k*4) System.out.print(" ")
else { System.out.print("*")}
}
else System.out.print(" ")
}
System.out.println()
}
}
}
4.保存并运行程序
扩展资料:
for 语句表达式:
表达式1:一般为赋值表达式,给控制变量赋初值;
表达式2:关系表达式或逻辑表达式,循环控制条件;
表达式3:一般为赋值表达式,给控制变量增量或减量。
package com.zeph.j2se.algpublic 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 = 0i <counti++) {
for (j = (count - i) * 2j >0j--)
System.out.print(" ")
for (k = 0k <mk++)
System.out.print("*")
for (t = 0t <nt++)
System.out.print(" ")
for (k = 0k <mk++)
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 = 0i <highi++) {
for (j = 0j <2 * ij++)
System.out.print(" ")
for (k = wide - 4 * ik >0k--)
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)
}
}