Вторник
19.09.2017, 18:13
Сайт, посвящённый C#
Приветствую Вас Гость | RSS
Главная Каталог статей Регистрация Вход
Меню сайта

Категории раздела
Статьи по C# [10]

Главная » Статьи » Статьи по C#

Ввод данных в консоль C# (Csharp)
C# - научиться или умереть
1.3 Ввод данных в консоль C# (Csharp)
После того долгого знакомства с переменными, этот урок может показаться быстрым и легким. Ну, в общем, ReadLine() - это еще один способ присвоить переменной значение. Смотрим:
Console.Write("Введите имя и нажмите Enter: ");
string name = Console.ReadLine();
Console.WriteLine("Привет, " + name + "!")
Фух! Миссия завершена! За три строки кода, мы запросили ввод, сохранили его и использовали. Вовсе не обязательно писать метод Write() перед ReadLine(), просто обычно надо каким-либо образом сказать пользователю, какой тип ввода мы ожидаем. Это просто вежливо.
Наверное, единственное затруднение - это то, что ReadLine() всегда возвращает данные строкового типа. Чтобы получить числа, надо опять же использовать методы класса Convert:
Console.Write("Введите свой возраст и нажмите Enter: ");
int age = Convert.ToInt32( Console.ReadLine() );
Console.Write("Введите свой рост и нажмите Enter (можно использовать дроби):");
double height = Convert.ToDouble( Console.ReadLine() );
Console.WriteLine("Значицца, вам {0} лет, а рост {1}.", age, height);
Надо запомнить, что без подобающего управления ошибками, программа будет выдавать ошибку каждый раз, когда мы будем пытаться конвертировать "пингвин"-а в число.
А что же с ReadLine() , который мы до сих пор ставили в конце каждой программы? Мы просто использовали преимущества системы ввода С#. Когда мы использовали ReadLine() в конце программы, мы заставляли С# терпеливо ждать, пока пользователь завершит ввод и нажмет ENTER. Когда ENTER нажат, программа собирает всю информацию, что ввел пользователь и ... ничего с ней не делает, потому что мы не присваиваем значение никакой переменной. Поэтому С# остается только пожать плечами, забыть все, что ввел пользователь и продолжить работу. Ну разве не грех не использовать такую возможность?

В любом случае, ввод пользователя один из самых коварных аспектов программирования. Невозможно перечислить количество случаев, когда неожиданный ввод может привести программу к внезапному краху! Позже мы узнаем, как же все-таки управляться с глупостью некоторых пользователей, а пока надо запомнить: любая часть кода, которая зависит от внешних данных, будь то ввод с консоли, текстовый файл, или сетевой накопитель - это потенциальная опасность краха и с ней надо обращаться с должной осторожностью. Ну, что ж, самое время для примера кода:
using System;

namespace C_ConsoleInput
{
class Class1
{
[STAThread]
static void Main(string[] args)
{
// Запросить имя пользователя
Console.Write("Введите имя и нажмите Enter: ");

// Прочесть данные; присвоить значение переменной "name"
string name = Console.ReadLine();

// "name" можно использовать как обычную переменную
Console.WriteLine("Hello, " + name + "!");

// Сделаем это снова, только теперь запросим тип пиццы
Console.Write("Введите название пиццы и нажмите Enter: ");
string pizza = Console.ReadLine();

// А теперь используем обе переменные
Console.WriteLine("Привет, {0}! Одна {1} пицца на подходе!", name, pizza);

// Используем ReadLine() с численными типами
Console.Write("Введите свой возраст и нажмите Enter: ");
int age = Convert.ToInt32( Console.ReadLine() );
Console.Write("Введите свой рост и нажмите Enter (можно использовать дроби): ");
double height = Convert.ToDouble( Console.ReadLine() );
Console.WriteLine("Значицца, вам {0} лет, а рост {1}.", age, height);

// А теперь попросим пользователя нажать "Enter" для выхода из программы
Console.Write("Программа завершена. Нажмите \"Enter\" для выхода...");
Console.ReadLine();
}
}
}


Источник: http://devoid.com.ua/csharp/csharp-nauchitsa-ili-umeret/vvod-dannih-v-console-c-sharp.html
Категория: Статьи по C# | Добавил: Lefthandboy (21.09.2009)
Просмотров: 13492 | Комментарии: 3 | Рейтинг: 0.0/0
Всего комментариев: 1
1  
Спасибо за сайт, статья очень помогла:)0))))))))))))))0)00)

Имя *:
Email *:
Код *:
Форма входа

Поиск

Друзья сайта
  • Сайт, посвещённый С++
  • Lefthandboy's blog
  • Копилка знаний
  • Разработка игр
  • Бесплатная раскрутка сайта
  • База лохотронщиков

  • Статистика

    Онлайн всего: 1
    Гостей: 1
    Пользователей: 0


    Copyright CSharp-Exe © 2017
    Сделать бесплатный сайт с uCoz