Bài tập có sử dụng đệ quy!

Anh chị nào giúp em sử dụng đệ quy để in ra hình giống 2 hình trên đi ạ , em suy nghĩ hoài không ra , em cảm ơn !

#include <stdio.h>
#include <stdlib.h>

int x  = 6;
int y = 0;
void recur(int n)
{

    for(int i = 1; i <= x; i++)
    {
        if(i < n)
            printf("-");
        else
            printf("%i", i);
    }
    printf("\n");
    if(y==0 && 2*n >= (x + 2))
    {
          n--;
          if(2*n == x)
          {
             y=1;
             recur(n+1);
          }
          else
            recur(n);
    }
    else if(n < x )
    {
       y =1;
       n++;
       recur(n);

    }

}


int main()
{
    printf("put size:");
    scanf("%d", &x);
    recur(x);
    return 0;
}

Mình mới học code, chưa thật mạch lạc nhưng đoạn trên chạy theo yc của bạn đc.

Bài giải của mình không đúng với đề bài yêu cầu.
Nhưng nghĩ đi nghĩ lại thì đề bài nó hơi sai sai… bắt viết function có 1 tham số, sao mà làm nổi !!!

<?php
// Recursive way
function recursiveTriangle($n, $r = 1)
{
    // middle position
    $middle = round($n/2);

    // printing column
    for ($c=1; $c <= $n; $c++) { // column
        if ($r<=$middle) echo $c < $n-$r+1 ? "_" : $c;
        else echo $c <= $r-1 ? "_" : $c;
    }
    echo "\n";
    $r++;
    
    // recursive row
    if ($r<=$n) recursiveTriangle($n, $r);
}

$n = 9;
recursiveTriangle($n);
83% thành viên diễn đàn không hỏi bài tập, còn bạn thì sao?