Quantcast
Channel: Forum Pasja Informatyki - Najnowsze pytania
Viewing all articles
Browse latest Browse all 65225

Dodawanie znaku na stos i stringa z spacjami

$
0
0

Mam problem z dodaniem stringa ze spacją na stos. Dokładniej to z jego wczytaniem bo wczytuje mi znaki do pierwszej spacji :| Jak wprowadzam znak i daje enter program automatycznie pomija kolejne imię i nazwisko. Wiecie jak najprościej to prawidłowo dodać?

 

#include <stdio.h>
#include <stdlib.h>
#include <string.h>

struct stacknode {
    char nameandsurname[30];
    int age;
    char znak;
    struct stacknode *next;
};

struct stacknode *push (struct stacknode *top, int data, char nameandsurname[], char znak)
{
    struct stacknode *newnode = (struct stacknode*)malloc(sizeof(struct stacknode));
    if (newnode)
    {
        strcpy(newnode->nameandsurname, nameandsurname);
        newnode->znak=znak;
        newnode->age=data;
        newnode->next=top;
        top=newnode;
    }
    return top;
};

void print (struct stacknode *top)
{
    while (top)
    {
        printf("Imie i nazwisko: %s\nWiek: %d\nZnak: %c\n\n", top->nameandsurname, top->age, top->znak);
        top=top->next;
    }
}

int main()
{
    struct stacknode *top = NULL;
    int i, age;
    char znak;
    char nameandsurname [30];

    for (i=0; i<5; i++)
    {
        printf("Podaj imie i nazwisko: ");
        scanf("%s", nameandsurname);
        printf("Podaj wiek: ");
        scanf("%d", &age);
        printf("Podaj jakis znak: ");
        scanf("%c ", &znak);
        top=push(top, age, nameandsurname, znak);
    }
    return 0;
}

 


Viewing all articles
Browse latest Browse all 65225

Trending Articles