c++语言中for循环语句,c++编程灵活运用for循环语句来完成打印右三角形

32d03b02018cbb14ae7dd62be291b4d1.png

/*********************************************************

题目:打印如下一个图形

4c323284bae1f19d6679164a1701035e.png

解题分析:

如图所示是一个13行的三角图形,用int i来代表行数,那么就需要循环13次(那样就用一个外层循环可以解决for(int i=0;i<13;i++)).分析的是每次外层循环增加后内层循环打印星星数量的情况.

当i=0,星星的个数为1

当i=1,星星的个数为2

当i=2,星星的个数为3

当i=3,星星的个数为4

当i=4,星星的个数为5

当i=5,星星的个数为6

当i=6,星星的个数为7

根据上面的外层循环次数增加和打印星星数量的增加规律可以用一个内层循环解决(for(int j=0;j<1+i;j++))----------------------从这开始星星的数量开始递减.

当i=7,星星的个数为6

当i=8,星星的个数为5

当i=9,星星的个数为4

当i=10,星星的个数为3

当i=11,星星的个数为2

当i=12,星星的个数为1

随便着外层循环的增加,打印的星星数量递减,但外层循环和打印星星的数量总和是13,这样就可以设计一个内层循环来打印星星的数量for(int k=0;k<13-i;k++).

*********************************************************/

//程序实现如下:

#include

using namespace std;

int main()

{

for (int i = 0;i<13; i++)//外层循环13次

{

//判断一下i的值,如果i<7说明打印星星的数量是在增加的,如果i>=7打印星星额数量是递减的

if (i < 7)

{

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

{

cout << "*";

}

cout << endl;

}

else

{

for (int k = 0; k < 13 - i; k++)

{

cout << "*";

}

cout << endl;

}

}

system("pause");

return 0;

}

运行结果如下:

4b34cfcd74c1ad23d5fd068515cb7808.png

上面这个程序用了两个循环来处理,下面这个程序是用一个循环来处理完成。

//程序实现如下:

#include

using namespace std;

int main()

{

int num = 0;//变量num代表打印星星的数量

int k;//变量k代表每次增加或减少打印星星的数量

for (int i = 0; i < 13; i++)//外层循环13次

{

//单i<7的时候k=1,当i>=7的时候k=-1;

if (i < 7)

{

k = 1;

}

else

{

k = -1;

}

num = num + k;

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

{

cout << "*";

}

cout << endl;

}

system("pause");

return 0;

}

运行结果如下:

4b34cfcd74c1ad23d5fd068515cb7808.png

举报/反馈

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值