C++使用循环打印指定图形时最后一行输出异常求助
C++ 打印指定图形最后一行问题解决方案
实现思路
- 外层循环控制总行数(共5行),遍历每一行时判断是否为最后一行,走不同的打印逻辑,完全符合循环实现的要求
- 前4行保留原有正常的打印逻辑,输出对应数量的前置空格和
-.*组合 - 最后一行跳过前置空格打印步骤,单独执行6次循环直接输出
-.*即可
代码示例
#include <iostream> using namespace std; int main() { // 总打印行数为5 const int total_lines = 5; for (int line = 1; line <= total_lines; line++) { // 前4行走原有打印逻辑 if (line < total_lines) { // 前置空格逻辑,可根据你前4行的实际空格规则调整参数 for (int space = 1; space <= total_lines - line; space++) { cout << " "; } // 打印对应数量的-.*组合 for (int cnt = 1; cnt <= line; cnt++) { cout << "-.*"; } } else { // 最后一行逻辑:循环6次输出-.*,无前置空格 for (int cnt = 1; cnt <= 6; cnt++) { cout << "-.*"; } } // 每行结束换行 cout << endl; } return 0; }
输出效果
-.* -.*-.* -.*-.*-.* -.*-.*-.*-.* -.*-.*-.*-.*-.*-.*
内容的提问来源于stack exchange,提问作者Muhammad Shamil Umar
相关产品推荐
相关产品推荐

