Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Метод рекомендации АЯ 1 семестр.docx
Скачиваний:
0
Добавлен:
01.07.2025
Размер:
698.68 Кб
Скачать

1. Лабораторная работа № 1. Изучение операций языка Си. Программирование линейных и разветвляющихся алгоритмов

1.1. Цель и задачи работы, требования к результатам ее выполнения

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

- изучить необходимые учебные материалы, посвященные константам и переменным, а также условному оператору и переключателю языка Си [1, 3];

- разработать программы на языке Си для решения заданных вариантов заданий;

- отладить программы;

- выполнить решение контрольного примера с помощью программы и выполнить ручной расчет контрольного примера;

- подготовить отчет по лабораторной работе.

1.2. Краткая характеристика объекта изучения

1.2.1. Понятие переменной и типа данных

Одним из основных понятий, используемых в процедурных языках программирования, является понятие переменной. Переменная — поименованная, либо адресуемая иным способом область памяти, адрес которой можно использовать для осуществления доступа к данным. Данные, находящиеся в переменной (то есть по данному адресу памяти), называются значением этой переменной. Переменная принадлежит определённому типу данных.

Тип данных определяет:

  • внутреннее представление данных в памяти компьютера;

  • множество значений, которые могут принимать величины этого типа;

  • операции и функции, которые можно применять к величинам этого тина.

Переменная используется для хранения данных в процессе выполнения программ. Значение переменной можно изменить с помощью операции- присваивания.

1.2.2. Стандартные типы языка Си

В языке Си существуют стандартные типы, которым могут принадлежать переменные.

В Си стандарта ANSI классификация типов имеет следующий вид, также указана размерность переменной типа в оперативной памяти:

  • целые:

    • беззнаковые:

      • unsigned char – переменная типа занимает в памяти 8 бит;

      • unsigned short – 16 бит;

      • unsigned int - 32 бита (в Win32);

      • unsigned long – 32 бита (в Win32);

    • знаковые:

      • char – 8 бит;

      • short – 16 бит;

      • int - 32 бита (в Win32);

      • long – 32 бита (в Win32);

  • вещественные:

      • float – 32 бита;

      • double – 64 бита;

      • long double – 80 бит.

Назначение и диапазоны стандартных типов представлено в таблице 1.

Следует отметить особенность типа char (unsigned char) в языке Си. Язык Си язык со слабой типизацией, поэтому символьный тип используется двояко. С одной стороны он может использоваться для хранения кодов символов в кодировке ASCII, а с другой стороны, для хранения целых чисел в заданном диапазоне.

Дополнительно компанией Microsoft введены, так называемые, платформенно- независимые целые типы, по сути это новые имена для уже существующих типов, но их размерность не будет меняться при переходе к другим платформам (размерность этих типов в битах явным образом присутствует в названии):

__int8 unsigned __int8

__int16 unsigned __int16

__int32 unsigned __int32

__int64 (long long) unsigned __int64 (unsigned long long)

Кроме того в последние версии продуктов Microsoft дополнительно введены следующие типы, имена которых являются ключевыми словами:

bool – 1 байт, возможные значения true (1) и false (0);

wchar_t – 2 байта (соответствует типу unsigned short), обычно используется для хранения кодов символов в кодировке Unicode (1 символ кодируется 2 байтами).

Таблица 1 – Назначение и диапазоны стандартных типов

Тип данных

Размер, бит

Диапазон значений

Назначение типа

unsigned char

8

0...255

Небольшие целые числа без знака и коды символов

char

8

-128...127

Небольшие целые числа со знаком и ASCII-коды

unsigned short

16

0...65535

Целые числа без знака

short

16

-32768...32767

Целые числа со знаком

unsigned int

32

0...4294967295

Большие целые без знака

int

32

-2147483648... ...2147483647

Большие целые со знаком

unsigned long

32

0...4294967295

Большие целые без знака

long

32

-2147483648... ...2147483647

Большие целые со знаком

float

32

3.4Е-38…...

3.4Е+38

Научные расчеты (7 значащих цифр)

double

64

1.7Е-308...

…..1.7Е+308

Научные расчеты (15 значащих цифр)

long double

80

3.4Е-4932... ...1.1Е+4932

Финансовые расчеты (19 значащих цифр)