Лабораторная работа циклы. Поволжский государственный университет телекоммуникаций и информатики
Скачать 3.57 Mb.
|
Поволжский государственный университет телекоммуникаций и информатики Акчурин Э.А. Ильин А.М. Программирование на языке C# ЛР в ИСР Visual C# 2010 Express или SharpDevelop Для студентов направления «Информатика и вычислительная техника» Самара 2011 2 Факультет информационных систем и технологий Кафедра «Информатика и вычислительная техника» Автор - д.т.н., профессор Акчурин Э.А. Другие материалы по дисциплине Вы найдете на сайте www.ivt.psuti.ru 3 Список литературы Троелсен Э. Язык программирования С# 2008 и платформа .NET 3.5, 4-е 1. изд. : Пер. с англ. - М. : "Вильямс", 2010. 1344 с. Нэш Т. C# 2010. Ускоренный курс для профессионалов. Пер. с англ. - М: 2. “Вильямс»,.2010, 592с. Макки А. Введение в .NET 4.0 и Visual Studio 2010 для профессионалов. 3. Пер. с англ. - М.: "Вильямс", 2010. 412с. Нейгел К. и др. С# 2008 и платформа .NET 3.5 для профессионалов. / Пер. 4. с англ. - М.: "Вильямс", 2009. 1392с. Рихтер Дж. CLR via C#. Программирование на платформе Microsoft .NET 5. Framework 2.0 на языке С#. Пер. с англ. - М.: «Русская Редакция» ; СПб. : Питер , 2007. 656 стр. Lidin S. Expert .NET 2.0 IL Assembler. Apress; 2006, 530с. 6. Макаров А. и др. CIL и системное программирование в Microsoft.NET: – М. 7. : Интернет-УИТ, 2006. 328 с.. Климов Л. С#. Советы программистам. - СПб.: БХВ-Петербург, 2008. 544 с: 8. ил. + CD-ROM. Введение Лабораторный цикл содержит работы по изучению программирования на языке C# в ИСР Visual C# 2010 Express Edition. Эта ИСР предназначена для разра- ботки консольных приложений, приложений для ОС с графическим интерфей- сов, DLL и др. Цикл может использоваться в лабораторном практикуме по дисциплинам: "Программирование на языках высокого уровня" (специальность 230105), "Языки программирования высокого уровня" (специальность 230201), "Информатика и программирование" (специальность 080801), "Высокоуровневые методы информатики и программирования" (специаль- ность 080801). «Программирование на языке C#». Содержание отчета Название работы. Цель работы. Задание в соответствии с вариантом. Блок-схема алгоритма в соответствии с номером варианта. Листинги программы. Результаты выполнения программы на ПК. 4 Выбор варианта задания Номер варианта задания = 1 + последняя цифра номера зачетной книжки. В некотрых работах варианты выбираются по оговоренному правилу. Сохранение кодов ИСР для каждого проекта создает несколько файлов. Чтобы файлы разных проектов не перепутывались, следует для каждого проекта создавать свою папку с именем, отображающим смысл (наример, WFormApplHello). Чтобы файлы разных студентов не перепутывались друг с другом, каждому студенту следует создавать для своих файлов индивидуальные папки. Реко- мендуется такая иерархия вложенных друг в друга папок: Диск пользователя (устанавливается администратором) Папка Users (пользователи) Папка группы (например, PO_31) Папка студента (например, Ivanov) Папка проекта (например, Hello_Appl) Внутри нее файлы проекта . В дисплейных классах в папке проекта на каждом занятии следует сохранять файлы проекта (одно задание лабораторной работы – один проект, одна пап- ка). Рекомендуется при выполнении работы периодически сохранять незавер- шенные проекты в текущем состоянии, чтобы избежать потерь документов при сбоях. Методические указания МУ в электронном виде доступны студентам на сервере (только для чтения). Иерархия папок с документацией следующая: Диск Method Папка преподавателя (например, Akchurin) Папка МУ для дисциплины (например, C#) Файлы методических указаний к отдельным работам. Методические указания выложены и в сети Internet на сервере кафедры ИВТ ПГУТИ с именем www.ivt.psati.ru . Они находятся на Web-странице в папке «Ме- тодические руководства». Внимание. ИСР для каждого нового проекта использует шаблон, в который нужно добавить функциональность. ИСР создает перечень доступных про- странств имен директивами using по умолчанию. Часть из ни не используются. Их можно удалить. Щелчок правой кнопки по коду программы вызывает выпо- дающее меню, в котором нужно выбрать показанное. 5 6 1. ИСР Visual C#. Первые программы Предмет исследования Активизация интегрированной среды разработки (ИСР). Структура главного меню и его пункты. Опции выпадающих меню. Создание простого Windows приложения. Создание простого консольного приложения. Контрольные вопросы Активизация ИСР и выход из среды. 1. Окна ИСР. 2. Назначение и содержание главного окна ИСР. 3. Окно Конструктора формы. 4. Окно Редактора кода. 5. Окно инструментов. 6. Главное меню ИСР. Опции пунктов. 7. Отличия проектов Приложение и Консольное приложение. 8. Использование встроенного подсказчика. 9. Создание Windows приложения. 10. Создание консольного приложения. 11. 1.1. Основы ИСР Активизировать ИСР. Ознакомиться с окнами ИСР. Внимание. В русифицированной версии ИСР разделитель целой и дробной части числа: при работе с консолью – запятая. при наборе в редакторе кода – точка. При старте ИСР выводятся окна ИСР. 7 В главном окне ИСР размещены: Строка заголовка с именем ИСР (Microsoft Visual C# 2010Express). Строка главного меню ИСР. Панели инструментов для быстрого выполнения часто используемых ко- манд В центре могут размещаться основные окна (на вкладках, если их несколько): Начальная страница. Дизайнеры. Редакторы кода. Слева размещается панель инструментов с компонентами. Справа размещаются: Обозреватель решений. Окно классов. Свойства. Внизу размещается окно «Список ошибок». 8 Вид представления каждого окна можно изменить. Для этого вызвать выпада- ющее меню, в котором перечислены возможные решения. Это можно сделать двумя способами - щелчком правой кнопкой мыши по строке заголовка окна или стрелкой в строке заголовка. Меню содержит представления: Плавающая область. Окно автономное, может перемещаться произволь- но. Опция позволяет делать снимок только этого окна. Закрепить. Окно докируется в основное окно и не может перемещаться автономно. Закрепить как вкладку. Окно размещается на вкладке в другом окне. Например, окно классов размещается на вкладке вместе с вкладкой Обо- зревателя решений. Автоматически скрывать. Окно отображается в виде узкой вертикальной полоски заголовка для экономии места. Это действие можно выполнить кнопкой в строке заголовка. Скрыть. Окно скрывается. Окно «Начальная страница» содержит вложенные поля: Создать проект Открыть проект Последние проекты. Последние новости (есть при подключенном Интернете).. Начало работы. Приветствие. Обучение. Обновление. Пункты главного меню ИСР в стартовом режиме: Пункт Назначение Файл Работа с файлами. Правка Редактирование. Вид Выбор, что показывать. Отладка Сервис Использование внешнего инструментария. Окно Перечень окон для выбора фокуса. Справка В редактор кода ИСР заносит шаблон кода. В редакторе лучше отображать номера строк. 9 По умолчанию при первом старте ИСР отображение номеров строк выключено. Чтобы номера отображались нужно выполнить команду Сервис=>Параметры. Отображается окно Параметры. В левом нижнем углу установить флаг «Пока- зать все параметры». В окне нужно выбрать закладку Текстовый редак- тор=>C# и в ней установить флаг Номера строк. 1.2. Console_Hello Создать проект консольного приложения Hello. Оно должно в символьном ре- жиме выводить на экран фразу «Hello, World & Россия от <Фамилия студен- та>». Варианты к заданию. Индивидуальные данные студента. Пример. При создании нового проекта из вкладки Последние проекты или из меню командой Файл=>Создать=>Проект вызывается окно выбора типа про- екта с набором шаблонов и полем имени проекта. По умолчанию имя совпада- ет с типом проекта с добавлением номера по порядку. Лучше задать имя про- екта, отражающее его смысл. Выбираем Консольное приложнение с именем Hello. 10 Вид ИСР изменяется. Отображается множество окон, которые можно реконфи- гурировать, меняя размеры и положение. Вот итог: 11 Вверху слева отображается редактор кода программы в закладке с именем programm.cs. Под ним окно Список ошибок. Окна браузера проекта обновля- ется. Пункты главного меню ИСР в режиме редактора кода: Пункт Назначение Файл Работа с файлами. Правка Редактирование. Вид Выбор, что показывать. Проект Построение Компоновка исполняемого файла. Отладка Отладка Данные Данные Сервис Использование внешнего инструментария. Окно Перечень окон для выбора фокуса. Справка Справка В код программы программист должен добавить функциональность. В шаблон кода, начиная с позиции курсора, нужно ввести инструкции. В консоль выводим строку “Hello, world and Россия от Акчурина ”. Для этого вводим код Console.WriteLine("Hello World and Россия от Акчурина!!"); Console.ReadLine(); // ожидание Enter При наборе кода полезен интерактивный подсказчик, который выводит список выбора. Если вы увидите в нем нужное, то его можно перенести в код двойным щелчком или клавишей Enter. 12 Проект готов, проверим его командой Отладка=>Начать отладку. Проект правилен, сохраняем его командой Файл=>Сохранить все. В диалого- вом окне задаем имя проекта и его располжение. В результате проект сохра- няется в структуре папок: 13 Решение включает: Решение Hello Hello Properties Ссылки bin Debug Hello.exe Hello.pdb Hello.vshost.exe Release obj Решение Проект Свойства Ссылки Двоичные файлы Файлы отладки Управляемый исполняемый файл База данных для JIT компилятора Служебный файл Файлы выпуска Объектные файлы Исполняемые (bin) и объектные (obj) файлы образуются при компиляции (по- строении). Возможны два режима: 14 Команда Построение=>Построить решение. Построение в режиме от- ладки, в компонуемые файлы включаются символы отладки и режим оп- тимизации исключается. Это может увеличить размеры файлов. Файлы размещаются в папках Debug. Команда Построение=>Перестроить решение. Построение отлаженного проекта, когда в компонуемые файлы символы отладки не включаются и компилятор использует режим оптимизации кода (например, исключает не использованные переменные). Это может уменьшить размеры файлов. Файлы размещаются в папках Release. 1.3. Windows Forms Hello Создать проект Windows Forms приложения Hello. Оно должно при нажатии в форме кнопки «Нажми» выводить на экран фразу «Hello, World and Россия <Фамилия студента>». Варианты к заданию. Индивидуальные данные студента. Пример. Создать проект Windows Forms приложения Hello. Оно должно при нажатии в форме кнопки «Нажми меня» выводить на экран фразу «Hello, World and Россия от Акчурина!». Активизировать ИСР. В главном меню выбирается команда File=>New Project. Вызывается окно выбора типа проекта с набором шаблонов. В нем выбираем Приложение WindowsForms. Задаем имя проекта Hello. 15 Вид ИСР меняется. В центре в закладке Form1.cs[Конструктор'>Form1.cs[Конструктор] отображается окно Конструктора формы. Окно Панель элементов заполняется элементами для выбора. Окна Обозреватель решений содержит описание решения. Конструктор формы отображается по автоматически создаваемому коду (при желании его можно посмотреть двойным щелчком по Form1.cs => Program.cs в Обозревателе решений). Редактор кода модуля формы отображается командой Перейти к коду, которая находится в меню, выпадающем при щелчке по форме в кон- структоре правой кнопкой мыши. Редактор отображается в закладке с именем Form1.cs. Большая часть кода в Редакторе ИСР сделала автоматически. Нужно доба- вить функциональность. 16 Окна Конструктора и Редактора можно переключать кнопками в заголовках их закладок. Теперь приступаем к проектированию в Конструкторе. Из окна Панели эле- ментов перетаскиваем в форму объекты button1 – кнопка для запуска обработчика события. Выделяем объект, в окне свойств отображаются свойства кнопки. Свойству Text присваиваем значение - Нажми меня. label1 – метка, поле для отображения сообщения. Свойству Text присваи- ваем значение – Смотри сюда. Для создания обработчика события щелчка по кнопке дважды щелкаем по кнопке в форме. Автоматически отображается окно Редактора, в котором в 17 код добавлен шаблон обработчика события button1_Click, но без функцио- нальности. Курсор устанавливается в место ввода кода, который будет зада- вать функциональность проекта. Чтобы обработчик события срабатывал, нужно в окне свойств кнопки button1 в закладке событий выбрать реакцию на щелчок по кнопке из списка: В шаблон кода, начиная с позиции курсора, нужно ввести инструкции. В приме- ре свойству Text объекта label1 нужно присвоить строку “Hello, world and Рос- сия от меня!!”. Чтобы исключить повторный доступ к кнопке, сделаем ее после вывода текста невидимой. Для этого вводим код label1.Text= "Hello, world и Россия от меня!!"; button1.Visible = false; Листинг программы using System; using System.Windows.Forms; namespace Hello { 18 public partial class Form1 : Form { public Form1() { InitializeComponent(); } private void button1_Click( object sender, EventArgs e) { label1.Text = "Hello, world и Россия от меня!!" ; button1.Visible = false ; } private void Form1_Load( object sender, EventArgs e) { } } } Проект готов, проверим его командой Отладка=>Запуск без отладки. Полу- чим окно приложения. Проект готов, сохраняем его командой Файл=>Сохранить все в папке Hello. В результате проект сохраняется в структуре папок (чтобы увидеть все файлы, нужно активизировать кнопку, показанную на рисунке): 19 Решение включает: Решение Hello Hello Properties Ссылки bin Debug Hello.exe Hello.pdb Hello.vshost.exe Release obj Решение Проект Свойства Ссылки Двоичные файлы Файлы отладки Управляемый исполняемый файл База данных для JIT компилятора Служебный файл Файлы выпуска Объектные файлы Исполняемые (bin) и объектные (obj) файлы образуются при компиляции (по- строении). Возможны два режима: 20 Команда Построение=>Построить решение. Построение в режиме от- ладки, в компонуемые файлы включаются символы отладки и режим оп- тимизации исключается. Это может увеличить размеры файлов. Файлы размещаются в папках Debug. Команда Построение=>Перестроить решение. Построение отлаженного проекта, когда в компонуемые файлы символы отладки не включаются и компилятор использует режим оптимизации кода (например, исключает не использованные переменные). Это может уменьшить размеры файлов. Файлы размещаются в папках Release. 21 2. Численные типы в языке C# Предмет исследований Структура программы на языкеC#. Задание констант, переменных. Типы численных данных и ошибки при преобразованиях типов. Организация простейшего ввода-вывода данных. Программа решения задачи в виде консольного приложения. Контрольные вопросы Алфавит языка C#, операции, идентификаторы. 1. Структура программы. 2. Переменные. Их объявление. 3. Форматы представления чисел (с фиксированной и плавающей точкой). 4. Типы целых чисел без знака: Byte. 5. Типы целых чисел cо знаком: int, Int16, Int32, Int64, sbyte. 6. Типы вещественных чисел (с плавающей точкой): double,Single. 7. Тип чисел decimal. 8. Совместимость типов при присвоениях. 9. Задание. Создать консольную программу взаимных преобразований числен- ных типов данных в соответствии с вариантом. В программе должны быть: Преобразования тип unt d другие целочисленные типы. Взаимные преобразования типа int и типов с плавающей точкой. Преобразование типа louble в типы Single и int. При преобразованиях нужно проверять получаемые значения и размкр в бай- тах (метод sizeof). Данные в консоль выводятся инструкцией Console.WriteLine(), в скобках строка. Перед выводом численных данных они должны быть преобразованы в строку методом Convert.ToString(). Для вывда нескольких данных WriteLine() можно использовать двумя способами: С конкатенацией строк - WriteLine(s1+s2+s3), С форматным выводом - WriteLine(”{0,L1} {1,L2} {3,L3} “,s1,s2,s3). Имеетя одна строка, в которую вставляются форматы вставки подстрок, список имен которых следует за строкой. Формат заключается в фигурные скобки и включает через запятую номер ввода (начиная с нуля) и число пробелов L до вводимой подстроки. В коде прогаммы значения L нужно подобрать, чтобы получит красивую картинку в консоли. 22 Варианты к заданию № Значение вещественного числа Значение целого числа 1. 123.45 150 2. 23.456 160 3. 34.567 170 4. 456.78 180 5. 567.89 190 6. 67.890 200 7. 78.901 210 8. 890.12 220 9. 91.012 230 10. 109.876 240 |