previous next Up Title Contents Index

Esimerkki 1

Tarkastellaan esimerkkiohjelmana kirjaan liittyvien tietojen käsittelyä tietueen avulla:

    #include <stdio.h>

    /* VAKIOT *****************************/

    #define MAX_KIRJAN_NIMI 30
    #define MAX_KIRJAILIJAN_NIMI 30

    /* TIETOTYYPIT *************************/

    struct kirja {
        char nimi [MAX_KIRJAN_NIMI+1];
        char kirjailija [MAX_KIRJAILIJAN_NIMI+1];
        float hinta;
    };

    /* PÄÄOHJELMA ***********************/

    void main (void)
    {
        struct kirja book;
        clrscr();
        printf ("Anna kirjan nimi : ");
        gets(book.nimi);
        printf ("Anna kirjailijan nimi: ");
        gets (book.kirjailija);
        printf ("Anna kirjan hinta: ");
        scanf ("%f",&book.hinta);
        clrscr();
        printf ("Annoit seuraavat tiedot: \n\n");
        printf ("%-30s %-30s Hinta\n",
        "Kirjan nimi","Kirjoittaja");
        printf ("\n%-30s %-30s %6.2f\n",  book.nimi, book.kirjailija, book.hinta);
    }


Huomaa, että ohjelmassa ei ole varauduttu siihen, että käyttäjä syöttää pidempiä merkkijonoja kuin on sallittu.

Tätä varten pitäisi ohjelmoida virhetarkistukset.

previous next Up Title Contents Index