Zaloga ganje

Iz E-študij, proste zakladnice študentskega znanja

Skoči na: navigacija, iskanje
Vrsta Zaloga v gramih
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
 
//definiram strukturo zaloga
struct zaloga
{
	int kolicina;
	struct zaloga *next;
	char naziv[20];
};
 
//prototipi funkcij
struct zaloga *dodaj(struct zaloga*);
void izpisiSeznam(struct zaloga*);
 
//MAIN
int main(int argc, char *argv[])
{
	struct zaloga *head = NULL;
	printf("Koliko artiklov zelis zapisati: ");
	int stevec = 0, i;
	scanf("%d",&i);
	while(stevec<i)
	{
		head = dodaj(head);
		stevec++;
	}
	izpisiSeznam(head);
	free(head); //popucamo za sabo
	return 0;
}
 
struct zaloga *dodaj(struct zaloga *h)
{
	struct zaloga *q, *r;
	q = (struct zaloga*) malloc(sizeof(struct zaloga));
	printf("Vpisi naslov: ");
	scanf("%s",q->naziv);
	printf("Vpisi vrednost: ");
	scanf("%d",&q->kolicina);
	q->next = NULL;
	if (h == NULL)
	{
		//printf("glava null");
		return q;
	}
	r = h;
	while(r->next != NULL )
	{
		r = r->next;
	}
	r->next = q;
	return h;
}
 
void izpisiSeznam(struct zaloga *p)
{
 
	printf("IZPISI SEZNAM\n");
	while( p!=NULL )
	{
		printf("%s: \t %d gr\n", p->naziv, p->kolicina);
		p = p->next;
	}
}
Super bi blo, če bi se še velikost stringa naziv določala dinamično, sam mi nikakor ni ratal še tega skp spravt. --kaalen 20:39, 14 sep 2005 (CEST)
Osebna orodja
Imenski prostori
Različice
Dejanja
navigacija

Tiskanje/izvoz
orodja