求:用Java语言写只用一个for循环输出“*”组成的空心菱形的思路或代码

 我来答
丿丶东子
2012-11-08 · TA获得超过156个赞
知道答主
回答量:212
采纳率:100%
帮助的人:86万
展开全部
public class Kong{
public static void main(String []args){
int hangshu = 11;
int yiban = hangshu / 2 + 1;
int yibanduo = hangshu / 2;
for(int k = 1;k <= yiban;k++){
for(int i = 1;i <= (yiban - k);i++){
System.out.print(" ");
}
System.out.print("*");
for(int i = 1;i <= ( (k - 2) * 2 + 1);i++){
System.out.print(" ");
}
if(k != 1){
System.out.print("*");
}
System.out.println();
}
for(int k = yibanduo;k >=1;k--){
for(int i = 1;i <= (yiban - k);i++){
System.out.print(" ");
}
System.out.print("*");
for(int i = 1;i <= ( (k - 2) * 2 + 1);i++){
System.out.print(" ");
}
if(k != 1){
System.out.print("*");
}
System.out.println();
}
}
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
可孝丿5274
2012-11-07 · TA获得超过187个赞
知道答主
回答量:117
采纳率:0%
帮助的人:82.4万
展开全部
public class Fun {
public int len=12;//菱形边长
public void dosth(){
for(int i=0;i<(2*len-1)*len;i++){
if(i/(2*len-1)+i%(2*len-1)==len||i/(2*len-1)+i%(2*len-1)==2*len-1||(i>=len&&i<=2*len-1)||(i>=(2*len-1)*(len-1)+1&&i<=(2*len-1)*len-len+1)){
System.out.print("*");
}else{
System.out.print(" ");
}
if(i%(2*len-1)==0){
System.out.println();
}
}
}
public static void main(String[] args){
Fun f=new Fun();
f.dosth();
}
}
嘿嘿,挺费劲啊
哦,对了
你是要
***
* *
***这样的?
还是
*
* *
* *
* *
*这样的?
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式