我以前问过这样的问题,但它有点误导,因为我没有包括打印订单。因为我了解了整个概念的变化,我认为再问一次会更合适。
#include <iostream>
using namespace std;
int main()
{
int a, b, c, i;
cin >> a >> b >> c;
for ( i = 0; i < a; i++)
cout << "*" << endl;
for ( i = 0; i < b; i++)
cout << "*" << endl;
for ( i = 0; i < c; i++)
cout << "*" << endl;
}
我知道输出与以下内容相同:
for ( i = 0; i < a + b + c; i++ ){
cout << "*" << endl;
}
所以对于 2 3 1 我得到:
*
*
*
*
*
*
我想要的是:
*
* *
* * * //Horizontal distance between 2 shapes don't matter.
并且必须完全按照该顺序完成。每列的打印也必须使用单独的功能完成。
第一个循环:
*
*
第二个循环:
*
* *
* *
最后一个循环:
*
* *
* * *
*编辑: *显然还有其他解决方案可以做到这一点,根本不使用任何游标操作。我的老师建议我应该首先将字符存储在一个字符指针中,然后逐行打印该字符指针内存。效果很好.