Caleb Sung的博客

今天也要多学习一个

C语言:程序填空:编写函数,打印出n行如下图形,n从键盘读入

题目来源:大工慕课 链接
作者:Caleb Sung

题目要求

29)编写函数,打印出n(1<=n<=9)行如下图形,n从键盘读入。

      1
    1 2 1
  1 2 3 2 1
1 2 3 4 3 2 1
……

题目代码

#include<stdio.h>
int main()
{
    int n;
    void prntri(int n);
    printf("请输入要打印几行!\n");
    scanf("%d",&n);
    while(n>9||n<1)
    {
        printf("请输入大于等于1小于等于9的整数!\n");
        scanf("%d",&n);
    }
    prntri(n);
    return 0;
}
void prntri(int n)
{
    //*****begin*********

    //******end**********
}

参考代码

每一行分为三部分:输出空格、输出递增数字与空格、输出递减数字与空格:

#include<stdio.h>
int main()
{
    int n;
    void prntri(int n);
    printf("请输入要打印几行!\n");
    scanf("%d",&n);
    while(n>9||n<1)
    {
        printf("请输入大于等于1小于等于9的整数!\n");
        scanf("%d",&n);
    }
    prntri(n);
    return 0;
}
void prntri(int n)
{
    //*****begin*********
    int i, j;
    for(i=1; i<=n; i++){
        for(j=2*n-2*i; j>=0; j--)
            printf(" ");
        for(j=1; j<=i; j++)
            printf("%d ", j);
        for(j=i-1; j>=1; j--)
            printf("%d ", j);
        printf("\n");
    }
    //******end**********
}

运行效果

请输入要打印几行!
8
               1
             1 2 1
           1 2 3 2 1
         1 2 3 4 3 2 1
       1 2 3 4 5 4 3 2 1
     1 2 3 4 5 6 5 4 3 2 1
   1 2 3 4 5 6 7 6 5 4 3 2 1
 1 2 3 4 5 6 7 8 7 6 5 4 3 2 1
阅读更多

扫码向博主提问

去开通我的Chat快问

qq_41933331

非学,无以致疑;非问,无以广识
版权声明:根据中华人民共和国著作权法,转载请标明来源,作者保留依法追究未经授权转载行为的权利 https://blog.csdn.net/qq_41933331/article/details/80316894
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

不良信息举报

C语言:程序填空:编写函数,打印出n行如下图形,n从键盘读入

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭