让我们用下面简单的代码先行解释循环嵌套——
#include<iostream> //外层执行一次,内层执行一周
using namespace std;
int main()
{ //利用嵌套循环实现星图
for (int i = 0; i < 10; i++) //外层循环
{
for (int j = 0; j < 10; j++) //内层循环
{
cout << "* " ; //输出一行星图
}
cout << endl;
}
system("pause");
return 0;
}
运行如下——
下面简单的例子概况——
代码如下——
#include<iostream>
using namespace std;
int main()
{ //利用嵌套循环实现星图
int m;
cin >> m;
for (int i = 0; i < m; i++) //外层循环
{
for (int j = 0; j <= i; j++) //内层循环 //***j <= i —— 列数 <= 当前行数***
{
cout << "* " ; //输出一行星图
}
cout << endl;
}
system("pause");
return 0;
}
运行结果如下——
找规律好吧找规律——
答案——我们再给出一道题目——
注意下面代码的这句注释—— //内层循环 //***j <= i —— 列数 <= 当前行数*** // 列数 <= 规律
#include<iostream>
using namespace std;
int main()
{ //利用嵌套循环实现星图
int m;
cin >> m;
for (int i = 1; i <= m; i++) //外层循环
{
for (int j = 1; j <= m+1-i; j++) //内层循环 //***j <= i —— 列数 <= 当前行数*** // 列数 <= 规律
{
cout << "* " ; //输出一行星图
}
cout << endl;
}
system("pause");
return 0;
}
也就是练习一中第三种情况
【列4】——代码如下——
#include<iostream>
using namespace std;
int main()
{ //利用嵌套循环实现星图
int m;
cin >> m;
for (int i = 1; i <= m; i++) //外层循环
{
for (int ij = 1; ij <= m - i; ij++)
{
cout << " ";
}
for (int j = 1; j <= i; j++) //内层循环 //***j <= i —— 列数 <= 当前行数*** // 列数 <= 规律
{
cout << "*" ; //输出一行星图
}
cout << endl;
}
system("pause");
return 0;
}
运行结果如下——
下一节将会应用坐标法来解决复杂的星号阵列