Обмен технологиями

Основы языка C в Linux, день 6

2024-07-12

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina

Оглавление

цель обучения:

Содержание обучения:

1. Массив

1.1 Концепция

1.2 Одномерный массив

1.2.1 Концепция

1.2.2 Формат

1.2.3 Инициализация

1.3 Обычные операции с элементами массива

1.3.1 Ввод и вывод

1.3.2 Сумма и среднее значение

1.3.3 Найдите максимальное значение

1.3.4 Поиск

Классные упражнения:

Внеклассное домашнее задание:


цель обучения:

Например:

  • Освойте основы C за одну неделю

Содержание обучения:

1. Массив

1.1 Концепция

Массивы используются для хранения набораТот же тип данныхданных.

Массив — это сконструированный тип.

Каждые данные одного и того же типа данных в массиве называются элементом массива, который также называется членом массива.

Определение массива выделит блок в памятинепрерывное пространствоДля хранения данных независимо от того, сколько измерений имеет массив, он является непрерывным.

1.2 Одномерный массив

1.2.1 Концепция

Так называемый одномерный массив представляет собой массив только с одним индексом.

1.2.2 Формат

Имя массива типа данных [нижний индекс];

Тип данных: это может быть либо базовый тип, либо сконструированный тип (кроме массивов).

Имя массива: это идентификатор, который должен соответствовать соглашению об именовании идентификаторов.

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

Например:

1.2.3 Инициализация

Так называемая инициализация означает, что при подаче заявки на место для переменной, кстати, задаётся начальное значение.

При инициализации заключите значение элемента в фигурные скобки и разделите несколько значений запятыми.

Существует три способа инициализации массива.

1. Инициализируйте все: в зависимости от длины массива инициализируйте значения нескольких элементов.

int arr[5] = {520, 1415, 666, 999, 1234};

аrr[0] аrr[1] аrr[2] аrr[3] аrr[4]

2. Частичная инициализация: количество инициализированных элементов меньше длины массива. В настоящее время по умолчанию используется инициализация из предыдущих элементов, а неинициализированные элементы заполняются 0.

int arr[5] = {520, 1415, 666}; 0 0

аrr[0] аrr[1] аrr[2] аrr[3] аrr[4]

3. Специальная инициализация. При определении и инициализации массива вам не нужно указывать длину массива. Длина массива определяется количеством инициализированных элементов.

int arr[ ] = {520, 1415, 666, 999, 1234};

аrr[0] аrr[1] аrr[2] аrr[3] аrr[4]

Например:

#включать<stdio.h>

int main(int argc, const char *argv[])
{
//Определяем целочисленный массив длиной 5
int arr[5]; //Элементы массива: arr[0]--arr[4]
//Определяем массив символов длиной 10
символ brr[10];
//Определяем массив длиной 100 для хранения десятичных чисел
двойной crr[100];
//Если массив не инициализирован, все значения элементов в нем будут
//случайное значение
printf("arr[0] = %d, brr[0] = %c, crr[0] = %lfn", arr[0], brr[0], crr[0]);

//Определяем массив и инициализируем его
int drr[5] = {1,2,3,7,6} //Все инициализировано;
int err[5] = {520, 1314, 666} //Частичная инициализация;
int frr[] = {1,3,5,7,9} //Специальная инициализация;
printf("sizeof(frr) = %ldn", sizeof(frr)); //20
printf("len of frr = %ldn", sizeof(frr)/sizeof(frr[0]));

вернуть 0;
}

1.3 Обычные операции с элементами массива

1.3.1 Ввод и вывод

Так называемый ввод и вывод массива на самом деле означает повторный ввод и вывод любого элемента.Мы используем циклы для решения повторяющихся действий.

Примечание. Язык C не позволяет вводить и выводить целые массивы, кроме массивов символов. Вы можете находить только элементы массива и работать с отдельными элементами.

1.3.2 Сумма и среднее значение

Так называемое значение суммирования предназначено для накопления всех произвольных значений. Необходимо определить переменную для хранения суммы, но требуется, чтобы она была очищена перед использованием.

Так называемое среднее значение состоит в том, чтобы разделить сумму данных на общее число.Среднее значение не нужно вычислять в цикле

1.3.3 Найдите максимальное значение

Процедура: установите для первого элемента массива текущее максимальное значение, а затем сравните текущее максимальное значение с любым элементом массива. Если во время сравнения условие не выполняется, обновляйте максимальное значение до тех пор, пока все не будут после сравнения данных с. максимальное значение, получается максимальное значение.

1.3.4 Поиск

Поиск по существованию: когда искомые данные появляются в массиве, поиск немедленно завершается.

Статистический поиск: просмотрите все элементы массива и подсчитайте количество найденных данных.


Классные упражнения:

#включать<stdio.h>
#define MAX 10 //Макрос определяет константу

int main(int argc, const char *argv[])
{
//Определяем массив для хранения оценок всех членов класса
целая оценка[МАКС] = {0};

//Полный ввод оценок участников
для (целое i=0; i
    {
//Находим любой элемент: счет[i]
printf("Пожалуйста, введите оценку %d-го ученика:", i+1);
scanf("%d", &score[i]);
    }

//Программа выполняется до этого момента, что означает, что все элементы массива были успешно присвоены.
//Вывод элементов массива
printf("Элементы массива: ");
для (целое i=0; i
    {
printf("%dt", оценка[i]);
    }
putchar(10); //Выводим возврат каретки и перевод строки

    //Суммическое значение, среднее значение
int sum = 0 // Записываем сумму
double avg = 0 //Записываем среднее значение
for(int я=0; я
    {
sum += счет[i]; //Накапливаем любые данные
    }
//Программа выполняется до этого момента, что указывает на то, что сумма рассчитана.
средн. = 1,0*сумма/МАКС;
printf("Сумма: %d, среднее: %.2lfn", sum, avg);

    //Находим максимальное значение (в качестве примера возьмем максимальное значение)
int max = 0 //Сохраняем максимальное значение массива
int maxi = 0 //Записываем индекс, в котором находится максимальное значение

//Сначала обрабатываем первое значение в массиве как максимальное значение
макс = оценка[0];
maxi = 0 //Записываем нижний индекс текущего максимального значения
для (целое i=0; i
    {
//Сравниваем текущее максимальное значение с любыми данными
если (макс &lt; оценка[i])
        {
max = Score[i] //Обновляем данные до максимального значения
maxi = i; //Обновляем переменную, записывающую максимальный индекс
        }
    }
//На данный момент программа выполняется, что указывает на то, что максимальное значение и нижний индекс максимального значения рассчитаны.
printf("Максимальное значение текущего массива: %d, в %d-й позиции n массива", max, maxi+1);
    

    //Находить
поиск int = 0;
int i = 0 //переменная цикла, используемая для обхода массива
printf("Пожалуйста, введите искомое значение:");
scanf("%d", &search);
//Начинаем обход массива для реализации поиска по существованию
для (я=0; я
    {
//Определяем, являются ли данные теми данными, которые нужно найти
если(поиск == оценка[i])
        {
перерыв;
        }
    }
//Определяем, найден ли он
если(я==МАКС)
    {
printf("Найти n не удалось");
}еще
    {
printf("Значение, которое вы ищете, существует в массиве n");
    }

    //Обходим массив и завершаем статистический поиск
int count = 0 //Счетчик;
для (целое i=0; i
    {
если(поиск == оценка[i])
        {
count++; //Приращение счетчика
        }
    }
//После завершения цикла проверяем счетчик
если (количество == 0)
    {
printf("Найти n не удалось");
}еще
    {
printf("Поиск прошел успешно, искомое значение появляется %d раз n", count);
    }
вернуть 0;
}


Внеклассное домашнее задание:

никто.