Dziwny znak wyświetlany w programie.

0

Witam. Napisałem program piramida który generuje trójkąty. Wszystko działa oprócz tego że jeżeli wpisze 0 jak program się zapyta o wypełnienie to pojawia się trójkąt bez wypełnienia ale na jego wierzchołku zamiast wprowadzonego znaku pojawia się dziwny znak. Proszę o pomoc.

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

int main()
{
    int a, b, c, m=1 ,k;
    char z;

    printf("Ile lini: ");
    scanf("%d", &c);
    getchar();
    printf("\nZnak: ");
    scanf("%c", &z);
    getchar();
    printf("Wypelnienie (1/0): ");
    scanf("%d", &k);
    getchar();
    a=c;

    if(k>0){
        for(a=0; a<c; a++){
            b=a;
            for(b=0; b<a; b++){
                printf("%c",z);
            }
            printf("\n");
        }
    }else{
        a=c;
        for(a=0;a<c;a++){
            if(m==1,m==c){
                b=a;
                for(b=0;b<=a;b++){
                    printf("%c",z);
                }
                m++;
            }else{
                b=a;
                printf("%c",z);
                for(b=0;b<a;b++){
                    printf(" ",z);
                }
                printf("\b%c");
                m++;
            }printf("\n");

        }

        }
    return 0;
}
0

Poradziłem sobie. Do zamknięcia

1 użytkowników online, w tym zalogowanych: 0, gości: 1