您的位置:首页 > 编程语言 > Java开发

for循环回顾,随机输出一个奇数得到菱形(双for嵌套得到菱形方法的延伸)

2017-07-17 20:00 281 查看
学习了for循环我们就知道了for是一个很强大的功能,能让计算机代替我们做很多繁琐的事情,本片文章就是我学习了for循环之后的一些简单的回顾以及延伸,利用for循环得到简单的图形:矩形,三角形,平行四边形,菱形。本文中我还借着菱形写了一点延伸,仅供参考,下面我们就回顾一下这几个例子。

public class ForDemo {
public static void main(String[] args) {
// 打印矩形
// 使用嵌套循环打印行列图形
// 嵌套循环中,外打行,内打列
/*for (int i = 1; i <= 5; i++) {
// 打印五个星星
for (int j = 1; j <= 20; j++) {
System.out.print("*");
}
// 每打印五个星就换行
System.out.println();
}*/
// 嵌套循环相当于生活中的钟表,这里我们引入了时钟时分秒的概念方便大家理解
// 小时
/*for (int k = 1; k <= 12; k++) {
// 分钟
for (int i = 1; i <= 60; i++) {
// 秒
for (int j = 1; j <= 60; j++) {
System.out.println("第"+k+"小时,第" + i + "分," + "第" + j + "秒");
}

}
}*/
// 找规律
// 平行四边形
/*for (int i = 1; i <= 3; i++) {
// 打空格
for(int k=1;k<=3-i;k++){
System.out.print(" ");
}
// 打印五个星星
for (int j = 1; j <= 5; j++) {
System.out.print("*");
}
// 每打印五个星就换行
System.out.println();
}*/
// 等腰三角形
/* for (int i = 1; i <= 3; i++) {
// 打空格
for(int k=1;k<=3-i;k++){
System.out.print(" ");
}
// 打印五个星星
for (int j = 1; j <= 2*i-1; j++) {
System.out.print("*");
}
// 每打印五个星就换行
System.out.println();
}*/
/*for (int i = 1; i <= 3; i++) {
// 打空格
for(int k=1;k<=3-i;k++){
System.out.print(" ");
}
// 打印五个星星
for (int j = 1; j <= 2*i-1; j++) {
if(j%2==0){
System.out.print(" ");
}else{
System.out.print("*");
}
}
// 每打印五个星就换行
System.out.println();
}*/
//5行菱形的打印方法
for (int i = 1; i <= 3; i++) {
// 打空格
for(int k=1;k<=3-i;k++){
System.out.print(" ");
}
// 打印五个星星
for (int j = 1; j <= 2*i-1; j++) {
System.out.print("*");
}
System.out.println();
}
for (int i = 2; i >= 1; i--) {
// 打空格
for(int k=1;k<=3-i;k++){
System.out.print(" ");
}
// 打印五个星星
for (int j = 1; j <= 2*i-1; j++) {
System.out.print("*");
}
System.out.println();
}

}
}


通过以上这个例子大家也可以发现,菱形是这几个图形中比较难写的,因为它运用的变换比较多,我在学习的过程中试着写一下延伸的程序和大家分享一下。试着输入一个奇数得到这么多行的菱形

//随机打出多少行的菱形 必须是奇数
public class ShapeDemo {
public static void main(String[] args) {
System.out.println("你想得到多少行的菱形?");
Scanner sc=new Scanner(System.in);
int x = sc.nextInt();
for (int i = 1; i <= (x+1)/2; i++) {
for (int b = 1; b <= (x+1)/2- i; b++) {
System.out.print(" ");//排版出空格
}
for (int j = 1; j <= 2 * i - 1; j++) {
System.out.print("*");//打印出每行的星星
}
System.out.println();//换行
}
for(int i=x/2;i>=1;i--){//排版下半部分的星星
for (int b = 1; b <= (x+1)/2 - i; b++)
4000
{
System.out.print(" ");
}
for (int j = 1; j <= 2 * i - 1; j++) {
System.out.print("*");
}
System.out.println();
}
}
}

以上就是我个人整理出来的关于双for循环嵌套的几个例子。以及菱形简单的延伸。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java 结构 class for循环
相关文章推荐