42.57M
Категория: ПрограммированиеПрограммирование

Программирование на языках С/C++. Операторы

1.

Лекция 2
Программирование
на языках С/C++.
Операторы.
1

2.

Оператор-выражение
2
Любое выражение, заканчивающееся
точкой с запятой, является оператором.
Выражение может содержать операнды
(переменные, константы и вызовы
функций), круглые скобки и знаки
операций.

3.

Примеры:
x = 0.1;
// оператор присваивания
y = (sin(x) - 10) * x; // оператор присваивания
Y = -x / (2 * z);
k = n % 3;
/* k присваивается остаток от
деления n на 3 */
i++;
/* увеличение значения i на 1,
эквивалентно оператору: i = i +1; */
++ i;
k - -;
// эквивалентно оператору: k = k -1;
3

4.

q = 2 * a++; // экв. q = 2 * a; a++;
q = 2 * ++a; // a++; q = 2 * a;
4
b = - ++a;
// ++a; b = -a;
S += 2;
// S = S + 2;
S1 -= x;
// S1 = S1 – x;
S2 *= 10; // S2 = S2 * 10;
S3 /= n;
// S3 = S3 / n;
N %= 2;
// N = N % 2;
printf (“Ошибка\n”);
a = b = c = 0; // экв. c=0; b=0; a=0;
i=0, n=1;

5.

Математические библиотечные
функции (объявлены в файле math.h)
5
abs(x),fabs(x) - вычисляется абсолютное значение x;
atan(x) - вычисляется аpктангенс x;
tan(x) - вычисляется тангенс x (x задается в радианах);
acos(x) - вычисляется аpккосинус x;
cos(x) - вычисляется косинус x (x задается в радианах);
asin(x) - вычисляется аpксинус x;
sin(x) - вычисляется синус x (x задается в радианах);
exp(x) – число e ≈2.7 возводится в степень x;
log(x) - вычисляется натуральный логарифм x;
log10(x) - вычисляется десятичный логарифм x;
_
sqrt(x) - вычисляется x ;
pow(x,y) - x возводится в степень y.

6.

Вывод данных
Для вывода на экран различных сообщений
и результатов выполнения программы
служит библиотечная функция printf(). Ее
вызов имеет вид:
printf(“текст”);
или
printf(форматная_строка, выражение1, выражение2, …);
6
Текст, кроме обычных символов, может содержать
управляющие символы, например, \n для перевода
курсора на новую строку.

7.

Например, оператор printf(“\nРезультат:\n”);
выводит с новой строки текст Результат: и затем
переводит курсор на начало следующей строки.
7
Вторая форма вызова функции printf() используется,
чтобы вывести значения выражений или
переменных. Для каждого выражения или
переменной в форматной строке нужно задать
спецификацию преобразования (формат). Число
форматов должно быть равно числу выражений,
указанных после форматной строки. Например,
printf(“%d + %d = %d \n”, a, b, a+b);
при а=-15, b=40 выведет строку:
-15 + 40 = 25

8.

Форматы вывода данных:
8
%d,%i - для вывода целого числа со знаком (типов int, short)
%ld,%li - для вывода целого числа со знаком (типа long);
%u - для вывода целого числа без знака (типа unsigned);
%f - для вывода вещественного числа (типов float, double)
в формате числа с фиксированной точкой (с
точностью по умолчанию 6 цифр после точки);
%e - для вывода вещественного числа в экспоненциальной
форме:
[–]d.dddddde { + }dd
(здесь d - десятичная цифра);
%c - для вывода символа;
%s - для вывода строки символов.

9.

В форматах вывода вещественного числа можно
задавать точность – количество цифр в дробной
части.
9
Операторы:
float x = -256.35;
printf (“%f”, x);
printf (“%e”, x);
printf (“%.2f”, x);
printf (“%.3e”,x);
Результат на экране:
-256.350000
-2.563500e+02
-256.35
-2.564e+02

10.

Ввод данных
Для ввода с клавиатуры значений
переменных во время выполнения
программы служит библиотечная функция
scanf()_s. Ее вызов:
scanf_s (форматная_строка, &имя1, &имя2, …);
Символ & перед именем переменной означает, что
функции scanf_s() передается адрес переменной.
10

11.

Пример
float a, b;
int x;
double y;
scanf_s (“%f %f”, &a, &b);
scanf_s (“%d %lf”, &x, &y);
11
Например, если ввести числа:
-2.5 1.4e-5 100 256344.78654
a=-2.5; b=1.4e-5; x=100; y=256344.78654

12.

Функция scanf_s() использует практически тот же
набор форматов, что и функция printf(). Основные
отличия в случае функции scanf_s() следующие:
12
1. Формат %hd служит для ввода коротких целых
чисел (типа short).
2. Форматы %f и %e эквивалентны и используются
для ввода чисел типа float. Обе спецификации
допускают наличие (или отсутствие) знака, строки
цифр с десятичной точкой или без нее и поля
показателя степени.
3. Форматы %lf и %le определяют тип вводимых
данных как double.

13.

Ввод/вывод в С++
13
Вместо стандартной библиотеки
ввода/вывода stdio.h языка С, в С++
можно использовать библиотеку iostream
и организовать ввод/вывод с помощью
операций >> и <<.

14.

Пример программы с вводом/выводом
на языке С++
/* Сложение двух целых чисел */
#include <iostream>
using namespace std;
int main ()
{ int a, b;
cout << "Задайте два числа: "; // вывод сообщения
cin >> a >> b;
// ввод значений а и b
cout << a<<" + "<< b<< " = "<< a+b; // вывод результата
return 0;
}
14

15.

Пример результата:
Задайте два числа: 328 54
328 + 54 = 382
15

16.

Пояснения к программе:
16
iostream - заголовочный файл, содержит
объявления стандартных объектов-потоков
ввода/вывода языка С++:
cin – поток для ввода с клавиатуры,
>> - операция чтения данных из потока;
cout - поток для вывода на экран,
<< - операция вывода данных в поток.
Потоки cin,cout определены в пространстве
имен std.
English     Русский Правила