Опубликован: 01.11.2011 | Доступ: свободный | Студентов: 1425 / 63 | Оценка: 3.84 / 3.44 | Длительность: 15:38:00
Специальности: Программист
Практическая работа 2:

Основные структуры данных C#

Аннотация: В ходе выполнения данной работы учащиеся поработают с одномерными и многомерными массивами (создание, сортировка, поиск), а также со структурами и коллекциями, попрактикуются в разработке интегрированных запросов.
Ключевые слова: приложение, запрос

Дополнительные материалы к занятию можно скачать здесь.

Упражнение 6.1. Нахождение суммы массива

Создаем новое консольное приложение C#. Называем проект practice_2_1.

Наберите в окне кода следующую программу:

using System;
class Example
{
    static void Main()
    {
        int n = 3;
        int[] a = new int[n];
        string str;
        int i;
        a[0] = 1;
        a[1] = -8;
        a[2] = 14;

        int sum = 0;

        for (i = 0; i < n; i++)
        {
            sum += a[i];
        }
        str = "Сумма массива равна " + sum;
        Console.WriteLine(str);
        Console.WriteLine("Нажмите любую кнопку!");
        Console.ReadKey();
    }
}
    

Получаем следующий результат:


Упражнение 6.2. Отображение символьного массива

Создаем новое консольное приложение C#. Называем проект practice_2_2.

Наберите в окне кода следующую программу:

using System;
class Example
{
    static void Main()
    {
        int n = 5;
        string[] a = new string[n];
        string str;
        int i;
        a[0] = "Миссисипи";
        a[1] = "Нил";
        a[2] = "Амазонка";
        a[3] = "Енисей";
        a[4] = "Белая";

        str = "";

        for (i = 0; i < n; i++)
        {
            str += a[i] + "\n";
        }

        Console.WriteLine(str);
        Console.WriteLine("Нажмите любую кнопку!");
        Console.ReadKey();
    }
}
    

Получаем следующий результат:


Упражнение 6.3. Создание динамического массива

Создаем новое консольное приложение C#. Называем проект practice_2_3.

Наберите в окне кода следующую программу:

using System;
class Example
{
    static void Main()
    {
        double[] a = new double[] { -8, 13, 26, 14, 17, 21, -34, 28 };
        int n = a.Length;
        string str;
        int i;
        double sum = 0;
        for (i = 0; i < n; i++)
        {
            Console.WriteLine(a[i]);
            sum += a[i];
        }
        double avg;
        avg = sum / n;
        str = "Сумма массива равна " + sum + "\nСреднее арифметическое массива равно  " + avg;
        Console.WriteLine(str);
        Console.WriteLine("Нажмите любую кнопку!");
        Console.ReadKey();
    }
}
    

Получаем следующий результат:


Упражнение 6.4. Многомерные массива (Герберт Шилдт)

Создаем новое консольное приложение C#. Называем проект practice_2_4.

Наберите в окне кода следующую программу:

using System;
class Example
{
    static void Main()
    {
        int t, i;
        int[,] table = new int[3, 4];
        for (t = 0; t < 3; ++t)
        {
            for (i = 0; i < 4; ++i)
            {
                table[t, i] = (t * 4) + i + 1;
                Console.WriteLine(table[t, i] + " ");
            }
            Console.WriteLine();
        }
        Console.WriteLine("Нажмите любую кнопку!");
        Console.ReadKey();
    }
}
    

Получаем следующий результат:


Упражнение 6.5. Сортировка целочисленного массива. Бинарный поиск элементов

Создаем новое консольное приложение C#. Называем проект practice_2_5.

Наберите в окне кода следующую программу:

using System;

class arraySort
{

    static void print(int[] alpha)
    {
        foreach (int i in alpha)
            Console.WriteLine(i + " ");
        Console.WriteLine();
    }

    static void Main()
    {

        int[] alpha = { -4, 8, 28, -6, -98, -47, 12 };
        //Отобразить исходный массив

        Console.WriteLine("Исходный массив ...");
        print(alpha);

        //Найти значение 8
        int pattern = 8;
        int indx = Array.BinarySearch(alpha, pattern);
        Console.WriteLine("Индекс элемента массива со значением 8: " + indx);

        //Сортируем массив
        Array.Sort(alpha);
        Console.WriteLine("Сортировка по возрастанию ...");
        //Отображаем массив после сортировки
        print(alpha);

        //Сортируем массив по убыванию
        Array.Reverse(alpha);
        //Отображаем массив после сортировки по убыванию
        Console.WriteLine("Сортировка по убыванию ...");
        print(alpha);
        Console.WriteLine("Нажмите любую кнопку!");
        Console.ReadKey();
    }
}
    

Получаем следующий результат: