Главная » Просмотр файлов » Г. Шилдт - С# 3.0 Полное руководство. 2010

Г. Шилдт - С# 3.0 Полное руководство. 2010 (1160798), страница 37

Файл №1160798 Г. Шилдт - С# 3.0 Полное руководство. 2010 (Г. Шилдт - С# 3.0 Полное руководство. 2010) 37 страницаГ. Шилдт - С# 3.0 Полное руководство. 2010 (1160798) страница 372019-09-19СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 37)

В качестве примера рассмотрим следующую программу: // Присваивание ссылок на массивы. сягпЯ Зуякеяо с1аяя аяя1чпанет ( якак1с чо1т[ Ма1п() ( 1пк 1) ьпк[] ппия1 = пеи ьпк[10] гпк[] ппия2 = пеи ьпк[10] Гол(1=0] 1 < 10] 1+а) пиыя1[1] = 5.; Гог(1=0] 1 < 10) 1++) псия2[1] = -1) Сопяо1е.икьке("Содержимое массива пиия1: ")т Гол(1=0] 1 < 10," 1++) Сопяо1е.ит1се(ппыя1[1] + " "); Сопяо1е.иг1кеььпе()т Сопяо1е.игксе("Содержимое массива псыя2: ")т Гог(1=0) 1 < 10] 1++) 184 Часть ). Язык Сз Сопзо1е.иггсе(повз2 [1] + " ") ) Сопзо1е.иг1сеЬ1пе () ~ поиз2 = поиз1; // теперь поиз2 ссылается на поиз1 Сопзо1е.игхсе("Содержимое массива поиз2 последил" т "присваивания: ")б бог(1=04 1 < 10; 1++) Сопзо1е.иг1се(пивз2[].] + " ")) Сопзо1е.иг1сеЬ1пе()4 // далее оперировать массивом поиз1 посредством // переменной ссылки на массив поиз2.

поиз2(3) = 99; Сопзо1е.иггсе("Содержимое массива ппиз1 после изменения1п" + "посредством переменной поиз2: "); бог(1=0; г < 10; 1ьь) Сопзо1е.нггге(пьвз1[1] + " "); Сопзо1е.иг1сеЬ1пе()б ) Выполнение этой программы приводит к следующему результату: Содержимое массива поиз1: 0 1 2 3 4 5 б 7 8 9 Содержимое массива поиз2: 0 -1 -2 -3 -4 -5 -б -7 -8 -9 Содержимое массива пииз2 после присваивания: 0 1 2 3 4 5 б 7 8 9 Содержимое массива ппиз1 после изменения посредством переменной поиз2: 0 1 2 99 4 5 б 7 8 9 Как видите, после присваивания переменной ппиз2 значения переменной пптз1 обе переменные ссылки на массив ссылаются на один и тот же объект.

Применение свойства ьепд~Ь Реализация в С() массивов в виде объектов дает целый ряд преимуществ. Одно из них заключается в том, что с каждым массивоМ связано свойство Ьепдсй, содержащее число элементов, из которых может состоять массив. Следовательно, у каждого массива имеется специальное свойство, позволяющее определить его длину. Ниже приведен пример программы, в которой демонстрируется это свойство. // Использовать свойство Ьепчсв массива. озхпч эузсегы с1азз Ьепчсвпево ( згагхс нохс иагп() ( 1пс[] папа = пеи гпс[10] Сопзо1е.нг1сеЬгпе("длина массива пииз равна " + пииз.ЬепдГП)) Глава 7. Массивы и строки 185 // Использовать свойство Ьепчгь дпя инициализации О массива пцвя.

Сот(апс 1=0« 1 < пцвз.ьепчси« 1++) пцвя(1] = 1. * «т О А теперь воспользоваться свойством Ьепдси // дпя вывода содержимого массива пцвя. Сопзо1е.Итаке("Содержимое массива пцвз: "); Еог(1пс 1=0« 1 < пцвз.ьепдги« 1++) Сопзо1е.ыг)се(зовя[1] + " ")« сопяо1е.иг1сеь«пе О « ) При выполнении этой программы получается следующий результат: длина массива пцвя равна 10 Содержимое массива пцвя: 0 1 4 9 16 25 36 49 64 81 Обратите внимание иа то, как в классе ьепдсппево свойство пцвз.ьепдг)« используется в циклах Гог для управления числом повторяющихся шагов цикла. У каждого массива имеется своя длина, поэтому вместо отслеживания размера массива вручную можно использовать информацию о его длине.

Следует, однако, иметь в виду, что зиачеиие свойства ьепосп никак ие отражает число элементов, которые в ием используются иа самом деле. Свойство ьепдг)«содержит лишь число элементов, из которых может состоять массив. Когда запрашивается длина многомерного массива, то возвращается общее число элементов, из которых может состоять массив, как в приведенном ниже примере кода. О Использовать свойство Ьепсси трехмерного массива. цз1пд яуягев« с1зяз ЬепЧГПОевозо ( ягасас тога Маап() ( 1пс[,,] тпппя = пен «.по[10, 5, б]т Сопяо1е.ыг«сеЬЬпе("Длина массива пцвз равна " т пцвя.ьепЧГП)« При выполнении этого кода получается следующий результат: Длина массива пцвя равна 300 Как подтверждает приведенный выше результат, свойство ьепосп содержит число элементов, из которых может состоять массив (в данном случае — 300 ([Охбхб) элементов).

Тем ие менее свойство ьепогп нельзя использовать для определения длины массива в отдельном его измерении. Благодаря иаличию у массивов свойства ьеппс)«операции с массивами во многих алгоритмах становятся более простыми, а значит, и более надежными. В качестве примера свойство ьепдгп используется в приведенной ниже программе с целью поменять местами содержимое элементов массива, скопировав их в обратном порядке в другой массив. 186 Часть ). Язык С() // Поменять местами содержимое элементов массива. оя1пд Буясеи) с1азз аечСору ( зсаскс чоьб Мвтп() ( Ьпс 1,37 1пс(] поия1 = пен 1пс(10)т Ьпк[) пожя2 пен 1пс[10)) ток(1=0) 1 < поиз1.ьепчкпт 1++) помя1[1) = 17 Сопяо1е.искье("Исходное содержимое массива: ")) тот(1=0) 1 < поия2.ЬепЧСП7 1++) Сопзо1е.

Хк1се (пшзз1 [1) + " ") ) Сопзо1е.Икккепьпе () ) // Скопировать элементы массива пния1 в // массив пниз2 в обратном порядке. 11(помя2.Ьепдсь >= пния1.Ьепдкь) // проверить, // достаточно ли длины массива пииз2 кок(1=0, 3=пнмз1.ьепдсп-1/ ь < пниз1.ьепчсп( 1ьь, )†) по1вя2[3) = пнмз1[1)' Сопзо1е.искье("Содержимое массива в обратном порядке: ")7 кок(1=07 1 < ппив2.Ьепдкьт 1ьь) Сопяо1е.иг1те(помя2[1) + " ")7 Сопзо1е.ИкткеЬЬпе()) ) ) Выполнение этой программы дает следующий результат: Исходное содержимое массива: 0 1 2 3 4 5 б 7 8 9 Содержимое массива в обратном порядке: 9 8 7 б 5 4 3 2 1 О В данном примере свойство 1 епдтб помогает выполнить две важные функции. Вопервых, позволяет убедиться в том, что длины целевого массива достаточно для хранения содержимого исходного массива И во-вторых, предоставляет условие для завершения цикла кот, в котором выполияегся копирование исходного массива в обратном порядке.

Конечно, в этом простом примере размеры массивов нетрудно выяснить и без свойства Ьепдсб, ио аналогичный подход может быть применен в целом ряде других, более сложных ситуаций. Применение свойства Х евдо при обращении со ступенчатыми массивами Особый случай представляет применение свойства ьепдкп при обращении со ступенчатыми массивами.

В этом случае с помощью даииого свойства можно получить длину каждого массива, составляющего ступенчатый массив. В качестве примера рассмотрим следующую программу, в которой имитируется работа центрального процессора (ЦП) в сети, состоящей из четырех узлов. Глава 7. Массивы и строки 187 // Продемонстрировать применение свойства Ьепдги // при обращении со ступенчатыми массивами. няапд зуясещ) с1аяя Юаддек( ( ясасас чо1б Иа).п() ( 1пс [] [] песнбгк побея = пен 1пс [4] [] т пегиоги пес)ея[О! = пен Еле[3]; пегиоги посев[1! = пен Еле[7]; пегноги пес)ея[2] = пен Епг[2]т пегногк посев[3! пен Еле[5]; Епг 1, // Сфабриковать данные об использовании ЦП.

Еог(1 О) 1 < пегноги посев.Ьепдгн) Етт) Еог(3=0) 3 < пегногк посев[1).Ьепдги) 3+е) пегноги посев[1][3! = 1 * 3 е 70) Сопяо1е.Игагепапе("Общее количество узлов сети: пегноги пес)ея.Ьепдги + "1п")т еог(1=0; 1 < песногк посев.ьепдс)м 14+) ( Еог (3=04 3 < пегног)к побея [1] . Ьепдгп) 3+а) ( Сопяо1е.Итаке("Использование в узле сети " + 1 " ЦП " + 3 + "т ")) Сопяо1е.игаге(пегноги посев[1][3!. + "В ")т Сопяо1е.нгасеЬЕпе()т ) Сопяо1е.игагеЬЕпе()) ) ) При выполнении этой программы получается следующий результат: Общее количество узлов сети: 4 Использование в узле 0 ЦП 0: 70% Использование в узле 0 ЦП 1: 70% Использование в узле 0 ЦП 2т 70$ Использование в узле 2 ЦП 0: 70$ Использование в узле 2 ЦП 1т 72% Использование в узле 3 ЦП От 70$ Использование в узле 3 ЦП 1: 734 Использование в Использование в Использование в Использование в Использование в Использование в Использование в узле 1 узле 1 узле 1 узле 1 узле 1 узле 1 узле 1 ЦП От 70% ЦП 1: 71$ ЦП 2: 72% ЦП Зт 73$ ЦП 4: 744 ЦП 5т 75$ ЦП б: 7б%, 1ов часть(.

язык сз Использование в узле 3 ЦП 2: 76$ Использование в узле 3 ЦП 3: 79% Использование в узле 3 ЦП 4: 82$ Обратите особое внимание на то, как свойство Ьеппгп используется в ступенчатом массиве де смог)к пес[ее. Напомним, что двумерный ступенчатый массив представляет собой массив массивов. Следовательно, когда используется выражение песногх пок(ез.ьепдгь то в нем определяется число массивов, хранящихся в массиве пе смог)к пок[ез (в данном случае — четыре массива). А для получения длины любого отдельного массива, составляющего ступенчатый массив, служит следующее выражение: песногг пок(ее[0].Ьепчсй В данном случае это длина первого массива.

Характеристики

Тип файла
DJVU-файл
Размер
6,78 Mb
Тип материала
Высшее учебное заведение

Список файлов книги

Г. Шилдт - С# 3.0 Полное руководство
C_sharp_3TCR_code
Apndx.lst
Chap2.lst
Chap3.lst
Chap4.lst
Chap5.lst
Chap6.lst
Chap7.lst
Chap8.lst
Chap9.lst
Chap10.lst
Chap11.lst
Chap12.lst
Chap13.lst
Chap14.lst
Chap15.lst
Chap16.lst
Chap17.lst
Chap18.lst
Chap19.lst
Chap20.lst
Chap21.lst
Chap22.lst
Chap23.lst
Chap24.lst
Chap25.lst
Chap26.lst
Свежие статьи
Популярно сейчас
Зачем заказывать выполнение своего задания, если оно уже было выполнено много много раз? Его можно просто купить или даже скачать бесплатно на СтудИзбе. Найдите нужный учебный материал у нас!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6458
Авторов
на СтудИзбе
305
Средний доход
с одного платного файла
Обучение Подробнее