大猫学C/C++|c++:使用*号打印三角形

记得在初学C & Java的时候,我有做过这种练习。不过印象也不是很深刻了,只是还有一点印象。大致记得就是按照老师讲的步骤去一步一步完成就好了。具体的实现思路是一点不记得了。

  • 今天在看C++看到这个练习,感觉好熟悉。心想这玩意太小儿科了。我可以使用Java花式打印出各种奇怪的图形。(吹牛而已~)
  • 但是,没有想到的是,C++如同C也是没有字符串的概念的。于是就超级蛋疼。更不同于python。相对来说,python实现起来会方便很多。
  • 好吧,先看一下题目可代码吧:
#include /* 2.1使用循环结构打印下述图形,打印行数n由用户输入。图中每行事实上包括两部分,中间间隔空格字符数m也由用户输入。********** ********** ********** ********** ********** */ int main() { int n = 5; int space = 6; std::cout << "n:"; std::cin >> n; std::cout << "space:"; std::cin >> space; std::cout << std::endl; // y = 2x-1; // left = n-i; for (int i = 1; i <= n; ++i) { // left for (int k = 0; k < n - i; ++k) { std::cout << " "; } for (int j = 0; j < 2 * i - 1; ++j) { std::cout << "*"; } // space for (int l = 0; l < space; ++l) { std::cout << " "; }for (int m = 0; m < 2 * (n - i) + 1; ++m) { std::cout << "*"; } std::cout << std::endl; } return 0; } /* n:8 space:4********** ********** ********** ********** **********Process finished with exit code 0 */

看到了吧,这个打印三角形,真的不是简单的遍历一下,然后无脑输出*就可以了。还要去计算左边空格的个数,左边*的个数,右边*的个数。
【大猫学C/C++|c++:使用*号打印三角形】最后,这个小练习虽然连入门都算不上。但是我依然很高兴。因为是自己认真思考了,然后完成了这个小练习。yeah??

    推荐阅读