Тема_2. базовые средства

Содержание

Слайд 2

printf(“строка форматов”, объект, объект, …);

Пример:
int y; // объявление целочисленной переменной
int x=5; //объявление

printf(“строка форматов”, объект, объект, …); Пример: int y; // объявление целочисленной переменной
и инициализация переменной

y=x+20; // операция присваивания
printf(“получено число %d \n”, y); //вывод числа
printf(“получено число %d \n”, x+20); //вывод значения выражения
printf(“получено число %d %d \n”, x,y); //вывод двух объектов

Слайд 3

Таблица 5 Спецификации полей данных

Таблица 5 Спецификации полей данных

Слайд 4

%-10s; %6d; %8.3f; %ld.

int x;
float y;
. . .
printf (”Получено x =

%-10s; %6d; %8.3f; %ld. int x; float y; . . . printf
%f y = %f \n”, x , y);

\n – переход на следующую строку;
\r – возврат каретки;
\t – табуляция;
\a – звонок;
\b – возврат на один шаг;
\f - перевод формата (страницы);
\ \ - вывод знака \ ;
\ ’ – вывод знака ’;
\ ’’- вывод знака ’’.

Слайд 5

Функции вывода puts( ) и cputs()

# include / / Подключение

Функции вывода puts( ) и cputs() # include / / Подключение функций
функций ввода/вывода
# include
void main (void) / / Главная функция
{
printf(“Система Borland C\n”) ; / / Печать строки
puts(“Система Borland C”); / / Печать строки
cputs(“Система Borland C\n\r”); / / Печать строки
}

cout<< выражение.
cin>> переменная.

Пример:
#include
main()
{
int i;
cout << "Целое число?: ";
cin >> i;
cout << " Квадрат числа: " << i*i << "\n";
return 0;
}

Слайд 6

Ввод данных в языке С

Таблица 6 Функции ввода

(с)scanf (“строка форматов'', адрес,

Ввод данных в языке С Таблица 6 Функции ввода (с)scanf (“строка форматов'', адрес, адрес,…);
адрес,…);

Слайд 7

Пример:
/* ввод двух целых чисел в ячейки памяти ''а'' и ''b''*/
(с)scanf (“%d

Пример: /* ввод двух целых чисел в ячейки памяти ''а'' и ''b''*/
%d”, &a, &b);
где &a, &b- адреса операндов ''a'' и ''b''.

Пример:
/* ввод строки символов, представленных массивом */
#include
void main (void)
{
clrscr ( );
char im [10];
cprintf (“Введите имя:” );
cscanf (”%s”, im) ;
cprintf (”\n\r Ваше имя : %s \n\r”, im);
}

Слайд 8

Пример:
# include
#include
void main (void)
{
clrscr ();
char string [40];

Пример: # include #include void main (void) { clrscr (); char string
printf (”Введите строку : ”);
gets (string);
printf (”Строка = %s \n”, string);
getch ( );
}

Пример:
# include
int main (void)
{
char c;
while ((c=getchar())!=’\n’)
printf (”%c”, c);
return 0;
}

Слайд 9

Переменные

int x

тип список имён переменных;

Таблица 7 -Типы простых данных

Переменные int x тип список имён переменных; Таблица 7 -Типы простых данных

Слайд 10

Пример записи данных в программе.
int a,b,c;
float x,y;
char ch;
double e;
unsigned u;

Пример записи данных в программе. int a,b,c; float x,y; char ch; double e; unsigned u;

Слайд 11

Операции над данными

операция присваивания ``=``

Например,
x =362;
k = k +

Операции над данными операция присваивания ``=`` Например, x =362; k = k
2;
m = c = 1;

Базовая форма
<имя>=<выражение>
Разновидность операции присваивания
<имя>=<имя> <знак операции> <выражение>

Слайд 12

Примеры:
A = a + b a + = b,
A = a*b
A

Примеры: A = a + b a + = b, A =
= a*(3*b +10)
i=i+1

a * = b,

а*=3*b+10 ,

i++

Бинарными операциями являются:
+ - * / %
Унарные операции:
-
++ положительного (увеличения на единицу - инкремент),
-- отрицательного (уменьшения на единицу – декремент).

апостериорное приращение,
c=a+b++ , c1=a+b; c2=a+(b+1); c3=a+(b+2); и т. д.,
априорное приращение,
c=a+++b, c1=a+(b+1); c2=a+(b+2)…

Слайд 13

int s, k=2, p=3; s=p*++k;
s=p*k++;

Старшинство арифметических операций следующее:
++, --
- (унарный

int s, k=2, p=3; s=p*++k; s=p*k++; Старшинство арифметических операций следующее: ++, --
минус)
*, /, %
+, –

x+++b или z---b

(x++)+b или (z--)-b

double d; int m; d= 5.0/2.0; /*результат 2.5*/ m=5/2; /* результат 2*/

Слайд 14

& AND (и),
| OR (или),
^ XOR,
~ NOT (не),
<< сдвиг влево,
>> сдвиг вправо.

Поразрядные

& AND (и), | OR (или), ^ XOR, ~ NOT (не), >>
(побитовые) операции

Слайд 17

Пример .Найти значение выражения

при a=95.0; b=0.02;

#include "stdio.h" #include "conio.h" void

Пример .Найти значение выражения при a=95.0; b=0.02; #include "stdio.h" #include "conio.h" void
main() { float a=95.0,b=0.02,c,t1,t2,t3; t1=(a+b)*(a+b); t2=-2.0*a*b-a*a; t3=b*b; c=(t1+t2)/t3; printf(“\n значение выражения %f", c); getch();
}

Слайд 18

Стандартные математические функции

double cos(double x); - косинус;
double sin(double x); - синус;
double tan(x)

Стандартные математические функции double cos(double x); - косинус; double sin(double x); -
- тангенс;
double log(double x); - логарифм натуральный;
double sqrt(double x); - корень квадратный;
double floor(double x); - ближайшее меньшее целое;
double ceil(double x); - ближайшее большее целое;
int abs(int i); - модуль целого числа;
double acos(double x); - арккосинус;
double fabs(double x); - модуль числа с плавающей точкой;
double asin(double x); - арксинус;
double atan(double x); - арктангенс;
srand (seed) int seed; - инициализация генератора случайных чисел (ГСЧ)
rand( ) и int rand( ); - ГСЧ;
longint time(p), longint p - время в секундах, отсчитываемое от 1.01.1970 г. (0.00
по Гринвичу).
delay(t); - задержка во времени на t микросекунд;
double pow (double x, double y) и
long double pow (long double x, long double y) - возвращает значение, равное ху.
double exp(double x) и
long double exp (long double x) – возвращает значение exp(x).

Слайд 19

Символьный тип

char c; /* байтовое число со знаком */
unsigned char u;

Символьный тип char c; /* байтовое число со знаком */ unsigned char
/* байтовое число без знака */

c = 45;
'S' '&' '8' 'ф'
char c = 68;
char c = 'D';

Слайд 20

Строки

"Образец строки"

"\n Текст \n разместится \n в 3-х строках дисплея"

(1)

Строки "Образец строки" "\n Текст \n разместится \n в 3-х строках дисплея"
В отдельной переменной. Ее следует передавать во все функции обработки данной строки (причем она может изменяться).
char str[32]; /* массив для строки */
int slen; /* брать первые slen букв в этом массиве */
...
func(str, &slen); /* ДВА аргумента для передачи ОДНОЙ строки */
...

(2) Хранить текущую длину в элементе str[0], а буквы - в str[1] ... и т.д.
(3) Не хранить длину НИГДЕ, а ввести символ-признак конца строки.
func(str); /* ОДИН аргумент - сам массив */

Слайд 21

"Шалтай-Болтай \
сидел на стене."

"Шалтай-Болтай \ сидел на стене."

Слайд 22

Другие операции

Оператор условия
?:

выражение_1 ? выражение_2 : выражение_3

sizeof – операция

Другие операции Оператор условия ?: выражение_1 ? выражение_2 : выражение_3 sizeof –
вычисления (в байтах) для объектов

Слайд 23

Приведение типов.

(тип) выражение – преобразует выражение к данному типу.

int n=5,

Приведение типов. (тип) выражение – преобразует выражение к данному типу. int n=5,
k=2; double d; int m; d=(double) n/ (double) k; m=n/k;/*d=2.5, m=2*/

Пример 1 Что напечатает следующая программа ?
main()
{ int x1,х2,х3,х4;
x1 = - 3 + 4 * 5 - 6; printf("%d\n",x1); (Операции 1.1)
x2 = 3 + 4 % 5 - 6; printf("%d\n",x2); (Операции 1.2)
x3 = - 3 * 4 % - 6 / 5; printf("%d\n",x3); (Операции 1.3)
x4 = ( 7 + 6 ) % 5 / 2; printf("%d\n",x4); (Операции 1.4)

Слайд 24

#include
#define PR(x)
printf("x = %.8g\t",(double)(x))
#define NL putchar('\n')
#define PRINT1(x1) PR(x1);NL
#define PRINT2(x1,x2) PR(x1);
PRINT1(x2)
main()
{

#include #define PR(x) printf("x = %.8g\t",(double)(x)) #define NL putchar('\n') #define PRINT1(x1) PR(x1);NL

double d=3.2, x;
int i=2, y;
x = (y=d/i)*2; PRINT2(x,y);
y = (x=d/i)*2; PRINT2(x,y);
y = d * (x=2.5/d); PRINT1(y);
x = d * (y = ((int)2.9+1.1)/d); PRINT2(x,y);
}

Слайд 25

Операции над адресами

&- определение адреса операнда;
* - обращение по адресу.

int var1,

Операции над адресами &- определение адреса операнда; * - обращение по адресу.
var2, z; /* целочисленные переменные */
int *pointer; /* указатель на целочисленную переменную */
var1 = 12;
var2 = 43;
pointer = &var1;

Слайд 27

если bip – переменная типа int, то &bip – адрес переменной, по

если bip – переменная типа int, то &bip – адрес переменной, по
которому она расположена в памяти;
Если char *prt –указатель на данное типа char, то *prt – это само данное типа char (символ).