回到系列文章的目录——[​​系列文章目录​​​]  回到本章目录——[​​第1章目录​​]

1.5.2 循环深入——输出多行星号

  ​例1.7 编程序,输出如下的星号图

  C++程序设计实践学材系列(22)——1.5.2 循环深入——输出多行星号_#include

  有人写出程序:

//例程ch1-11.cpp
#include <iostream>
using namespace std;
int main()
{
cout<<"********"<<endl;
cout<<"********"<<endl;
cout<<"********"<<endl;
cout<<"********"<<endl;
cout<<"********"<<endl;
cout<<"********"<<endl;
cout<<"********"<<endl;
return 0;
}


  这个程序无疑是能够完成要求的任务的。

  这里只要求输出7行,带着如果输出700行的忧虑,怀着没有用上1.5.1小节引用的循环的愧疚,写出的程序可以是例程ch1-12.cpp(用while循环)或例程ch1-13.cpp(用for循环):


//例程ch1-12.cpp,用while循环
#include <iostream>
using namespace std;
int main()
{
int i=0;
while(i<7)
{
cout<<"********"<<endl;
i++;
}
cout<<endl;
return 0;
}


//例程ch1-13.cpp,用for循环
#include <iostream>
using namespace std;
int main()
{
int i;
for(i=0; i<7; i++)
{
cout<<"********"<<endl;
}
cout<<endl;
return 0;
}

  再进一步,两个程序中第9行输出8个星号的工作,也可以用执行8次的循环,每次输出1个星号完成的!因此,程序进行了如下改造(尽管 可以用while语句也可以用for语句,下面的程序不玩组合游戏了,输出8个星号的工作交给更擅长计数的for循环完成):


//例程ch1-14.cpp
#include <iostream>
using namespace std;
int main()
{
int i=0,j;
while(i<7)
{
for(j=0;j<8;j++)
{
cout<<"*";
}
cout<<endl;
i++;
}
cout<<endl;
return 0;
}


//例程ch1-15.cpp
#include <iostream>
using namespace std;
int main()
{
int i,j;
for(i=0; i<7; i++)
{
for(j=0; j<8; j++)
{
cout<<"*";
}
cout<<endl;
}
cout<<endl;
return 0;
}

  如果可以,可尝试着自己读一读。如果读不下去,不要强迫自己。看一下“微课件1.8 输出星号的循环程序在执行”再说。

 C++程序设计实践学材系列(22)——1.5.2 循环深入——输出多行星号_i++_02

下载:微课件1.8 输出星号的循环程序在执行

C++程序设计实践学材系列(22)——1.5.2 循环深入——输出多行星号_i++_03



回到系列文章的目录——[​​系列文章目录​​]  回到本章目录——[​​第1章目录​​]