#include <stdio.h>
#include <stdlib.h>
typedef struct Baza
{
int liczba;
struct Baza *next;
}el;
typedef struct Baza2
{
int liczba_mod;
struct Baza2 *n;
}el2;
el *head = NULL;
el2 *pocz = NULL;
void dodaj(el*&head,int x)
{
el *tmp = (el *)malloc(sizeof(el));
tmp->liczba = x;
tmp->next=head;
head = tmp;
}
void edytuj(el2**pocz)
{
el *tmp = head;
while( tmp != NULL)
{
if( (tmp->liczba)%3==0 )
{
el2 *wsk = (el2 *)malloc(sizeof(el2));
wsk->liczba_mod = tmp->liczba;
wsk->n = *pocz;
*pocz = wsk;
}
tmp=tmp->next;
}
}
void wypisz()
{
el2 *wsk = pocz;
while( wsk != NULL)
{
printf(" %d ",wsk->liczba_mod);
wsk=wsk->n;
}
}
int main(void) {
int i;
for(i=1;i<=10;i++)
dodaj(head,i);
edytuj(&pocz);
wypisz();
return 0;
}
I2luY2x1ZGUgPHN0ZGlvLmg+CiNpbmNsdWRlIDxzdGRsaWIuaD4KCgp0eXBlZGVmIHN0cnVjdCBCYXphCiB7CiAgICAgaW50IGxpY3piYTsKICAgICBzdHJ1Y3QgQmF6YSAqbmV4dDsKIH1lbDsKCiB0eXBlZGVmIHN0cnVjdCBCYXphMgogewogICAgIGludCBsaWN6YmFfbW9kOwogICAgIHN0cnVjdCBCYXphMiAqbjsKIH1lbDI7CgogZWwgKmhlYWQgPSBOVUxMOwogZWwyICpwb2N6ID0gTlVMTDsKCnZvaWQgZG9kYWooZWwqJmhlYWQsaW50IHgpCiB7CiAgICAgZWwgKnRtcCA9IChlbCAqKW1hbGxvYyhzaXplb2YoZWwpKTsKICAgICB0bXAtPmxpY3piYSA9IHg7CiAgICAgdG1wLT5uZXh0PWhlYWQ7CiAgICAgaGVhZCA9IHRtcDsKIH0KCiB2b2lkIGVkeXR1aihlbDIqKnBvY3opCiB7CiAgICAgZWwgKnRtcCA9IGhlYWQ7CgogICAgIHdoaWxlKCB0bXAgIT0gTlVMTCkKICAgICB7CgogICAgICAgICBpZiggKHRtcC0+bGljemJhKSUzPT0wICkKICAgICAgICAgewogICAgCQkgZWwyICp3c2sgPSAoZWwyICopbWFsbG9jKHNpemVvZihlbDIpKTsKICAgICAgICAgICAgIHdzay0+bGljemJhX21vZCA9IHRtcC0+bGljemJhOwogICAgICAgICAgICAgd3NrLT5uID0gKnBvY3o7CiAgICAgICAgICAgICAqcG9jeiA9IHdzazsKICAgICAgICAgfQogICAgICAgICB0bXA9dG1wLT5uZXh0OwogICAgIH0KIH0KIHZvaWQgd3lwaXN6KCkKIHsKICAgICBlbDIgKndzayA9IHBvY3o7CiAgICAgd2hpbGUoIHdzayAhPSBOVUxMKQogICAgIHsKICAgICAgICAgcHJpbnRmKCIgJWQgIix3c2stPmxpY3piYV9tb2QpOwogICAgICAgICB3c2s9d3NrLT5uOwogICAgIH0KIH0KIAogaW50IG1haW4odm9pZCkgewogICAgIGludCBpOwogICAgIGZvcihpPTE7aTw9MTA7aSsrKQogICAgICAgICBkb2RhaihoZWFkLGkpOwoKICAgICBlZHl0dWooJnBvY3opOwogICAgIHd5cGlzeigpOwogICAgIHJldHVybiAwOwogfQ==