用C++编写程序

2025-05-14 03:16:01
推荐回答(4个)
回答1:

钱多问题关注度就是不一样,如果把我的采纳了,不要追加了,留着你以后学习有疑问时再用。
用常用的for循环结构(这个应该学了吧?)对我的有什么建议Hi我!我修改代码。
刚出炉的程序,热乎乎的,希望对你有帮助。
》代码及注释:》》:
#include
using namespace std;
int main(void)
{
int line,i,j;
cout<<"How many lines?"< cin>>line;//由于屏幕大小有限,输入的line值不宜过大,例如100可能就不行
cout<<"What character?"< for(i=1;i<=line;i++)//循环line次,输出line行
{
for(j=line;j>=i;j--)//这里不宜将j的初值定位一个确定的值,而应定义为一个与line有关的值。比如你把j的初值定为4,输出的行数过多时(输出9行试试),输出的图形将会有缺失。
cout<<" ";
for(j=1;j<=2*i-1;j++)//通过观察发现,下一行比上一行多输出两个星号,故j的值每增加1,输出星号的个数多两个
cout<<"*";
cout< }
return 0;
}//输出每行,先输出一定个数的空格,再输出一定个数的星号,再换行
》提高(使输出的图形变的稀疏):》》:
#include
using namespace std;
int main(void)
{
int line,i,j;
cout<<"How many lines?"< cin>>line;//由于屏幕大小有限,输入的line值不宜过大,例如100可能就不行
cout<<"What character?"< for(i=1;i<=line;i++)//循环line次,输出line行
{
for(j=line;j>=i;j--)
cout<<" ";//两个空格,如果想让输出地图形更加稀疏,这里改成三个空格,对应的下下一行星号后有两个空格
for(j=1;j<=2*i-1;j++)
cout<<"* ";//星号后还有一个空格符
cout< }
return 0;
}
》提高2(输出菱形,这歌是比较经典的,几乎在介绍循环结构时都会介绍)》》:
#include
using namespace std;
int main(void)
{
int line,i,j;
cout<<"How many lines?"< cin>>line;//由于屏幕大小有限,输入的line值不宜过大,例如100可能就不行
cout<<"What character?"< for(i=1;i<=line;i++)//循环line次,输出line行
{
for(j=line;j>=i;j--)cout<<" ";
for(j=1;j<=2*i-1;j++)//通过观察发现,下一行比上一行多输出两个星号,故j的值每增加1,输出星号的个数多两个
cout<<"*";
cout< }
for(i=line-1;i>=1;i--)//循环line-1次,输出下半部分的line-1行
{
for(j=line;j>=i;j--)
cout<<" ";
for(j=1;j<=2*i-1;j--)
cout<<"*";
cout< }
return 0;
}//输出每行,先输出一定个数的空格,再输出一定个数的星号,再换行
//通过观察发现,要输出菱形,比较简单的做法:输下半部分倒三角形时只需将输上半部分的三角形的第一条语句修改:由“for(i=1;i<=line;i++)”修改为“for(i=line-1;i>=1;i--)”
》提高三(输出由数字组成的三角形)》》:
#include
using namespace std;
int main(void)
{
int i,j,line;
cout<<"How many lines?"< cin>>line;
cout<<"What character?"< for(i=1;i<=line;i++)//循环3次,输出前3行
{
for(j=line;j>=i;j--)//通过观察,前三行的前一行都比它后面的一行多输出一个空格,少输出两个数
cout<<" ";
for(j=1;j<=i;j++)
cout< for(j=1;j cout< cout< }//以输出第三行为例(此时i=3),首先执行输出空格的循环,输出3个空格;执行“for(j=1;j<=i;j++)cout< return 0;
}
回答完毕!

回答2:

#include
using namespace std;
int main()
{
int line;
char character;
cout<<"How many lines?"< cin>>line;
cout<<"What character?"< cin>>character;

for(int i=1;i<=line;i++)//行
{
for(int j=1;j<=(line-i);j++)//空格
cout<<" ";
for(int k=1;k<=(2*i-1);k++)//字符
cout< cout< }
return 0;
}
//写慢了

回答3:

//看下,我帮你写好的
#include
using namespace std;

int main()
{
int i,j,k,n;
char x;
cout<<"How many lines?"< cin>>n;
cout<<"What character?"< cin>>x;
for(i=0;i for(j=0;j cout <<' ';
}
for(k=0;k<2*i+1;k++){
cout < }
cout < }
return 0;
}

回答4:

#include
using namespace std;
int main()
{
int a,i,j;
char c;
cout<<"How many lines? ";
cin>>a;
cout<<"What character? ";
cin>>c;
for(i=1;i<=a;i++)
{
for(j=1;j<=a-i;j++)
cout<<" ";
for(j=1;j<=2*i-1;j++)
cout< cout< }

return 0;
}