数字金字塔问题,C++

其中n是用户传入的参数为1到9的正整数,要求函数按照如图样例所示的格式打印出n行数字金字塔

#include <iostream>
using namespace std;
int main()
{
    int n;
    cin >> n;
    for (int i = 1; i <= n; i++)
    {
        for (int j = n - i; j >= 0; j--) cout << " ";
        for (int j = 0; j < i * 2 - 1; j++) cout << i;
        cout << endl;
    }
}

img

  • 这个问题的回答你可以参考下: https://ask.csdn.net/questions/7535475
  • 我还给你找了一篇非常好的博客,你可以看看是否有帮助,链接:一本书n页的页码连续编号,则数字0到9在页码中各出现多少次?用c++编程
  • 除此之外, 这篇博客: C/C++编程笔记:C语言入门题之正倒金字塔,正反三角形代码详解中的 倒金字塔 部分也许能够解决你的问题, 你可以仔细阅读以下内容或跳转源博客中阅读:
  • 源代码:

    include
    
    void main()
    
    {
    
    inti,j,k,n;
    
    printf("请输入倒金字塔的层数:");
    
    scanf("%d",&n);
    
    for(i=1;i<=n;++i)// 控制层数
    
    {
    
    for(k=0;k<=i-1;k++)// 控制空格数
    
    printf(" ");for(j=2*n-2*i+1;j>0;j--)//控制*个数
    
    printf("*");
    
    printf("\n");  
    
    }
    
    }

    如此说来,正反三角形,难道你还不会吗?

    希望对你有帮助!也希望你能够在学习C语言的路上越走越远,砥砺前行~

    自学C/C++编程难度很大,不妨和一些志同道合的小伙伴一起学习成长!

    C语言C++编程学习交流圈子,【点击进入微信公众号:C语言编程学习基地

    有一些源码和资料分享,欢迎转行也学习编程的伙伴,和大家一起交流成长会比自己琢磨更快哦!