效果如下:

我是怎么考虑这个问题的。

首先共有5行,那么我们需要一个循环,让这个循环走5遍。

那么我们有个大概的代码结构

for(int i=0;i<5;i++)

{

}

i的定义域是[0,4]之间的整数,共5个数,所以循环5次。

接下来再考虑,第一次循环输出一个星,后面几次循环输出的星越来越多,所以输出多个星也是需要一个循环的,

for (int i=0;i<5;i++)

{

  for(int j=0;jxxx;j++)

  {

    printf("*");

  }

  printf("\n")

}

为什么会想到j=0?和j++因为我能猜到里层循环的循环体是每次画一个星的,而且外层循环多循环一次,那么里层循环的星星就多一点。既然j是控制里层循环的,那么j的值肯定是从一个比较小的数慢慢增长起来的,那么我们就设j的初始值是0,j每次增加1。

再看题目可以发现,第一次外层循环的时候需要输出一个星,那么意味着里层循环只能执行一次,现在j的值已经是0了,我们给j一个什么条件才能让j的定义域只能是0这一个整数呢?是不是j<1,如果j=0,j<1成立的话,那么j只能取到0,即只能循环一次。

那么我们把程序写成这样行不行?

for(int i=0;i<5;i++)

{

  for(int j=0;j<1;j++)

  {

  printf("*");

  }

  printf(\n);

}

这样的话,外层循环每循环一次,里层循环都只能输出一个星,这是不对的。

我们再看第二行,是需要输出两个星的,意思是让里层循环执行2次,那么需要j<2,对吧,int j=0 ;j<2,j++

j的定义域是0 1 这两个数,意味着要输出两个星。而此时i的值是1

好像发现了一个规律

i=0时 j<1就可以输出一个星

i=1时 j<2就可以输出两个星

1和2好像和i的值有某种关系? 对,j<i+1;

所以我们代码就成功了。

int main(void)
{
for (int i = ; i < ; i++)
{
for (int j = ; j < i+; j++)
{
printf("*");
}
printf("\n"); } return ;
}

c语言实践 打印三角形的更多相关文章

  1. c语言实践打印字母三角形

    效果如下: int main(void) { char ch = 'A';//当前要打印的字符 ;//每行要打印字符的个数 ; i < ; i++,count++) { ; j < cou ...

  2. c语言实践 打印数字三角形

    效果如下图: 思路就是外层循环控制要打印的行数,里层循环控制每行打印的数字个数. int val = 65; for (int i = 0; i < 6; i++) { for (int j = ...

  3. c语言实践 打印字母三角形

    效果如下: 我是怎么想的: 总共需要打印6行字母,那么就需要一个循环来控制打印第几行,大概代码如下: for(int i=0;i<6;i++) { } 每行都会打印字母,而且循环越往后,需要打印 ...

  4. Day7 break continue goto 以及打印三角形练习.

    break break在任何循环语句中的主体部分,均可以用break控制循环流程.break用于强行退出循环,不执行循环中剩余的语句. (break语句也在switch中使用) package com ...

  5. 《程序设计语言——实践之路》【PDF】下载

    程序设计语言--实践之路>[PDF]下载链接: https://u253469.pipipan.com/fs/253469-230382240 内容简介 本书在美国大学已有使用了十余年,目前被欧 ...

  6. 《程序设计语言——实践之路(英文第三版)》【PDF】下载

    <程序设计语言--实践之路(英文第三版)>[PDF]下载链接: https://u253469.pipipan.com/fs/253469-230382234 内容简介 <程序设计语 ...

  7. 《程序设计语言——实践之路【PDF】下载

    <程序设计语言--实践之路[PDF]下载链接: https://u253469.pipipan.com/fs/253469-230382240 内容简介 <程序设计语言--实践之路(第3版 ...

  8. R语言︱H2o深度学习的一些R语言实践——H2o包

    每每以为攀得众山小,可.每每又切实来到起点,大牛们,缓缓脚步来俺笔记葩分享一下吧,please~ --------------------------- R语言H2o包的几个应用案例 笔者寄语:受启发 ...

  9. 用js 的for循环打印三角形,提取水仙花数,求本月多少天

    第一题:用for循环打印三角形 //第一个 for(var x = 1;x <= 4;x++){ //控制行数 :由 1 到 4 for(var y = 1;y <= x;y++){ // ...

随机推荐

  1. CodeForces - 963D:Frequency of String (bitset暴力搞)

    You are given a string ss. You should answer nn queries. The ii-th query consists of integer kiki an ...

  2. 使用Metaspoit攻击MS08-067

    kali视频学习请看 http://www.cnblogs.com/lidong20179210/p/8909569.html 使用Metaspoit攻击MS08-067 MS08-067漏洞的全称为 ...

  3. Linq:Grouping Operators

    [Category("Grouping Operators")] [Description("This sample uses group by to partition ...

  4. [Luogu4169][Violet]天使玩偶/SJY摆棋子

    luogu 题意 一个平面上有\(n\)个点,\(m\)次操作,每次新增一个点,或者是询问离某个点最近的点的距离.这里的距离是曼哈顿距离. \(n,m\le3*10^5\) sol 写一发\(CDQ\ ...

  5. 使用PHP判断是否为微信、支付宝等移动设备访问代码

    在开发过程中经常遇到根据不同的设备显示不同的数据或者在页面样式上做不同的布局,另外在做支付接口的时候也可能会判断当前是什么设备访问,例如判断如果是微信内置浏览器访问则只启用微信支付功能,如果是支付宝内 ...

  6. next.js 简单使用

    1. 介绍 一个react.js 服务器端渲染开源项目(不只是服务器端渲染,直接也可以生成纯静态站点) 类似的解决方案有好多,比如react.js 自身的服务器渲染方案(但是使用起来就是比较怪异) g ...

  7. php单链表实现

    php单链表实现 <?php //单链表 class Hero{ public $no; public $name; public $nickname; public $next=null; f ...

  8. DM8127-UART驱动

    一.重要文件 1./arch/arm/plat-omap/include/plat/omap-serial.h    ##串口名称 1)宏定义#define OMAP_MAX_HSUART_PORTS ...

  9. Java-Maven-Runoob:Maven 快照(SNAPSHOT)

    ylbtech-Java-Maven-Runoob:Maven 快照(SNAPSHOT) 1.返回顶部 1. Maven 快照(SNAPSHOT) 一个大型的软件应用通常包含多个模块,并且通常的场景是 ...

  10. PHP base64多图片上传

    // 多图片上传,base64 public function upload_multi() { $pic = $_POST['pic']; if (!$pic) { $this->json-& ...