Formularz danych

0

Dzień dobry, mam problem z dodawaniem kilku zmiennych.
Otóż po odpaleniu programu i wybraniu opcji dodawania, pola nie są wyświetlane po kolei, tylko od razu przechodzi do 3 pola. Ilustruje to poniższe zdjęcie
title

Kod źródłowy:

public class AVL_tree
	{
		public void Add() //funkcja wyswietlajaca formularz do danych
		{
			students tmp = new students();
		    Console.Write("Podaj numer indeksu\n");
		    tmp.id = Console.Read();
		    Console.Write("Podaj imie\n");
			tmp.first_name = (char)Console.Read();
		    Console.Write("Podaj nazwisko\n");
		    tmp.last_name = (char)Console.Read();
		    Console.Write("Podaj kierunek studiow\n");
		    tmp.subject = (char)Console.Read();
		    Console.Write("Podaj wydzial\n");
		    tmp.dept = (char)Console.Read();
		    Console.Write("\n");
		    Console.Write("{0}", tmp.id);
		
		    //root=add_totree(root, tmp);
		}
	}

Chciałbym móc dodawać wszystkie dane jedno po drugim.

3

Używaj Console.ReadLine. Bardziej adekwatne do Twojej potrzeby.

Console.Read odczytuje jeden(!) znak z bufora klawiatury. To co podejrzewam, że tu się dzieje to to, że gdy wpiszesz 1<enter> w buforze masz 1\r\n. Pierwszy Read (wybór opcji) wczyta 1. Następny wczyta \r (indeks), a następny \n (imię) więc program czeka na podanie nazwiska, bo wyczerpał wszystkie znaki z bufora.

1 użytkowników online, w tym zalogowanych: 0, gości: 1