Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno C stvorec zo znaku char

Tento program by mal napisat stvorec s velkostou strany ako zadame samozejme ma byt duty.
Skontroloval som si to a nevidim tam chybu. Prosim vas najdite chybu preco mi to nekresli fakt normalny stvorec dakujem.

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

int main()
{
    int strana=0;
    int i=1;
    int j=1;
    char znak;

    printf("Zadajte cislo: ");
    scanf("%d",&strana);
    while(getc(stdin)!='\n');
    printf("Zadajte znak: ");
    scanf("%c",&znak);

    for(i=1;i<=strana;i++)
    {
        printf("%c",znak);
    }

    printf("\n");

    for(i=1;i<=strana-2;i++)
    {
        printf("%c",znak);
        for(j=1;i<=strana-2;j++)
        {
            printf(" ");
        }
        printf("%c\n",znak);
    }

    for(i=1;i<=strana-2;i++)
    {
        printf("%c",znak);
    }
    return 0;
}
Jsou zobrazeny jen nové odpovědi. Zobrazit všechny
Předmět Autor Datum
Už si na to prišiel. Osobne by som nepoužil printf, keď tam stále vypisuješ len jeden znak. Napísal… poslední
los 09.11.2013 10:47
los

Už si na to prišiel. Osobne by som nepoužil printf, keď tam stále vypisuješ len jeden znak. Napísal by som to skôr takto:

#include <stdio.h>

int main() {
    int strana;
    char znak;
    int i;
    int j;

    printf("Zadajte cislo: ");
    scanf("%d", &strana);
    while (getchar() != '\n')
        ;

    printf("Zadajte znak: ");
    scanf("%c", &znak);
    while (getchar() != '\n')
        ;

    for (i = 0; i < strana; ++i) {
        putchar(znak);
    }
    putchar('\n');

    for (i = 0; i < strana - 2; ++i) {
        putchar(znak);
        for (j = 0; j < strana - 2; ++j) {
            putchar(' ');
        }
        putchar(znak);
        putchar('\n');
    }

    for (i = 0; i < strana; ++i) {
        putchar(znak);
    }
    putchar('\n');

    return 0;
}

Zpět do poradny Odpovědět na původní otázku Nahoru