c语言实践 打印三角形
效果如下:

我是怎么考虑这个问题的。
首先共有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语言实践 打印三角形的更多相关文章
- c语言实践打印字母三角形
效果如下: int main(void) { char ch = 'A';//当前要打印的字符 ;//每行要打印字符的个数 ; i < ; i++,count++) { ; j < cou ...
- c语言实践 打印数字三角形
效果如下图: 思路就是外层循环控制要打印的行数,里层循环控制每行打印的数字个数. int val = 65; for (int i = 0; i < 6; i++) { for (int j = ...
- c语言实践 打印字母三角形
效果如下: 我是怎么想的: 总共需要打印6行字母,那么就需要一个循环来控制打印第几行,大概代码如下: for(int i=0;i<6;i++) { } 每行都会打印字母,而且循环越往后,需要打印 ...
- Day7 break continue goto 以及打印三角形练习.
break break在任何循环语句中的主体部分,均可以用break控制循环流程.break用于强行退出循环,不执行循环中剩余的语句. (break语句也在switch中使用) package com ...
- 《程序设计语言——实践之路》【PDF】下载
程序设计语言--实践之路>[PDF]下载链接: https://u253469.pipipan.com/fs/253469-230382240 内容简介 本书在美国大学已有使用了十余年,目前被欧 ...
- 《程序设计语言——实践之路(英文第三版)》【PDF】下载
<程序设计语言--实践之路(英文第三版)>[PDF]下载链接: https://u253469.pipipan.com/fs/253469-230382234 内容简介 <程序设计语 ...
- 《程序设计语言——实践之路【PDF】下载
<程序设计语言--实践之路[PDF]下载链接: https://u253469.pipipan.com/fs/253469-230382240 内容简介 <程序设计语言--实践之路(第3版 ...
- R语言︱H2o深度学习的一些R语言实践——H2o包
每每以为攀得众山小,可.每每又切实来到起点,大牛们,缓缓脚步来俺笔记葩分享一下吧,please~ --------------------------- R语言H2o包的几个应用案例 笔者寄语:受启发 ...
- 用js 的for循环打印三角形,提取水仙花数,求本月多少天
第一题:用for循环打印三角形 //第一个 for(var x = 1;x <= 4;x++){ //控制行数 :由 1 到 4 for(var y = 1;y <= x;y++){ // ...
随机推荐
- opencv之图像阈值化处理
一.函数简介 1.threshold-图像简单阈值化处理 函数原型:threshold(src, thresh, maxval, type, dst=None) src:图像矩阵 thresh:阈值 ...
- jQuery火箭图标返回顶部代码
在网上找来段使用jQuery火箭图标返回顶部代码,感觉比较酷,比较炫,大概样式如下, 代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1. ...
- UNION和UNION ALL关键字
UNION和UNION ALL关键字都是将两个结果集合并为一个,但这两者从使用和效率上来说都有所不同. 1.对重复结果的处理:UNION在进行表链接后会筛选掉重复的记录,Union All不会去除重复 ...
- 数据库中通过group by找出表中的重复数据
有时候在做数据割接时会碰到数据插入失败的情况,大部分都是导出的数据中存在重复导致的.我们可以通过查询语句带分组条件来确认是否有重复数据.例如我现在有表 t_wlf_info,其中有个 username ...
- delphi 理解ParamStr
delphi 理解ParamStr 演示代码如下 ::code procedure TForm1.FormCreate(Sender: TObject); var i: Integer; begi ...
- shell查看执行过程及时间变量
sh -xv test.sh #加参数xv查看shell执行过程. Shell 调用系统时间变量 获取今天时期:`date +%Y%m%d` 或 `date +%F` 或date +%Y-%m- ...
- mysql命令 show slave status\G;命令输出详解
show slave status\G; 命令输出详解 mysql> show slave status\G; *************************** . row ******* ...
- CAN总线优点
废除传统的站地址编码,代之以对通信数据块进行编码,可以多主方式工作: 采用非破坏性仲裁技术,当两个节点同时向网络上传送数据时,优先级低的节点主动停止数据发送,而优先级高的节点可不受影响继续传输数据,有 ...
- (转)winform下UPD通信的简单应用
本文转载自:http://blog.csdn.net/wanlong360599336/article/details/7557046 先看效果图: 使用UDP的好处就是不需要三次握手,但是缺点就是存 ...
- 分布式缓存系统 Memcached 状态机之SET、GET命令
首先对状态机中的各种状态做个简单总结,具体可见状态转换示意图: 1.listening:这个状态是主线程的默认状态,它只有这一个状态:负责监听socket,接收客户连接,将连接socket派发给工作线 ...