Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include<stdlib.h>
- #include<stdio.h>
- typedef struct lista{
- int nr;
- struct lista *urm;
- }nod;
- nod *adaugare(nod *prim, int n)
- {
- nod *p,*q;
- p = (nod*)malloc(sizeof(nod));
- p->nr = n;
- p->urm = NULL;
- if (prim == NULL)
- return p;
- else
- {
- q = prim;
- while (q->urm != NULL)
- q = q->urm;
- q->urm = p;
- return prim;
- }
- }
- int main()
- {
- nod *prim,*p;
- int n, *po, i = 0, j=0;
- prim = NULL;
- p = prim;
- scanf("%d", &n);
- while (n > 0)
- {
- prim = adaugare(prim, n % 2);
- n = n / 2;
- }
- p = prim;
- while (p != NULL)
- {
- printf("%d ", p->nr);
- p = p->urm;
- i++;
- }
- printf("\n");
- po = (int*)malloc(i * sizeof(int));
- p = prim;
- while (p != NULL)
- {
- po[j] = p->nr;
- p = p->urm;
- j++;
- }
- for (j = 0; j < i; j++)
- printf("%d ", *(po+j));
- }
Advertisement
Add Comment
Please, Sign In to add comment