Programiranje u C-u

Praktična vježba 11a: Pokazivači i strukture

Odredite ispis slijedećeg programa.
 
#include <stdio.h>
#include <string.h>
struct  record {
        char name[20];
        int id;
        float price;
};
void editrecord( struct record * );
void editrecord( struct record *goods )
{
        strcpy( goods->name, "Zapečeni grah" );
        goods->id = 220;
        (*goods).price = 2.20;
        printf("Ime = %s\n", goods->name );
        printf("ID = %d\n", goods->id);
        printf("Cijena = %.2f\n", goods->price );
}
main()
{
        struct record item;
        strcpy( item.name, "Marmelada od šljiva");
        editrecord( &item );
        item.price = 2.75;
        printf("Ime = %s\n", item.name );
        printf("ID = %d\n", item.id);
        printf("Cijena = %.2f\n", item.price );
}
1. Prije poziva funkcije editrecord()
        item.name = "Marmelada od šljiva"

        item.id = 0

        item.price = 0.0
2. Nakon izlaska iz funkcije editrecord()
        item.name = "Zapečeni grah"

        item.id = 220

        item.price = 2.20
3. Konačne vrijednosti od: item.name, item.id, item.price
        item.name = "Zapečeni grah"

        item.id = 220

        item.price = 2.75

©Copyright B Brown. 1984-1998. All rights reserved.