最近听说一个萌新在面试的时候遇到了一个题目 面试要求他打印一个菱形 然后结果他没有做出来 ,

然后我昨天晚上花了半个小时想了一下,就写出来了,可能不是很好的解决方法 这里仅供参考

import org.junit.Test;public class Demo {@Testpublic void show(){draw(2);}//参数i表示为有2i-1层public void draw(int i){boolean flag=true;//转换标志int k=i-1;//左边的空格数目for(int j=1;j<2*i;j++){for(int n=1;n<=k;n++){System.out.printf(" ");}//左边第一次空格打印
            System.out.printf("*");//判断第二次是否打印的标志是k==i-1if(k!=i-1){for(int m=0;m<(2*i-2*(k+1))-1;m++){System.out.printf(" ");;}System.out.printf("*");}//k保持变化if(flag){k--;}else{k++;}if(k==0) flag=!flag;//打印完毕换行
            System.out.println();}}
}

View Code

最后结果如图

然后空实心打印 ,只需要把第二次打印设置为*就可以,修改如下

//判断第二次是否打印的标志是k==i-1if(k!=i-1){for(int m=0;m<(2*i-2*(k+1))-1;m++){System.out.printf("*");;}System.out.printf("*");}

View Code

结果如下

转载于:https://www.cnblogs.com/ad-zhou/p/9127891.html

一道打印菱形的面试题相关推荐

  1. python中星号怎么打出来_Python打印“菱形”星号代码方法

    本人是一名python初学者,刚刚看到一道有趣的python问题,"用python如何在编译器中打印出菱形图案?" 因此决定尝试一下,代码不多,仅供参考. 代码 def print ...

  2. python语言打印菱形_Python 实现打印单词的菱形字符图案

    Python 实现打印单词的菱形字符图案 我就废话不多说了,还是直接看代码吧! a = [1, 2, 3, 4, 5, 6, 7, 6, 5, 4, 3, 2, 1] b = [' ' * 2 * ( ...

  3. 蓝桥杯第六届省赛JAVA真题----打印菱形

    打印菱形 给出菱形的边长,在控制台上打印出一个菱形来. 为了便于比对空格,我们把空格用句点代替. 当边长为8时,菱形为: .......* ......*.* .....*...* ....*.... ...

  4. python中for循环打印菱形_Python 使用双重循环打印图形菱形操作

    如下所示: a = int(input("请输入菱形行数:")) m = a #空格 d = a #倒三角 for i in range(1, a + 1): # 先打印正三角 p ...

  5. python用while打印菱形_Python 使用双重循环打印图形菱形操作

    如下所示: a = int(input("请输入菱形行数:")) m = a #空格 d = a #倒三角 for i in range(1, a + 1): # 先打印正三角 p ...

  6. NYOJ 880 还是打印菱形

    还是打印菱形 时间限制:1000 ms  |  内存限制:65535 KB 难度:1 描述 这个菱形大家熟悉吧. ************* 现在要求的是打印这样的菱形:不要*号,要最外层是字母A,然 ...

  7. python fun_一道神奇的Python面试题,你会吗?

    原标题:一道神奇的Python面试题,你会吗? 无意间,看到这么一道Python面试题:以下代码将输出什么? def testFun: temp = [lambda x : i*x for i in ...

  8. 一道经典的JavaScript面试题

    一道经典的JavaScript面试题 转载于:https://www.cnblogs.com/suoking/p/5227430.html

  9. C语言学习之打印菱形

    打印菱形 #include <stdio.h> void main(){for(int i=0;i<4;i++){for(int j=0;j<3-i;j++){printf(& ...

  10. C语言学习之用*打印菱形

    C语言学习之用*打印菱形 #include <stdio.h> int main(){int i,j,k;//定义变量for(i=0;i<=3;i++){ //控制菱形的前三行for ...

最新文章

  1. onnxruntime c++ 工程实例
  2. Leet Code OJ 102. Binary Tree Level Order Traversal [Difficulty: Easy]
  3. [IOI2018] werewolf 狼人
  4. python源码分析工具_python 域名分析工具实现代码
  5. docker 导出堆栈信息.hprof_JVM性能调优监控工具jps、jstack、jmap、jhat、jstat、hprof使用...
  6. 500内部privoxy错误_【热议】喝崂山啤酒中奖500听,却只能兑换500毫升?!
  7. 基于JAVA+SpringBoot+Mybatis+MYSQL的校园新闻管理系统
  8. BZOJ3697 采药人的路径 【点分治】
  9. Linu下建立svn版本库
  10. 【前端_React】React小书
  11. @Lookup注解用法
  12. FBReader集成后,打开书出现空白页面
  13. iOS数据库编程(Andy)
  14. arcgis数据量大显示慢_百万量级矢量数据加载对比实验,Arcgis VS LSV专业版
  15. Python编程——数字
  16. 荣耀V20设置国科大邮箱步骤
  17. Error: This attribute must be localized. 解决方法
  18. 同一个类中不同方法之间的互相调用
  19. keras实现一种带桥接的空洞金字塔池化的unet分割模型
  20. live555服务器性能,使用Live555 HTTP容量作为信号服务器

热门文章

  1. 10个新鲜出炉的JQuery插件(ITEye)
  2. 魔方机器人之下位机编程------下位机完整程序
  3. VC++ 求绝对值函数
  4. 【Tensorflow】【损失函数】交叉熵数据验证(下)---BinaryCrossentropy二分类
  5. 【c++ | 谭浩翔】第四章练习
  6. r语言TeachingDemos包绘制黑白脸谱图
  7. PHP全文索引 讯搜xunsearch
  8. Android ViewFilpper实现分页效果
  9. Apache Flink ML 2.0.0 发布公告
  10. 程序员的每个阶段,都应该需要思考自己要什么?