我们都知道九九乘法表、二维数组、排序算法等都用到for循环语句,for的作用是很强大,但是仅仅是一个for或许感觉挺简单,但是多个for的循环多个变量结合在一起的时候就会搞混,甚至得一步一步的观察程序运行的情况,下面通过两个简单的例子,来简单的学习一下for与多个变量结合打印图案的算法。
例一:
代码如下:
#include <iostream>
using namespace std;
void main()
{
int i, j, k;
for(i=0; i<=3; i++) //i控制上半部分的4行
{
for(j=0; j<6-2*i; j++) //j通过i控制打印空格
cout<<" ";
for(k=0; k<=2*i; k++) //k通过i控制打印星号
cout<<"*";
cout<<endl; //打印完一行换行
}
for(i=0; i<3; i++) //i控制下半部分的3行
{
for(j=5; j>2*i; j--) //j通过i控制打印星号
cout<<"*";
cout<<endl; //打印完一行换行
}
}
例二:
代码如下:
#include <iostream>
using namespace std;
void main()
{
int i, j, k;
for(i=0; i<=3; i++)
{
for(j=0; j<=2-i; j++)
cout<<" ";
for(k=0; k<=2*i; k++)
cout<<"*";
cout<<endl;
}
for(i=0; i<=2; i++)
{
for(j=0; j<=i; j++)
cout<<" ";
for(k=0; k<=4-2*i; k++)
cout<<"*";
cout<<endl;
}
}