鱼C论坛

 找回密码
 立即注册
查看: 969|回复: 1

[技术交流] for循环输出棱形

[复制链接]
发表于 2016-12-13 09:21:40 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 F3IYcZ7 于 2016-12-13 09:22 编辑

通过学习对比C++和java编程小题目理解到了几个道理。因为语言思路都是相通的,语法是其次,最主要还是编程的逻辑思维。

- 编程最后的目的是为了解决问题,而不是制造问题,要学会把大问题化成小问题。

- 一口吃不下所有的知识,任何人都做不到。

- 逻辑思维很重要,大部分的人知识量都是从大量的书籍中提炼出来的,其中少数的人会产生错觉,以为这是自己本来就会的。而不是通过别人的分享获取的。

- 招数是一样的,最终还是要学好数学与英语。数学训练逻辑,英语扩张视野。

比如说这个棱形图形在输出前的形式一定是在脑海里有构思的

第一个图形
```
  1. 1
  2.     *
  3.    *
  4.   *
  5. *
  6. *
复制代码

```
第二个图形
```
  1. 2
  2.     *****
  3.    *****
  4.   *****
  5. *****
  6. *****
复制代码

```



java代码
```
  1. 3
  2.         //   *
  3.         //  ***
  4.         // *****
  5.         //*******
  6.         // *****
  7.         //  ***
  8.         //   *
  9. //上半部分
  10. //    行数    i 0 1 2 3
  11. //    空格    k 3 2 1 0
  12. //    星星    L 1 3 5 7
  13. //    使行号等于星星的公式     步长的值+次数,星星每隔2就新增一行
  14. //                                                                            2*i+1
  15. //下半部分
  16. //   行数   i  0 1 2 3
  17. //   空格   j  0 1 2 3
  18. //   星星   k 0 1 3  5  反向思维:大于0就输出4次,大于1就输出3次,大于3就输出1次,大于5就输出0次。

  19.   //上半部分
  20.   for (int i= 0; i<4;i++)
  21.         {
  22.             for(int k=3; k>i;k--)
  23.             {
  24.                 System.out.print(" ");
  25.             }

  26.             for(int j=0;j< 2*i+1;j++)
  27.             {

  28.                 System.out.print("*");
  29.             }

  30.             System.out.println("");
  31.         }
  32.    //下半部分
  33.    for (int i= 0; i<4;i++)
  34.         {
  35.             for(int j=0; j<=i;j++)
  36.             {
  37.                 System.out.print(" ");
  38.             }
  39.             for(int k=4; k>2*i-1;k--)    //k 4 3 2 1 0-1    i   0  1  3  5
  40.             {
  41.                 System.out.print("*");
  42.             }
  43.             System.out.println("");
  44.         }
复制代码

```

C++代码
```
  1. //上半部分
  2.   for (int i= 0; i<4;i++)
  3.         {
  4.             for(int k=3; k>i;k--)
  5.             {
  6.                cout<<" ";
  7.             }

  8.             for(int j=0;j< 2*i+1;j++)
  9.             {

  10.                 cout<<"*";
  11.             }

  12.             cout<<endl;
  13.         }
  14.    //下半部分
  15.    for (int i= 0; i<4;i++)
  16.         {
  17.             for(int j=0; j<=i;j++)
  18.             {
  19.                cout<<" ";
  20.             }
  21.             for(int k=4; k>2*i-1;k--)    //k 4 3 2 1 0-1    i   0  1  3  5
  22.             {
  23.                 cout<<"*";
  24.             }
  25.             cout<<endl;
  26.         }
复制代码

```

评分

参与人数 1荣誉 +5 鱼币 +5 贡献 +2 收起 理由
寥若晨星 + 5 + 5 + 2 感谢楼主无私奉献!

查看全部评分

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2016-12-13 09:27:26 | 显示全部楼层
居然拿这种东西来!!!剽窃!!!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-3-28 18:01

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表