Заголовки и комментарии, описывающие программу

МЕТОДИЧЕСКИЕ УКАЗАНИЯ

К учебной практике

для студентов направления подготовки
09.03.03 «Прикладная информатика»

09.03.01 Информатика и вычислительная техника

Ставрополь, 2017

СОДЕРЖАНИЕ

1. Цели учебной практики…………………………………………………….
2. Задачи учебной практики………………………………………………….
3. Структура и содержание учебной практики……………………………...
4. Учебно-методическое обеспечение самостоятельной работы студентов на учебной практике…………………………………………..  
5. Формы промежуточной аттестации (по итогам практики)………………
6. Учебно-методическое и информационное обеспечение учебной практики……………………………………………………………………..  
   
   
   

1. Цели учебной практики

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

Задачи учебной практики

Задачами учебной практики являются:

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

- углубленное изучение и приобретение практических навыков в работе с системами и языками программирования;

- приобретение и закрепление практических навыков разработки алгоритмов и программ в средах объектно-ориентированного программирования (таких как С/С++).

3. Структура и содержание учебной практики

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

Раздел практики Трудоемкость по видам учебной работы, часы Формы текущего контроля
1. Структура языка. Алфавит языка C. Структура программы на языке C/С++ 2 – ознакомительная лекция, 12 – выполнение практического задания Отчёт
2. Алгоритмические конструкции языка С. Организация обработки данных на языке С/С++ 2 – ознакомительная лекция, 12 – выполнение практического задания Отчёт
3. Сложные типы данных: одномерные массивы 2 – ознакомительная лекция, 14 – выполнение практического задания Отчёт
4. Сложные типы данных: двумерные массивы. Псевдослучайные числа 2 – ознакомительная лекция, 14 – выполнение практического задания Отчёт
5. Символьный тип данных char. ASCII-коды символов. Строки 2– ознакомительная лекция, 14 – выполнение практического задания Отчёт
6. Сложные типы данных: структуры 2 – ознакомительная лекция, 14 – выполнение практического задания Отчёт
7. Функции в языке C/С++ 2– ознакомительная лекция, 14 – выполнение практического задания Отчёт
Общая трудоемкость практики 108 (3 ЗЕТ) Отчёт

4. Учебно-методическое обеспечение самостоятельной работы студентов

На учебной практике

1 Структура языка. Алфавит языка C. Структура программы на языке C/С++

Краткие теоретические сведения.Основными понятиями являются: язык, алфавит языка, структура языка.

Язык программирования включает алфавит – набор допустимых символов языка. Из символов алфавита формируются конструкции языка: слова, выражения и операторы по правилам, определенным в языке.

Слова – это, например, идентификаторы и константы.

Выражения – это группы слов, имеющих определенный смысл.

Операторы – это предложения для описания некоторого действия в процессе обработки данных. Из операторов формируются программы на языке C.

Обобщенная структура языка C/С++ приводится на рисунке 1.

Заголовки и комментарии, описывающие программу - student2.ru

Рисунок 1 – Структура языка С/С++

В состав языка входят:

- средства определения данных, подлежащих обработке,

- операторы, т.е. инструкции по выполнению действий над данными,

- модули – относительно самостоятельные фрагменты программы для функционально законченной обработки данных, оформленные в виде функций.

Алфавит языка С/С++. Комментарии. Алфавит языка включает буквы, цифры и специальные символы (символ «|» – разделитель, его следует понимать как «или»).

Буквы: A | B | C | … X | Y | Z | a | b | c | … x | y | z

Цифры: 0 … 9

Специальные символы включают: унарные операции, арифметические операции, логические операции, операции отношения, побитовые операции, операции сдвига, ограничители, ключевые слова.

Унарные операции: * | & | - | ~ | ++ | --

Арифметические операции: + | - | * | / | % | ++ | --

Логические операции: ! | && | ||

Операции отношения: < | <= | >= | > | == | !=

Побитовые операции: & | | | ~ | ^

Существуют и другие специальные символы.

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

- символами /* … */ в начале (/*) и конце (*/) комментариев;

- символами // - после них до конца строки располагается комментарий.

Например:

Заголовки и комментарии, описывающие программу - student2.ru

Библиотечные функции языка С/С++. Язык С/С++ предоставляет возможность работать более чем с 300 библиотечными функциями и макроопределениями, обеспечивающими ввод-вывод данных, работу с графикой и пр. В файлах с расширением .h содержатся интерфейсы библиотечных функций:

- ввода-вывода данных;

- работы с математическими функциями;

- работы со строками;

- преобразования данных;

- распределения памяти.

Интерфейсы математических функций описаны в файле math.h; функции ввода-вывода сгруппированы в библиотеках, интерфейсы которых описаны в файлах stdio.h, iostream.h. Так, например, функция printf описана в библиотеке stdio.h.

Для подключения заголовочных файлов (с интерфейсами библиотечных функций) используется директива препроцессора #include. Например:

Заголовки и комментарии, описывающие программу - student2.ru

Структура программы на языке С|C++. Структура программы:

/*

Задание 2

Выполните задание в соответствии с индивидуальным вариантом (в программе должно присутствовать как минимум три оператора из описанных в теоретической части):

2.1. Реализуйте с использованием цикла while программу, которая выводит запрос на ввод целого числа, затем печатает квадрат числа, но если пользователь ввел 0 – программа завершается.

2.2. Реализуйте программу, которая запрашивает целое число N, затем

выводит N!, где N!=1⋅ 2 ⋅3⋅...⋅N.

2.3. Написать программу, которая запрашивает целое число F и затем

выводит на экран квадраты чисел от 1 до F, квадраты которых – четные числа.

2.4. Написать программу, которая запрашивает целое число E и затем

выводит для чисел от 1 до E: если число четное – выводится куб числа, если нечетное – квадрат.

2.5. Написать программу, которая запрашивает целое число Z и затем

выводит для чисел от 1 до Z: если число делится на три, выводится куб числа, если делится на два – квадрат, если делится на три и на два – и куб, и квадрат. Если число не делится на 2 или 3, то выводится 0.

2.6. Вычислить значение выражения:

Заголовки и комментарии, описывающие программу - student2.ru

если количество слагаемых в правой части выражения и целое x пользователь вводит с клавиатуры.

2.7. Вычислить значение выражения:

Заголовки и комментарии, описывающие программу - student2.ru

если количество слагаемых в правой части выражения пользователь вводит с

клавиатуры.

2.8. Вычислить значение выражения:

Заголовки и комментарии, описывающие программу - student2.ru

если количество слагаемых в правой части выражения пользователь вводит с клавиатуры.

2.9. Вычислить значение выражения:

Заголовки и комментарии, описывающие программу - student2.ru

если количество слагаемых в правой части выражения пользователь вводит с клавиатуры.

2.10. Вычислить значение выражения:

Заголовки и комментарии, описывающие программу - student2.ru

если количество слагаемых в правой части выражения пользователь вводит с клавиатуры.

Контрольные вопросы

1. Что такое пустой оператор?

2. Что такое составной оператор?

3. Что такое условный оператор и условное выражение (операция)?

4. Для чего используется оператор выбора?

5. Какие существуют операторы цикла?

6. Поясните принцип работы оператора цикла с параметрами.

7. Поясните принцип работы оператора цикла с предусловием.

8. Поясните принцип работы оператора цикла с постусловием.

9. Какая функция используется для считывания значений, вводимых пользователем с клавиатуры?

Задание 4

4.1. Даны матрица A размером m*n и вектор В размером m. Записать в главную диагональ элементы вектора, а в вектор - элементы главной диагонали. Матрицу А, вектор В и результаты вывести на экран.

4.2. Найти максимальный элемент матрицы С (размер m*n), элементы четных строк разделить на максимальный элемент, а к элементам нечетных прибавить максимальный элемент. Исходную и результирующую матрицы вывести на экран.

4.3. Найти минимальный элемент матрицы С (размер m*n) и поменять его местами с первым элементом. Исходную и результирующую матрицы вывести на экран.

4.4. Дана матрица Е размером m*n. Вычислить суммы элементов каждого столбца. Определить наибольшее значение суммы и номер соответствующего столбца. Исходную матрицу, максимальную сумму и номер столбца вывести на экран.

4.5. В матрице К размером m*n найти в каждом столбце произведение отрицательных элементов и количество нулевых элементов в матрице. Исходную матрицу, произведение и количество нулевых элементов вывести на экран.

4.6. Даны две матрицы А и В одинаковой размерности m*n. Получить матрицу C = max (a i j, b i j ) и матрицу D = min (a i j, b i j). Исходные и результирующие матрицы вывести на экран.

4.7. Дана матрица Р размером m*n. Найти сумму минимальных элементов каждого столбца матрицы. Исходную матрицу и сумму вывести на экран.

4.8. Даны две матрицы: А размером m*k и В размером k*n. Получить матрицу С=A*В. Исходные и результирующие матрицы вывести на экран.

4.9. Найти сумму и произведение элементов главных диагоналей квадратной матрицы. Исходную матрицу и результаты вывести на экран.

4.10. Транспонировать (поменять местами строки и столбцы) матрицу m*n. Исходную и результирующую матрицу вывести на экран.

Варианты индивидуальных заданий

5.1.1. Написать программу, которая выводит символы с четными ASCII кодами.

5.1.2. Написать программу, которая выводит символы с нечетными ASCII кодами.

5.1.3. Написать программу, которая запрашивает символ, затем выводит его код и сам символ. После вывода задается вопрос: Продолжить? Если пользователь нажимает ‘Y’ или ‘y’, то программа продолжает запрашивать ввод символов.

5.1.4. Написать программу, которая выводит только русские буквы по их ASCII кодам.

5.1.5. Написать программу, которая выводит только прописные латинские буквы по их ASCII кодам.

5.1.6. Написать программу, которая выводит только спецсимволы по их ASCII кодам.

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

5.1.8. Написать программу, которая выводит все символы по их ASCII кодам.

5.1.9. Написать программу, которая формирует на экране таблицу символов, похожую на таблицу, приведенную в примере.

5.1.10. Написать программу, которая в цикле запрашивает ввод символа, затем, если введен символ с четным кодом – программа завершается, если с нечетным кодом – продолжает свою работу.

Строки. Одномерный символьный массив – это строка. Константы строки

должны заканчиваться символом ‘\0’. То есть строка в С – это массив символов с

символом ‘\0’ в конце. При инициализации символьного массива с помощью строки в двойных кавычках в конце строки компилятор сам ставит символ ‘\0’.

Например, строковой переменной answer можно присвоить значение

"Welcome " следующими способами:

char answer [] = { 'W ', 'e ', 'l ', 'c ', 'o ', 'm ', 'e ', '\0 '};

или

char answer[] = "Welcome";

или

char answer [8] = "Welcome";

или

char * answer = "Welcome";

В языке С разрешены символьные константы, в которых размещаются

управляющие символы:

\ - размещение текста этой константы и на следующей строке,

\n - переход на следующую строку при ее выводе,

\07 - короткий звонок,

Задание 5.2.Составить и выполнить программу по обработке символьных данных. Текст вводится с клавиатуры в символьную переменную. Исходный текст и результаты распечатать.

5.2.1. Вывести на печать список слов, имеющих одинаковую приставку (несколько букв, задаваемых с клавиатуры).

5.2.2. Раздвинуть заданный текст, вставив введенную с клавиатуры последовательность символов после 1-го символа каждого слова.

5.2.3. В заданном тексте слова разделены запятыми. На­печатать список слов, начинающихся с символа, введенного с кла­виатуры.

5.2.4. Определить наличие слов в заданном тексте, содержащих соче­тание символов, задаваемое с экрана.

5.2.5. Из заданной последовательности слов удалить слова, содержащие числа.

5.2.6. Каждое слово текста преобразовать таким образом, чтобы оно читалось справа налево.

5.2.7. Подсчитать количество слов, разделенных в списке запя­тыми, содержащих k гласных букв (k задается с клавиатуры).

5.2.8. Из введенного текста сначала распечатать слова, заканчивающиеся на согласную букву, а потом – на гласную букву.

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

5.2.10. В заданном тексте подсчитать количество гласных, согласных букв, цифр и т.д.

Контрольные вопросы

1. Что такое массив?

2. Как происходит обращение к элементам массива?

3. Как объявляется массив?

4. Что такое строковый тип и как объявляется переменная данного типа?

5. Чем строковый тип отличается от символьного?

6. Для чего в языке С введен тип char?

7. Как соотносятся тип int и тип char?

8. Какая строка формата используется для вывода переменной типа char?

9. Какую строку формата необходимо использовать, чтобы вывести не сам символ, а его код?

Варианты индивидуальных заданий

7.1. Написать функцию, вычисляющую значение синуса угла. В функцию передается значение угла в градусах. В главной программе с использованием созданной функции выводятся значения синусов углов от 00до 3600 с шагом alfa (значение alfa в градусах запрашивается программой у пользователя).

7.2. Написать функцию, выводящую на экран объем шара радиуса R в кубических метрах. В функцию передается значение R в миллиметрах. В главной программе с использованием созданной функции выводятся значения объемов шаров радиусами от 0 до 10 с шагом step (значение step запрашивается программой у пользователя).

7.3. Написать функцию, вычисляющую объем прямоугольного параллелепипеда со сторонами a, b, c в кубических сантиметрах. В функцию передаются значения a, b, c в метрах. В главной программе с использованием созданной функции выводятся значения объемов параллелепипедов (значения a, b, c запрашиваются у пользователя до тех пор, пока не будут введены все нули).

7.4. Написать функцию, вычисляющую значение суммы ряда:

Заголовки и комментарии, описывающие программу - student2.ru .

В функцию передается значение n - количество слагаемых в сумме. В программе запрашивается целое число N (количество слагаемых). После этого с использованием созданной функции выводится сумма ряда для введенного N. Программа запрашивает ввод N до тех пор, пока пользователь не введет 0.

7.5. Написать функцию, вычисляющую площадь прямоугольного треугольника по его катетам. В главной программе у пользователя запрашивается значения катетов и с использованием созданной функции выводится площадь треугольника. Запрос значений катетов продолжается до тех пор, пока пользователь не введет хотя бы одно нулевое или отрицательное значение.

7.6. Написать функцию, вычисляющую значение косинуса угла. В функцию передается значение угла в градусах. В главной программе с использованием созданной функции выводятся значения косинусов углов от 00 до 3600 с шагом

alfa (значение alfa в градусах запрашивается программой у пользователя).

7.7. Написать функцию, вычисляющую количество чисел, делящихся на 7 в диапазоне от 7 до N (значение N передается в качестве параметра). В главной программе у пользователя запрашивается число N до тех пор, пока не будет введено число, меньшее 7, и с использованием созданной функции подсчитывается количество чисел, делящихся на 7.

7.8. Написать функцию, вычисляющую объем прямоугольной призмы, основанием которой является прямоугольный треугольник. Главная программа запрашивает все необходимые параметры и выводит результат (при этом объем рассчитывается с использованием созданной функции).

7.9. Написать функцию, вычисляющую объем шара в кубических метрах по его радиусу. В главной программе с помощью цикла организовать запрос у

пользователя радиуса шара в миллиметрах. Программа завершается, если

пользователь вводит значение радиуса меньшее или равное 0.

7.10. Написать функцию, которая рассчитывает массу шара. Плотность шара и его радиус передаются в качестве параметров. В главной программе в бесконечном цикле запрашиваются значения плотности и радиуса, затем с использованием пользовательской функции осуществляется вывод результата (округлить до 3-го знака после запятой). Условием выхода из цикла служит ввод отрицательных или нулевых значений для плотности или радиуса.

7.11. Написать функцию, вычисляющую расстояние между двумя точками на плоскости. В качестве формальных параметров в функцию передаются координаты двух точек. В главной программе запрашиваются координаты точек, и с использованием созданной функции выводится расстояние между ними в метрах, сантиметрах и миллиметрах.

Контрольные вопросы

1. Что представляет собой функция в языке С?

2. Как описывается функция?

3. Что такое формальные и фактические параметры функции?

4. С помощью какого оператора из функции возвращается значение?

5. Как передать в функцию несколько параметров?

6. Как описывается заголовок функции, которая не возвращает параметров?

7. Как вызывается пользовательская функция?

Учебно-методическое и информационное обеспечение

Учебной практики

Список основных источников

1. Программирование на языке высокого уровня. Программирование на языке С++: Уч. пос. / Т.И.Немцова и др.; Под ред. Л.Г.Гагариной - М.: ИД ФОРУМ: ИНФРА-М, 2012. – 512 с., 1000 экз. http://znanium.com/catalog.php?bookinfo=244875

2. Введение в методы и алгоритмы принятия решений: Учебное пособие / В.Г. Дорогов, Я.О. Теплова. - М.: ИД ФОРУМ: ИНФРА-М, 2012. – 240 с., 1000 экз. http://znanium.com/catalog.php?bookinfo=241287

Программное обеспечение

1. Средства быстрой разработки приложений:

Microsoft Visual Studio 2010/2012 (С++) либо

RAD Studio XE2 Professional Named ESD (С++ Builder 2007).

2. Пакет программ Microsoft Office 2007/2010.

МЕТОДИЧЕСКИЕ УКАЗАНИЯ

К учебной практике

для студентов направления подготовки
09.03.03 «Прикладная информатика»

09.03.01 Информатика и вычислительная техника

Ставрополь, 2017

СОДЕРЖАНИЕ

1. Цели учебной практики…………………………………………………….
2. Задачи учебной практики………………………………………………….
3. Структура и содержание учебной практики……………………………...
4. Учебно-методическое обеспечение самостоятельной работы студентов на учебной практике…………………………………………..  
5. Формы промежуточной аттестации (по итогам практики)………………
6. Учебно-методическое и информационное обеспечение учебной практики……………………………………………………………………..  
   
   
   

1. Цели учебной практики

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

Задачи учебной практики

Задачами учебной практики являются:

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

- углубленное изучение и приобретение практических навыков в работе с системами и языками программирования;

- приобретение и закрепление практических навыков разработки алгоритмов и программ в средах объектно-ориентированного программирования (таких как С/С++).

3. Структура и содержание учебной практики

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

Раздел практики Трудоемкость по видам учебной работы, часы Формы текущего контроля
1. Структура языка. Алфавит языка C. Структура программы на языке C/С++ 2 – ознакомительная лекция, 12 – выполнение практического задания Отчёт
2. Алгоритмические конструкции языка С. Организация обработки данных на языке С/С++ 2 – ознакомительная лекция, 12 – выполнение практического задания Отчёт
3. Сложные типы данных: одномерные массивы 2 – ознакомительная лекция, 14 – выполнение практического задания Отчёт
4. Сложные типы данных: двумерные массивы. Псевдослучайные числа 2 – ознакомительная лекция, 14 – выполнение практического задания Отчёт
5. Символьный тип данных char. ASCII-коды символов. Строки 2– ознакомительная лекция, 14 – выполнение практического задания Отчёт
6. Сложные типы данных: структуры 2 – ознакомительная лекция, 14 – выполнение практического задания Отчёт
7. Функции в языке C/С++ 2– ознакомительная лекция, 14 – выполнение практического задания Отчёт
Общая трудоемкость практики 108 (3 ЗЕТ) Отчёт

4. Учебно-методическое обеспечение самостоятельной работы студентов

На учебной практике

1 Структура языка. Алфавит языка C. Структура программы на языке C/С++

Краткие теоретические сведения.Основными понятиями являются: язык, алфавит языка, структура языка.

Язык программирования включает алфавит – набор допустимых символов языка. Из символов алфавита формируются конструкции языка: слова, выражения и операторы по правилам, определенным в языке.

Слова – это, например, идентификаторы и константы.

Выражения – это группы слов, имеющих определенный смысл.

Операторы – это предложения для описания некоторого действия в процессе обработки данных. Из операторов формируются программы на языке C.

Обобщенная структура языка C/С++ приводится на рисунке 1.

Заголовки и комментарии, описывающие программу - student2.ru

Рисунок 1 – Структура языка С/С++

В состав языка входят:

- средства определения данных, подлежащих обработке,

- операторы, т.е. инструкции по выполнению действий над данными,

- модули – относительно самостоятельные фрагменты программы для функционально законченной обработки данных, оформленные в виде функций.

Алфавит языка С/С++. Комментарии. Алфавит языка включает буквы, цифры и специальные символы (символ «|» – разделитель, его следует понимать как «или»).

Буквы: A | B | C | … X | Y | Z | a | b | c | … x | y | z

Цифры: 0 … 9

Специальные символы включают: унарные операции, арифметические операции, логические операции, операции отношения, побитовые операции, операции сдвига, ограничители, ключевые слова.

Унарные операции: * | & | - | ~ | ++ | --

Арифметические операции: + | - | * | / | % | ++ | --

Логические операции: ! | && | ||

Операции отношения: < | <= | >= | > | == | !=

Побитовые операции: & | | | ~ | ^

Существуют и другие специальные символы.

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

- символами /* … */ в начале (/*) и конце (*/) комментариев;

- символами // - после них до конца строки располагается комментарий.

Например:

Заголовки и комментарии, описывающие программу - student2.ru

Библиотечные функции языка С/С++. Язык С/С++ предоставляет возможность работать более чем с 300 библиотечными функциями и макроопределениями, обеспечивающими ввод-вывод данных, работу с графикой и пр. В файлах с расширением .h содержатся интерфейсы библиотечных функций:

- ввода-вывода данных;

- работы с математическими функциями;

- работы со строками;

- преобразования данных;

- распределения памяти.

Интерфейсы математических функций описаны в файле math.h; функции ввода-вывода сгруппированы в библиотеках, интерфейсы которых описаны в файлах stdio.h, iostream.h. Так, например, функция printf описана в библиотеке stdio.h.

Для подключения заголовочных файлов (с интерфейсами библиотечных функций) используется директива препроцессора #include. Например:

Заголовки и комментарии, описывающие программу - student2.ru

Структура программы на языке С|C++. Структура программы:

/*

Заголовки и комментарии, описывающие программу

(комментарии программиста)

*/

/* Директивы препроцессора: #include (подключение библиотек)*/

#include имя_файла_1

#include имя_файла_2...

#include имя_файла_n

/* Макро-директивы препроцессора: #define */

#define макро_1 значение_1...

#define макро_2 значение_n

/* Объявление глобальных переменных */

Тип_данных переменная_1;...

Тип_данных переменная_n;

// ------------- Главная функция (начало программы) --------------

int main(int argc, char* argv[]) /* заголовок функции */

{ /* тело функции main */

/* Объявление локальных переменных */

/* Операторы функции main */

return 0;}

Типы данных языка С/С++. Программы работают с данными посредством команд, которые производят с данными определенные операции.

Данные, не изменяющиеся в процессе выполнения программы, называются константами.

Данные, зафиксированные в программе, но изменяемые в процессе работы программы – переменными.

Любая константа, переменная, значение функции в С/С++ имеет определенный тип. Особенности типов:

1) каждое значение (например, константа, переменная, значение, возвращаемое функцией) имеет тип;

2) тип переменной и константы определяется при их объявлении;

3) тип определяет:

а) множество различных значений;

б) набор операций, которые можно применять к значениям данного типа;

в) формат внутреннего представления значения;

г) объем оперативной памяти, необходимой для размещения значения данного типа.

Основные типы данных и их характеристики приводятся в таблице 1.

Таблица 1 – Типы данных в С/С++

Наименование типа Тип Память в байтах Диапазон значений
Целые
целый int -32768..32767
беззнаковый целый unsigned int 0..65535
короткий short int -32768..32767
беззнаковый короткий unsigned short 0..65535
длинный long -2147483648.. 2147483647
беззнаковый длинный unsigned long 0..4294967295
Вещественные
вещественный float 3.4E-38 .. 3.4E38
вещественный с двойной разрядностью double 1.7E-308 .. 1.7E308
длинный вещественный long double 3.4E-4932 .. 1.1E4932
Символьные
символьный char -128..127
беззнаковый символьный unsigned char 0..255

Идентификаторы. Идентификаторы – это ключевые слова, имена переменных, констант, функций и метки. Идентификаторы могут иметь произвольную длину, но в программах используются только первые 32 символа идентификатора.

Идентификатор формируется только в виде последовательности латинских букв, цифр и символов подчеркивания. Начинаются идентификаторы с буквы.

Ключевые слова – это идентификаторы, которые имеют фиксированное назначение и не могут использоваться программистом по иному назначению.

Примеры идентификаторов в языке С/С++:

asm, auto, break, case, char, const, continue, default, do, double, else, enum, extern, far, for, goto, if, int, long, near, register, return, short, signed, sizeof, static, struct, switch, void, while.

Объявление переменных. С помощью объявления переменной можно определить тип и начальное значение переменной. Значение переменной в программе может меняться. При этом тип переменной измениться не может.

Пример объявления переменных:

Заголовки и комментарии, описывающие программу - student2.ru

Объявление констант выполняется с использованием зарезервированного слова const. Объявленные таким образом объекты программы не могут изменять свое значение в программе.

Например:

Заголовки и комментарии, описывающие программу - student2.ru

Перед использованием переменной (константы) она должна быть обязательно объявлена.

Вывод данных на экран монитора в консольном приложении. При программировании консольных приложений на языке С/С++ необходимо отобразить результаты работы программы на экране монитора.

Для этого можно использовать функцию форматного вывода printf.

Например, Заголовки и комментарии, описывающие программу - student2.ru или

Заголовки и комментарии, описывающие программу - student2.ru или

Заголовки и комментарии, описывающие программу - student2.ru

Таким образом, прототип функции printf записывается в виде:

printf (char * format [, arg1 …]);

где format – строка описания формата.

В приведенных выше примерах строки описания формата следующие:

Заголовки и комментарии, описывающие программу - student2.ru – в первом случае,

Заголовки и комментарии, описывающие программу - student2.ru – во втором.

Строка описания формата может содержать:

□ спецификации формата, которые определяются символом % - для вывода значений, определенных списком аргументов [, arg1 …], если они есть;

□ любые символы, которые должны быть выведены в выходной поток;

□ управляющие коды, то есть Esc-последовательности для управления процессом вывода (таблица 2).

Таблица 2 – Примеры управляющих кодов

Код Назначение кода
\n Новая строка
\b Возврат на один символ
\r Возврат на начало строки
\f Прогон бумаги до конца страницы (при выводе на принтер)
\\ Вывод обратного слэша
\' Вывод апострофа
\" Вывод кавычек
\? Вывод знака вопроса
\a Короткий звуковой сигнал
\07 " – "

Форматы начинаются с символа % и имеют следующую форму:

%[flags] [w] [.p] [F|N|h|l|L]тип

flags – управляет выравниванием выводимых символов:

- - результат прижимается в выделенном для него поле влево, оставляя справа пробелы; по умолчанию все результаты прижимаются вправо.

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

_ - добавляет при выводе положительных чисел слева от числа пробел вместо знака +;

# - при выводе по форматам o, x или X добавляет префикс числа

w – минимальное количество выводимых символов, размер поля для вывода значения.

p – точность – определяет максимальное число выводимых символов или положение десятичной точки числа.

тип – определяется каким образом будет интерпретироваться аргумент: как символ, строка или число. В простейшем случае формат может иметь символ % и тип. Например: "%d", "%f", "%s", "%x"

Примеры допустимых типов форматов приведены в таблице 3.

Таблица 3 – Примеры типов форматов вывода

Тип Выводимое значение Тип аргумента
d, i десятичное целое со знаком int
u десятичное целое без знака unsigned int
x шестнадцатеричное целое без знака, использующее символы "abcdf" int
X "-" "ABCDF" int/long int
F, f число с фиксированной точкой float
lf Число с плавающей точкой double
c символ char
s строка char

Библиотека математических функций. Для программирования математических вычислений необходимо использовать библиотеку математических функций. Объявления математических функций расположены в заголовочном файле math.h, который необходимо подключить директивой #include.

Арифметические операции (таблица 4) используются в программе без подключения математической библиотеки.

Таблица 4 – Арифметические операторы

Операция Назначение Тип операнда Тип результата
+ унарный плюс целое, вещественное совпадает с типом операндов
- унарный минус целое, вещественное
* умножение целое, вещественное в соответствие с иерархией типов
/ деление целое, вещественное совпадает с типом операндов
% остаток от деления целый целый
+= или -= или *= или /= изменить и заменить целое, вещественное в соответствие с иерархией типов
++ инкремент (увеличение на единицу) целое, вещественное совпадает с типом операнда
-- декремент (уменьшение на единицу) целое, вещественное

Примеры:

Заголовки и комментарии, описывающие программу - student2.ru Заголовки и комментарии, описывающие программу - student2.ru
Заголовки и комментарии, описывающие программу - student2.ru Заголовки и комментарии, описывающие программу - student2.ru

В библиотеке math.h объявлены следующие функции (таблица 5).

Таблица 5 – Математические функции библиотеки math.h

Наши рекомендации

Обращение к функции Возвращаемый результат
abs(x) Модуль аргумента, x – целое
fabs(x) Модуль аргумента, x – вещественное
atan(x) Арктангенс (х – в радианах)
sin(x) Синус (х – в радианах)
sinh(x) Синус гиперболический
cos(x) Косинус (х – в радианах)
cosh(x) Косинус гиперболический
tan(x) Тангенс (х – в радианах)
exp(x) Экспонента, Заголовки и комментарии, описывающие программу - student2.ru
log(x) Логарифм натуральный, Заголовки и комментарии, описывающие программу - student2.ru
log10(x) Логарифм десятичный, Заголовки и комментарии, описывающие программу - student2.ru
sqrt(x)