嵌套循环(图形输出)
/*
嵌套循环
外层循环里面还有循环,称为嵌套循环,循环变量不能相同
例:
for(循环变量i;i循环条件;i让循环停止的条件){
for(循环变量j;j循环条件;j让循环停止的条件2)
}
并列循环,不同于嵌套循环,循环变量可以相同也可以不同,互不影响,如果使用循环变量相同,那么第二个循环时变量就要初始化
例:
for(循环变量i;i循环条件;i让循环停止的条件){
}
for(循环变量j;j循环条件;j让循环停止的条件){
}
图形输出
对于图形的分析,首先分析有多少行,再分析每行由什么组成且有什么规律,
对于对称图片,可先输出一半,再倒过来输出另一半
对于不规则图形,可以填补后看成规则的,再通过特殊值进行挖空即可
学会通过循环变量i得到常见的序列
for(i=1;i<=5;i++){
(填空)
}
请问,上述填空要填什么才能得到如下序列
【正常序列】如果要得到 1 2 3 4 5 序列,填空为: cout<<i<<" "
【偶数序列】如果要得到 2 4 6 8 10 序列,填空为: cout<<2*i<<" "
【奇数序列】如果要得到 1 3 5 7 9 序列,填空为: cout<<2*i-1<<" "
【倒序序列】如果要得到 5 4 3 2 1 序列,填空为: cout<<5-i+1<<" " ,如果是n个数,则为 n-i+1
【倒数奇数序列】如果要得到 9 7 5 3 1 序列,填空为: cout<<(5-i+1)*2-1<<" ",如果是n个数,则为 (n-i+1)*2 -1
*/
#include <iostream>
using namespace std;
int main() {
int n=5,i,j;
/*
并列循环
两个循环在同一级(层次),这时变量就可以用相同的,但要对i进行重新初始化;
*/
for(i=1;i<=n;i++){
cout<<"*";
}
cout<<endl;
for(i=1;i<=n;i++){//注意,要对i重新初始化,不然i的值是4,那就没输出
cout<<"*";
}
cout<<endl;
cout<<endl;
/*
输出:
*****
*****
*/
/*
嵌套循环
循环里面又有循环,注意,嵌套循环的循环变量不能相同
外层循环,输出5行,每行输出5个字符
*/
for(i=1;i<=n;i++){
for(j=1;j<=n;j++){
cout<<"*";
}
cout<<endl;
}
/*
输出:
*****
*****
*****
*****
*****
*/
return 0;
}