Java 根据输入的值动态的画出各种五角星同时控制其大小(利用星号),主要实体的,空心的,平移的,利用for循环对初学者有一定的帮助。可以通过输入n(n>3)动态的控制五角星的大小,下面是完整代码和显示结果:

public class WJXUtils {

/**

* @param args

*/

public static void main(String[] args) {

//实体五角星

// createWJXS(4);

// 实体五角星平移

// createWJXSY(4,2,1);

//空心五角星移动(星星外面也是空心)

// createWJXKY(4,6,6);

//空心五角星

// createWJXK(6);

//空心外部区域全部显示星星的空心

//createWJXKS(8);

//空心外部区域全部显示星星的空心的五角星平移

createWJXKSY(4,6,7);

}

//K表示区域总共4个,i表示行,j表示列 空心

public static void createWJXK(int n){

int i,i21,i22,i3,i4,j,j2,j21,j22,j3,j4,k=0;

int m2=0;

int m3=0;

for( k=1;k<=4;k++){

//part 1 if(k==1){

for( i=0;i

//最大列数为6*n

for( j=0;j<6*n;j++){

if((j<3*n-i+1&&j>=3*n-i )||(j<=3*n+i&&j>3*n+i-1) ){

System.out.print("*");

}else{

System.out.print(" ");

}

}

System.out.println();

}

}

if(k==2){

//part 2

for(j2=1;j2<=6*n+1;j2++){

if((j2<=2*n+1)||(j2>4*n&&j2<=6*n)){

System.out.print("*");

}else{

System.out.print(" ");

}

}

for( i21=n+1;i21

System.out.println();

for( j21=0;j21<6*n;j21++){

if((j21>=3&&j21<4)||(j21>6*n-4&&j21<=6*n-3)){

System.out.print("*");

}else{

System.out.print(" ");

}

}

}

for( i22=n+2;i22

System.out.println();

for( j22=0;j22<=6*n;j22++){

if((j22>=5&&j22<6)||( j22>6*n-6&&j22<=6*n-5)){

System.out.print("*");

}else{

System.out.print(" ");

}

}

}

}

if(k==3){

//part 3

for( i3=0;i3

System.out.println();

for(j3=0;j3<6*n;j3++){

if((j3>5+m2&&j3<=5+m2+1)||((j3>=6*n-(5+m2)-1)&&j3

System.out.print("*");

}else{

//显示该部分中间那个点

if(i3==n-4&&j3==3*n){

System.out.print("*");

}else{

System.out.print(" ");

}

}

}

m2++;

}

}

if(k==4){

//part4

for( i4=0;i4

System.out.println();

for( j4=0;j4<6*n;j4++){

if((j4>=n+1-m3&&j4=3*n-3-3*m3&&j4<3*n-2-3*m3)||((j4>3*n+2+3*m3)&&j4<=3*n+2+3*m3+1)||(j4>5*n+m3-2&&(j4<=5*n+m3-1))){

System.out.print("*");

}else{

System.out.print(" ");

}

}

m3++;

}

}

}

}

//K表示区域总共4个,i表示行,j表示列 里面空心外面全部实心

public static void createWJXKS(int n){

int i,i21,i22,i3,i4,j,j2,j21,j22,j3,j4,k=0;

int m2=0;

int m3=0;

for( k=1;k<=4;k++){

//part 1 no change

if(k==1){

for( i=0;i

//最大列数为6*n

for( j=0;j<6*n;j++){

if((j<3*n-i+1&&j>=0 )||(j<=6*n&&j>3*n+i-1) ){

System.out.print("*");

}else{

System.out.print(" ");

}

}

System.out.println();

}

}

if(k==2){

//part 2

for(j2=1;j2<=6*n+1;j2++){

if((j2<=2*n+1)||(j2>4*n&&j2<=6*n)){

System.out.print("*");

}else{

System.out.print(" ");

}

}

for( i21=n+1;i21

System.out.println();

for( j21=0;j21<6*n;j21++){

if((j21>=0&&j21<4)||(j21>6*n-4&&j21<=6*n)){

System.out.print("*");

}else{

System.out.print(" ");

}

}

}

for( i22=n+2;i22

System.out.println();

for( j22=0;j22<=6*n;j22++){

if((j22>=0&&j22<6)||( j22>6*n-6&&j22<=6*n-1)){

System.out.print("*");

}else{

System.out.print(" ");

}

}

}

}

if(k==3){

//part 3

for( i3=0;i3

System.out.println();

for(j3=0;j3<6*n;j3++){

if((j3>=0&&j3<=5+m2+1)||((j3>=6*n-(5+m2)-1)&&j3<=6*n)){

System.out.print("*");

}else{

//显示该部分中间那个点

if(i3==n-4&&j3==3*n){

System.out.print("*");

}else{

System.out.print(" ");

}

}

}

m2++;

}

}

if(k==4){

//part 4

for( i4=0;i4

System.out.println();

for( j4=0;j4<6*n;j4++){

if((j4>=0&&j4=3*n-3-3*m3&&j4<=3*n+2+3*m3+1)||(j4>5*n+m3-2&&(j4<=6*n))){

System.out.print("*");

}else{

System.out.print(" ");

}

}

m3++;

}

}

}

}

//K表示区域总共4个,i表示行,j表示列 实心

public static void createWJXS(int n){

int i,i21,i22,i3,i4,j,j21,j22,j3,j4,k=0;

int m2=0;

int m3=0;

for( k=1;k<=4;k++){

//part 1

if(k==1){

for( i=0;i

System.out.println();

//最大列数为6*n

for( j=0;j<6*n;j++){

if(j<=3*n+i&&j>=3*n-i){

System.out.print("*");

}else{

System.out.print(" ");

}

}

}

}

if(k==2){

//part2

System.out.println("");

for(i=1;i<=6*n+1;i++){

System.out.print("*");

}

for( i21=n+1;i21

System.out.println();

for( j21=0;j21<6*n;j21++){

if(j21>=3&&j21<=6*n-3){

System.out.print("*");

}else{

System.out.print(" ");

}

}

}

for( i22=n+2;i22

System.out.println();

for( j22=0;j22<=6*n;j22++){

if(j22>=5&&j22<=6*n-5){

System.out.print("*");

}else{

System.out.print(" ");

}

}

}

}

if(k==3){

//part 3

for( i3=0;i3

System.out.println();

for(j3=0;j3<6*n;j3++){

if(j3>5+m2&&j3<6*n-(5+m2)){

System.out.print("*");

}else{

System.out.print(" ");

}

}

m2++;

}

}

if(k==4){

//part 4

for( i4=0;i4

System.out.println();

for( j4=0;j4<6*n;j4++){

if((j4>=n+1-m3&&j4<3*n-2-3*m3)||((j4>3*n+2+3*m3)&&(j4<=5*n+m3-1))){

System.out.print("*");

}else{

System.out.print(" ");

}

}

m3++;

}

}

}

}

//K表示区域总共4个,i表示行,j表示列 里面空心外面全部实心 五角星移动

public static void createWJXKSY(int n,int x_0,int y_0){

int i,i21,i22,i3,i4,j,j2,j21,j22,j3,j4,k=0;

int m2=0;

int m3=0;

int x,y=0;

//向下移动

for( x=0;x

for(y=0;y<6*n+2*y_0;y++){

System.out.print("*");

}

System.out.println();

}

for( k=1;k<=4;k++){

//part 1 no change

if(k==1){

for( i=0;i

//最大列数为6*n

for( j=0;j<6*n+2*y_0;j++){

if((j<3*n-i+1+y_0&&j>=0 )||(j<=6*n+2*y_0&&j>3*n+i-1+y_0) ){

System.out.print("*");

}else{

System.out.print(" ");

}

}

System.out.println();

}

}

if(k==2){

//part 2

for(j2=1;j2<=6*n+1+2*y_0;j2++){

if((j2<=2*n+1+y_0)||(j2>4*n+y_0&&j2<=6*n+2*y_0)){

System.out.print("*");

}else{

System.out.print(" ");

}

}

for( i21=n+1;i21

System.out.println();

for( j21=0;j21<6*n+2*y_0;j21++){

if((j21>=0&&j21<4+y_0)||(j21>6*n-4+y_0&&j21<=6*n+2*y_0)){

System.out.print("*");

}else{

System.out.print(" ");

}

}

}

for( i22=n+2;i22

System.out.println();

for( j22=0;j22<=6*n+2*y_0;j22++){

if((j22>=0&&j22<6+y_0)||( j22>6*n-6+y_0&&j22<=6*n-1+2*y_0)){

System.out.print("*");

}else{

System.out.print(" ");

}

}

}

}

if(k==3){

//part 3

for( i3=0;i3

System.out.println();

for(j3=0;j3<6*n+2*y_0;j3++){

if((j3>=0&&j3<=5+m2+1+y_0)||((j3>=6*n-(5+m2)-1+y_0)&&j3<=6*n+2*y_0)){

System.out.print("*");

}else{

//显示该部分中间那个点

if(i3==n-4&&j3==3*n+y_0){

System.out.print("*");

}else{

System.out.print(" ");

}

}

}

m2++;

}

}

if(k==4){

//part 4

for( i4=0;i4

System.out.println();

for( j4=0;j4<6*n+2*y_0;j4++){

if((j4>=0&&j4=3*n-3-3*m3+y_0&&j4<=3*n+2+3*m3+1+y_0)||(j4>5*n+m3-2+y_0&&(j4<=6*n+2*y_0))){

System.out.print("*");

}else{

System.out.print(" ");

}

}

m3++;

}

}

}

}

//K表示区域总共4个,i表示行,j表示列 可以移动的五角星(实体) X表示距离上面大小,Y表示距离左面大小

public static void createWJXSY(int n,int x_0,int y_0){

int i,i21,i22,i3,i4,j,j21,j22,j3,j4,k=0;

int x,y=0;

int m2=0;

int m3=0;

//向下移动

for( x=0;x

System.out.println();

}

for( k=1;k<=4;k++){

//part 1

if(k==1){

for(i=0;i

//最大列数为6*n

for( j=0;j<6*n+y_0;j++){

if(j<=3*n+i+y_0&&j>=3*n-i+y_0){

System.out.print("*");

}else{

System.out.print(" ");

}

}

System.out.println();

}

}

if(k==2){

//part 2

for(i=1;i<=6*n+1+y_0;i++){

if(i>y_0){

System.out.print("*");

}else{

System.out.print(" ");

}

}

for( i21=n+1;i21

System.out.println();

for( j21=0;j21<6*n+y_0;j21++){

if(j21>=3+y_0&&j21<=6*n-3+y_0){

System.out.print("*");

}else{

System.out.print(" ");

}

}

}

for( i22=n+2;i22

System.out.println();

for( j22=0;j22<=6*n+y_0;j22++){

if(j22>=5+y_0&&j22<=6*n-5+y_0){

System.out.print("*");

}else{

System.out.print(" ");

}

}

}

}

if(k==3){

//part 3

for( i3=0;i3

System.out.println();

for(j3=0;j3<6*n+y_0;j3++){

if(j3>5+m2+y_0&&j3<6*n-(5+m2)+y_0){

System.out.print("*");

}else{

System.out.print(" ");

}

}

m2++;

}

}

if(k==4){

//part 4

for( i4=0;i4

System.out.println();

for( j4=0;j4<6*n+y_0;j4++){

if((j4>=n+1-m3+y_0&&j4<3*n-2-3*m3+y_0)||((j4>3*n+2+3*m3+y_0)&&(j4<=5*n+m3-1+y_0))){

System.out.print("*");

}else{

System.out.print(" ");

}

}

m3++;

}

}

}

}

//K表示区域总共4个,i表示行,j表示列 空心平移(外面也是空心)

public static void createWJXKY(int n,int x_0,int y_0){

int i,i21,i22,i3,i4,j,j2,j21,j22,j3,j4,k=0;

int m2=0;

int m3=0;

int x=0;

//整个区域分正4个部分,也就是把原来的第2部分拆分成2个,这样更加好看

//向下移动

for( x=0;x

System.out.println();

}

for( k=1;k<=4;k++){

//part 1 no change

if(k==1){

for( i=0;i

//最大列数为6*n

for( j=0;j<6*n+y_0;j++){

if((j<3*n-i+1+y_0&&j>=3*n-i+y_0 )||(j<=3*n+i+y_0&&j>3*n+i-1+y_0) ){

System.out.print("*");

}else{

System.out.print(" ");

}

}

System.out.println();

}

}

if(k==2){

//part 2

for(j2=1;j2<=6*n+1+y_0;j2++){

if((j2<=2*n+1+y_0&&j2>y_0)||(j2>4*n+y_0&&j2<=6*n+y_0)){

System.out.print("*");

}else{

System.out.print(" ");

}

}

for( i21=n+1;i21

System.out.println();

for( j21=0;j21<6*n+y_0;j21++){

if((j21>=3+y_0&&j21<4+y_0)||(j21>6*n-4+y_0&&j21<=6*n-3+y_0)){

System.out.print("*");

}else{

System.out.print(" ");

}

}

}

for( i22=n+2;i22

System.out.println();

for( j22=0;j22<=6*n+y_0;j22++){

if((j22>=5+y_0&&j22<6+y_0)||( j22>6*n-6+y_0&&j22<=6*n-5+y_0)){

System.out.print("*");

}else{

System.out.print(" ");

}

}

}

}

if(k==3){

//part 3

for( i3=0;i3

System.out.println();

for(j3=0;j3<6*n+y_0;j3++){

if((j3>5+m2+y_0&&j3<=5+m2+1+y_0)||((j3>=6*n-(5+m2)-1+y_0)&&j3

System.out.print("*");

}else{

//显示该部分中间那个点

if(i3==n-4&&j3==3*n+y_0){

System.out.print("*");

}else{

System.out.print(" ");

}

}

}

m2++;

}

}

if(k==4){

//part 4

for( i4=0;i4

System.out.println();

for( j4=0;j4<6*n+y_0;j4++){

if((j4>=n+1-m3+y_0&&j4=3*n-3-3*m3+y_0&&j4<3*n-2-3*m3+y_0)||((j4>3*n+2+3*m3+y_0)&&j4<=3*n+2+3*m3+1+y_0)||(j4>5*n+m3-2+y_0&&(j4<=5*n+m3-1+y_0))){

System.out.print("*");

}else{

System.out.print(" ");

}

}

m3++;

}

}

}

}

public static void crearWJXDemo(int n){

System.out.print("\n ");

int i,j,k;

//part 1

for(i=1;i<=n;i++)

{

for(j=1;j<=3*n-i+1;j++)

System.out.print(" ");

for(k=1;k<=2*i-1;k++)

System.out.print("*");

System.out.println(" ");

}

//part 2

for(i=1;i<=6*n+1;i++)

System.out.print("*");

System.out.print("\n ");

for(i=1;i<=6*n-5;i++)

System.out.print("*");

System.out.print("\n ");

for(i=1;i<=6*n-9;i++)

System.out.print("*");

System.out.print("\n");

//part 3

for(i=1;i<=n-3;i++){

for(j=1;j<=5+i;j++)

System.out.print(" ");

for(k=1;k<=6*n-9-2*i;k++)

System.out.print("*");

System.out.print("\n");

}

//part 4

for(i=1;i<=n-1;i++) {

for(j=1;j<=n+2-i;j++)

System.out.print(" ");

for(k=1;k<=2*n-2*i-1;k++)

System.out.print("*");

for(j=1;j<=6*i-1;j++)System.out.print(" ");

for(k=1;k<=2*n-2*i-1;k++)

System.out.print("*");

System.out.print("\n");

}

}

}各种显示结果如下:

大小: 5.7 KB

大小: 7.1 KB

大小: 6.1 KB

大小: 7.2 KB

大小: 5.4 KB

大小: 6.1 KB

分享到:

2012-06-25 21:44

浏览 3057

评论

java绘制五角星_java画各种五角星相关推荐

  1. java绘制棋盘_java绘制五子棋棋盘

    本文实例为大家分享了java绘制五子棋棋盘的具体代码,供大家参考,具体内容如下 源码: import javax.imageio.ImageIO; import javax.swing.*; impo ...

  2. java绘制五子棋_java绘制五子棋棋盘

    免费资源网,https://freexyz.cn/ 本文实例为大家分享了java绘制五子棋棋盘的具体代码,供大家参考,具体内容如下 源码: import javax.imageio.ImageIO; ...

  3. java绘制图形_java绘制基本图形.doc

    java绘制基本图形 java绘制基本图形 1. * *** ***** 2. * * * ***** 3. ************* * * * * ************* 4. ****** ...

  4. java画五角星_java 画五角星 填充五角星

    [java]代码库import java.awt.*; import javax.swing.*; public class WuJiaoXing extends JPanel { public Wu ...

  5. java 绘制长方形_Java入门:绘制简单图形

    在上一节,我们学习了如何使用swing和awt工具创建一个空的窗口,本节学习如何绘制简单图形. 基本绘图介绍 Java中绘制基本图形,可以使用Java类库中的Graphics类,此类位于java.aw ...

  6. java绘制图形_Java绘制图形

    1.了解什么是事件监听 写好一个界面后,我们就会对界面进行一些操作.比如,在输入框中输入数据,点击按钮或者菜单.这些操作我们称之为一个事件. 就比如我们要监视一间房子中会发生什么事情,就会给这间房子装 ...

  7. 画王八java代码参数_java画乌龟源代码-郭遥航.doc

    java画乌龟源代码-郭遥航.doc /*JAVA基本功小练习用java语言描述小王八用鼠标可以拖动小乌龟进行移动选中乌龟时可以显示小乌龟的腹面*/importjava.awt.*;importjav ...

  8. 用Java绘制柱形图_Java使用JFreeChart绘制柱形图

    JFreeChart是JAVA平台上的一个开放的图表绘制类库.它完全使用JAVA语言编写,是为applications, applets, servlets 以及JSP等使用所设计.JFreeChar ...

  9. java 绘制长方形_Java基础之在窗口中绘图——绘制直线和矩形(Sketcher 2 drawing lines and rectangles)...

    控制台程序. import javax.swing.JComponent; import java.util.*; import java.awt.*; import java.awt.geom.*; ...

最新文章

  1. 「图像分类」从数据集和经典网络开始
  2. 使用示例_使用 COMSOL 软件模拟不规则形状并构建几何模型示例
  3. 计算机网络教学重点突破,武汉理工大学计算机网络复习重点教学内容(34页)-原创力文档...
  4. Android实现简单短信发送器
  5. c语言程序设计电大形考作业答案,2016年电大-电大c语言程序设计形成性考核册答案(-).doc...
  6. 产业链加入爆料行列!2019年新iPhone:外形无变化 后置摄像头升级
  7. 跑外卖仅靠吃苦可以吗?
  8. Python 字典(dict)操作(update)、翻转字典
  9. Open VSwitch简介
  10. 可以下载MapInfo地图吗?
  11. Ubuntu安装Spark
  12. 应用程序正常初始化(0xc0150002)失败。请单击“确定”,终止应用程序
  13. 大疆FPGA/芯片开发工程师(A卷、B卷)笔试题详解
  14. excel表格数据导入导出
  15. 【考研经验】中国科学技术大学软件学院考研经历及复试回忆
  16. springboot 问题记录
  17. 解读Unity中的CG编写Shader系列4——unity中的圆角矩形shader
  18. 图像处理之图像质量评价指标MSE(均方误差)
  19. 安装程序出现 NSIS ERROR的错误提示
  20. LINUXUNIX 中文著名网站

热门文章

  1. Centos7命令行连接wifi网络,手机usb共享网络
  2. 两台电脑共享宽带的方法
  3. java怎么设置序号_Java 添加Word项目符号、编号列表
  4. 厦门新车上牌经验分享
  5. Python(求第五个人岁数)
  6. Excel表格数据导入到Oracle
  7. 电脑快捷键快速关机方法,电脑如何快速关机
  8. mysql的ace什么概念_ACE(03):努力了,总会有收获
  9. 傻瓜式PHP模版,poscms傻瓜式开发模块
  10. POSCMS 支付设置