题目 1812: [编程基础]输入输出练习之输出图案
2023-12-30 19:26:50
题目描述
输入一个字符,输出由这个字符组成等腰三角形
底为5个,高为3个。
输入格式
输入一个字符
输出格式
输出由这个字符组成的等腰三角形
样例输入
*
样例输出
* *** *****
分析:输入一个字符,把字符作为a,按照要求输出;
输出格式共三层,自顶向下是1、2、3层;
从第3层往上看,可以对比得到(左边)输出的空格分别是0、1、2,
把空格换成x,梅花*换成A,这个等腰三角形则变成了:
????????????????????????xxAxx
????????????????????????xAAAx
????????????????????????AAAAA
在这里,我的思路是,一共三层,每一层有3部分,(左)空格、字符串、(右)空格。
空格的语句是一样的,根据最外层的循环层数?i 的变化,写出输出不同的 j 变量的范围。
字符串也是同理的,大概就是这样。
????????外层变量i 每执行一次,内层循环全部跑完。
然后没加字符串输入,看起来大概是这样。
#include<iostream>
using namespace std;
int main() {
for (int i = 1; i < 4; i++) { // i:1\2\3
//本层左边的空格 2、1、0
for (int j = i; j < 3; j++) {
cout << "x"; //空格基本句
}
//字符分别输出 1,3,5次
for (int t = 0; t < 2*i-1; t++) {
cout <<"A";
}
//本层右边的空格 he左边一样
for (int j = i; j < 3; j++) {
cout << "x"; //空格基本句
}
//换行
cout << endl;
}
return 0;
}
这次最终版: 加字符串的输入、和把改成了空格
#include<iostream>
using namespace std;
int main() {
string str1;
cin >> str1; //输入字符串
for (int i = 1; i < 4; i++) { // i:1\2\3
//本层左边的空格 2、1、0
for (int j = i; j < 3; j++) {
cout << " "; //空格基本句
}
//分别输出 1,3,5次
for (int t = 0; t < 2*i-1; t++) {
cout <<str1;
}
//本层右边的空格 he左边一样
for (int j = i; j < 3; j++) {
cout << " "; //空格基本句
}
//换行
cout << endl;
}
return 0;
}
文章来源:https://blog.csdn.net/qq_63999224/article/details/135303755
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!