Главная страница
Навигация по странице:

  • File | New Project (Файл | Создать проект)

  • Build | Compile – F6 (Построение | Построить решение)

  • Console Application (Консольное приложе- ние).

  • Построение | Построить решение

  • Debug | Start Without Debugging (Отладка | Начать отладку) F5 или Запуск без от- ладки Ctrl+F5

  • File | Save All (Файл | Сохранить все) . Ввод данных с Консоли

  • Вывод данных на Консоль

  • Написать отчет по лабораторной работе. Образец отчета см. Приложение.1

  • Лабораторная работа №1. Лабораторная работа 1 Создание простого консольного приложения в ms visual C# Структура проекта и шаблон консольного приложения


    Скачать 0.58 Mb.
    НазваниеЛабораторная работа 1 Создание простого консольного приложения в ms visual C# Структура проекта и шаблон консольного приложения
    Дата19.10.2022
    Размер0.58 Mb.
    Формат файлаpdf
    Имя файлаЛабораторная работа №1.pdf
    ТипЛабораторная работа
    #741923

    Лабораторная работа № 1
    Создание простого консольного приложения
    в MS Visual C#
    1.1. Структура проекта и шаблон консольного приложения
    Приложения строятся средой Visual C# так же как и Visual C++ в виде специальных конструкций – проектов, которые выглядят как сово- купность нескольких файлов. Причем, в проекте консольного приложения файлов меньше, чем в проектах остальных приложений. Несколько проек- тов можно объединить в решение (solution).
    Консольные приложения – это приложения без графического интер- фейса, которые взаимодействуют с пользователем через специальную ко- мандную строку. Опытные программисты предпочитают не тратить усилия на интерфейсные ухищрения и работают в основном с консольными при- ложениями. Такие приложения создаются с помощью специального шаб- лона, доступного из диалогового окна, открывающегося после выполнения команды File | New Project (Файл | Создать проект). Шаблон консольного приложения добавляет в создаваемое приложение необходимые элементы, присущие этому приложению, после чего разработчик вставляет в этот шаблон свои операторы на языке C/C++/C#. Затем приложение компили- руется в автономный исполнительный файл и может быть запущено из ко- мандной строки с заданием входной информации. Общение с пользовате- лем происходит через специальное, так называемое консольное окно, от- крывающееся средой после запуска приложения.
    Шаблон в папке с именем проекта создает еще одну папку с именем проекта и два файла:
    Имя.sln – файл, используемый для построения специального заголо- вочного файла при компиляции приложения;
    Имя.suo – файл с информацией для операционной системы.

    В дополнительной папке с именем проекта шаблон создает несколь- ко вспомогательных папок и файлы:
    Program.cs – главный исходный файл c текстом программы на С#;
    Имя.csproj – файл проекта.
    После компиляции, сборки и выполнения проекта шаблон создает в папке properties файл сборки проекта AssemblyInfo.cs. В папках obj | debug и bin | debug шаблон создает исполняемый файл Имя.exe.
    Компиляция и сборка проекта осуществляется через команду Build |
    Compile – F6 (Построение | Построить решение). Запуск на выполнение осуществляется с помощью команды Debbug – F5 (Отладка | Начать
    отладку).
    Все программы на языке C# создаются внутри классов. Основная структура класса имеет следующий вид: сlass Имя_класса { . . . }
    Класс Console используется для чтения и записи символов из консо- ли по отдельности или целой строкой. Вывод может форматироваться не- сколькими способами. Некоторые полезные методы этого класса:
    Console.ReadLine – считывает строку символов, введенную с клавиа- туры (или иного устройства ввода) после ввода .
    Console.WriteLine – выводит текст на экран (или иное устройство вывода) начиная с новой строки.
    Console.Write – выводит ряд символов без перехода на новую строку.
    1.1.1. В директории номер_группы_год cоздать поддиректорию
    (фамилия студента) а в ней папку lab1.
    1.1.2. Загрузить среду MS Visual Studio.
    1.1.3. Выполнить команды главного меню: File | New | Project (Файл
    | Создать | Проект…). В открывшемся диалоговом окне в левой части
    (Типы проектов или шаблонов) выбрать используемый язык (Visual C#), в правой части окна выбрать Console Application (Консольное приложе-

    ние). Выбрать место размещения будущего приложения (свою персональ- ную папку и нужную поддиректорию) в строке Location (Расположение) и ввести имя будущего приложения в строке Name (Имя), например, lab1_1.
    Автоматически заполнится строка Solution Name (Имя решения). Подтвер- дить выбор. При этом формируется заготовка консольного приложения. За- готовка включает список неких предписаний using …, выделение области имен проекта namespace Имя {…} и объявление класса class Program {}, внутри которого располагается главная программа Main () – метод, с кото- рого начинается работа любого приложения.
    Директива using System разрешает использовать имена стандартных классов из пространства имен System непосредственно (без указания имени пространства). Ключевое слово namespace создает для проекта собственное пространство имен, названное по умолчанию ConsoleApplicationl. Это сде- лано для того, чтобы можно было давать программным объектам имена, не заботясь о том, что они могут совпасть с именами в других пространствах имен. Основное назначение пространств имен – предупредить возможные конфликты между именами в разных сборках. Самое важное пространство имен в С# – это System. В нем определены классы, которые обеспечивают самые важные функции С#.
    С# – объектно-ориентированный язык, поэтому написанная на нем программа представляет собой совокупность взаимодействующих между собой классов. В нашей заготовке программы всего один класс, которому по умолчанию задано имя Classl.
    1.1.4. Оставить в тексте программы только первое предписание Using
    System и убрать аргумент из круглых скобок главной программы.
    В теле программы записать две строки:
    Console.WriteLine ("Изучаем Си #");
    Console.ReadLine ()

    Это приложение должно вывести на экран текст сообщения и задер- жать изображение на экране до ввода произвольного символа с клавиатуры.
    Обратить внимание, что при вводе оператора открывается окно кон- текстного меню, содержащее любые возможные в данный момент вариан- ты написания. Нужный вариант выбирается двойным щелчком левой кнопки мыши.
    Полное выражение System.Console.WriteLine () означает вызов функ- ции печати строки типа Console в пространстве имен System. Однако с точки зрения среды выполнения .NET, System.Console – это единая сущ- ность, к которой можно обратиться разными способами. Слово using нуж- но только для упрощения обращения к типам в конкретном пространстве имен. Обратите также внимание, что синтаксические ошибки высвечива- ются в окне ошибок до компиляции.
    1.1.5. Запустить компилятор нажатием комбинации клавиш , либо выполнением команды главного меню Построение | Построить
    решение.
    В окне списка ошибок высвечиваются сообщения об имеющихся ошибках. Если дважды щелкнуть на строке с описанием ошибки, подсве- тится строка, в которой обнаружена ошибка и там же окажется курсор. В данном случае компилятор не находит разделителя операторов «;». В слу- чае безукоризненной работы в этом окне должны быть сообщения «Оши- бок: 0», «Предупреждений: 0».
    1.1.6. Запустить программу на выполнение командой Debug | Start
    Without Debugging (Отладка | Начать отладку) F5 или Запуск без от-
    ладки Ctrl+F5). Найти в папке приложения файл с расширением lab1_1.exe и выполнить его.
    1.1.7. Сохранить новый проект, выполнив команду File | Save All
    (Файл | Сохранить все).

    Ввод данных с Консоли, необходимых для работы про- граммы:
    Console.ReadLine();
    Одновременно с вводом данные присваиваются переменной: n = Console.ReadLine();
    Все данные, получаемые с Консоли строкового типа string n = Console.ReadLine();
    Вывод данных на Консоль:
    Вывод одной переменной:
    Console.WriteLine(n);
    Вывод текстовой строки:
    Console.WriteLine(“Текст”);
    Вывод текстовой строки и переменной n:
    Console.WriteLine(“Переменная n=”+n);
    Задание 1: Введите код программы, комментарии вводить не обязательно, запустите программу на выполнение, проверьте различные варианты выполнения программы. Модифицируй- те программу, изменяя переменные и строки вывода. using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication1
    {
    ///
    /// Проект - Приветствие
    ///

    class Program
    {
    ///
    /// Точка входа.
    ///Запрашивает имя пользователя и выдает приветствие
    ///

    /// static void Main(string[] args)
    {
    /* Так записываются
    * многострочные
    * комментарии*/
    /// Вывод сообщения на Консоль
    Console.Write("Введите ваше имя ");
    /// Переменной name типа string присваивается значение, счи- танное с Консоли string name = Console.ReadLine();
    ///Проверяется условие, если name = пустое множество, то выводится на Консоль "Здравствуй, Мир" if (name == "")
    Console.WriteLine("Здравствуй, мир");
    ///В случае если в переменную name введено Имя, то выво- дится "Здравствуй, + Имя" else
    Console.WriteLine("Здравствуй,
    "
    + name);
    ///Ожидание дополнительного ввода
    Console.ReadLine();
    }
    }
    }
    Если мы вводим с Консоли число, то необходима конверта- ция string n = Console.ReadLine();
    конвертируем введенное n в целое 32-битное число int n1=Convert.ToInt32(n); конвертируем введенное n в действительное число типа dou- ble double n2 = Convert.ToDouble(n);
    Задание 2: Рассмотрим простую задачу, записать трехзнач- ное число в обратном порядке.
    Например: число 345, записать как 543
    Создайте новый проект, наберите код программы (коммента- рии не обязательно), запустите на выполнение, используя различные исходные данные. using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace ConsoleApplication1
    { class Program
    {
    ///
    /// Пример простейшей программы с решением "напрямую", без классов
    /// Ввести число до 1000 и вывести число с цифрами наобо- рот: 345 -> 543
    ///

    /// static void Main(string[] args)
    {
    Console.Write("Введите натуральное чис- ло до 1000 "); string s = Console.ReadLine();
    int n = Convert.ToInt32(s);
    /*с1 присваиваем значение последней цифры исходного чис- ла n, вычисляя остаток от деления на 10*/ int c1 = n % 10;
    /*с3 присваиваем значение первой цифры исходного числа n, выполняя целочисленное деление на 100 */ int c3 = n / 100;
    /*с2 сначала делим n на 10, а затем вычисляем остаток от де- ления с2 на 10, получая среднюю цифру числа*/ int c2 = n / 10; c2 = c2 % 10;
    // получаем новое число n n = c1 * 100 + c2 * 10 + c3;
    Console.WriteLine("Перевернутое число
    {0}", n);
    Console.Read();
    }
    }
    }
    Другой вариант вывода на консоль.
    Console.WriteLine("Перевернутое число {0}", n);
    В фигурных скобках перечисляются переменные, которые нужно вывести, по очереди, начиная с 0, после запитой пере- числяются все нужные переменные
    Console.WriteLine("Перевернутое число
    {0},{1},{2},{3}", n, c1, c2, c3);

    Внутри текстового блока переменные можно выстраивать в нужном порядке
    Console.WriteLine ("Перевернутое число {0}, цифры числа {1},{2},{3}, из них получается число {0}", n, c1, c2, c3);
    Данный вывод можно было осуществить и так:
    Console.WriteLine("Перевернутое число "+ n
    +" , цифры числа "+ c1 +", "+ c2 + ", "+ c3
    + ", из них получается число "+ n);
    Задание 3. Самостоятельная работа - написать программу, которая спрашивает у пользователя Имя и сколько ему лет и выводит на экран сообщение «Здравствуй, Петя. Тебе 100 лет!))» Вместо Петя и 100 соответствующие введенные дан- ные. Предусмотреть вариант, когда пользователь не вводит имя и возраст.
    Задание 4. Самостоятельная работа - написать программу, которая по введеному значению, выводит само значение, значение увеличенное на 1, значение увеличенное на 2, и сумму всех трех значений.
    Написать отчет по лабораторной работе. Образец отчета
    см. Приложение.1


    написать администратору сайта