Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Лекции_по_программированию.doc
Скачиваний:
79
Добавлен:
02.04.2015
Размер:
4.77 Mб
Скачать

Приложение коды клавиш

Латинский алфавит

A– 65,B– 66, С – 67,D– 68, …,Z– 90;

а – 97, b– 98, … ,z- 122;

Русский алфавит (Кодировка некотрый символов совпадает с англ)

А – 70, Б – 60,

F1 – 1083

F2 – 1084

F3 – 1085

F4 – 1086

F5 – 1087

F6 – 1088

F7 – 1089

F8 – 1090

F10 –1091

F11 – 1092

F12 –1093

ESC – 27

ENTER – 13

LEFT - 1099

RIGHT – 1101

UP – 1096

DOWN 1104

BCSPASE - 8

DEL – 1107

Краткий справочник по Си

Алфавит языка Сисоставляют 52 (заглавные и прописные) латинские буквы, 10 арабских цифр, 30 знаков и символов:

A

B

C

D

E

F

G

H

I

J

K

L

M

N

O

P

Q

R

S

T

U

V

W

X

Y

Z

a

b

c

d

e

f

g

h

i

j

k

l

m

n

o

p

q

r

s

t

u

v

w

x

y

z

0

1

2

3

4

5

6

7

8

9

+

плюс;

_

пробел;

-

минус;

(

левая круглая скобка;

*

звездочка;

)

правая круглая скобка;

/

косая черта;

[

левая квадратная скобка;

\

обратная косая черта;

]

правая квадратная скобка;

<

меньше;

{

левая фигурная скобка;

>

больше;

}

правая фигурная скобка;

=

равно;

?

знак вопроса;

.

точка;

!

восклицательный знак;

,

запятая;

|

вертикальная черта;

;

точка с запятой;

~

волнистая черта;

:

двоеточие;

^

угол вверх;

'

апостроф;

#

решетка;

"

кавычки;

&

амперсант;

_

подчеркивание;

%

процент.

К основным ключевым словам относятся:

auto

автоматический

if

если

break

завершить

int

целое

case

вариант

long

длинное

char

символьный

register

регистровый

continue

продолжить

return

возврат

default

по умолчанию

short

короткий

do

выполнять

sizeof

размер

double

двойной точности

static

статический

else

иначе

struct

структура

entry

вход

switch

переключатель

extern

внешний

typedef

определение типа

for

для

union

объединение

float

плавающий

unsigned

без знака

goto

перейти

while

пока

Типы переменныхопределяют размеры ячеек для хранения их значений.

Описатель

Наименование типа

Число байт (бит)

short int

Короткий целый

2 (16)

int

Целый

2 (16)

long int

Длинный целый

4 (32)

float

Плавающая точка

4 (32)

double

Двойная точность

8 (64)

char

Символьный

1 (8)

Библиотека системных функцийязыка Си

Математическая запись

Вызов функции

Наименование функции

ln x

log(x)

Натуральный логарифм

log10(а)

Десятичный логарифм

e0.5

exp(0.5)

Экспонента

sqrt(y)

Корень квадратный

sin x

sin(х)

Синус

cos в

cos(в)

Косинус

tg(x+с)

tan(x+с)

Тангенс

arcsin x

asin(x)

Арксинус

arccos в

acos(в)

Арккосинус

arctg с

atan(c)

Арктангенс

xy

pow(x,y)

Возведение в степень

| x |

fabs(x)

Нахождение абсолютного значения х

Правила записи и вычисления арифметических выражений

  1. Арифметические выражения записываются одноэтажно. Например, 0.35+а*2-cos(b)/(PI+2).

  2. Все знаки арифметических операций указываются явно. Например, А+В+С не равно АВ+С, так как во втором случае подразумевается переменная с именем АВ, а не две переменные.

  3. Запись подряд двух знаков операций, как правило, запрещается (исключение см. разд. 6.2.1). Обойти это правило можно с помощью круглых скобок. Например, a*(-b).

  4. Арифметическое выражение может быть любой сложности. Минимально может состоять из одного операнда. Реально определяется математической моделью задачи. Если зависимости математической модели относительно громоздки, рекомендуется представлять одну сложную зависимость несколькими простыми, – содержащими не более 5 – 7 операций в каждой.

  5. Последовательность выполнения операций в арифметическом выражении соответствует принятой в математике:

  • выражения в скобках;

  • вычисления функций;

  • умножения, деления;

  • сложения, вычитания.

Например, выражение 0.2-cos(0.5)*pow(v,3) выполняется в следующем порядке: вычисление косинуса, возведениеvв куб, умножение первого результата на второй и, наконец, вычитание из константы 0.2 константы, полученной после умножения.

  1. Одноранговые операции выполняются слева направо. Например, выражение А*В/С*3 будет выполняться в порядке записи.

  2. При необходимости нарушить последовательность выполнения действий используют скобки. Например, А+В/(С+D) или (0.2-v)*cos(0.5).

  3. При делении целого операнда на целый от частного используется только целая часть. Так, результатом вычисления 5/2 будет целая константа 2, а выражения 2/5 – ноль. Для получения истинного результата необходимо сделать вещественными оба операнда или один из них. Например, 5./2. или 5./2 (5/2.).

  4. Возведение в степень (pow(a,x)), если показатель (х) целочисленный, выполняется методом последовательного умножения. Если показатель степени вещественный, возведение осуществляется по формуле ax = еxlna. Использование функций (экспоненты и логарифма) приводит к получению приближенного значения результата.

  5. В арифметическом выражении желательно использовать операнды одного типа. Например, i+23*k, если переменные i, k – целые или x*2.-0.36/cos(y), если переменные x, y – вещественные. В первом случае результатом будет целая константа, во втором – вещественная константа двойной точности (перед использованием автоматически все вещественные операнды приводятся к типу double).

  6. Допускается применение смешанных арифметических выражений. При этом наличие хотя бы одного вещественного операнда приводит к получению результата (константы) с двойной точностью. Например, при вычислении выражения 4/z+i*k-0.07*sin(3./b) результатом будет вещественная константа двойной точности, если переменные i, k – целые, аz, b – вещественные. Аналогично, возможно получение дробного результата деления целых переменных использованием дополнительного операнда в виде вещественной константы (1.). Так, если переменныеiиkописаны как целые, то результат выраженияi/kесть целая константа (целая часть частного), а результат выраженияi*1./kесть вещественная константа двойной точности. Следует помнить, что наличие операции деления двух целых операндов в смешанном выражении может привести к неверному результату. Например, вычисление выражения 0.02 + 3/5 - 0.01 дает неверный результат (0.01) т.к. второе слагаемое (частное от деления целой константы 3 на целую константу 5) – равно нулю.

  7. Деление по модулю % используют в целочисленной арифметике. Результат операции– остаток от деления целого операнда, записанного слева от знака операции на операнд справа от него. Например, выражение 13%5 дает результат 3, поскольку 13=5*2+3, где 3 – остаток от деления.

  8. Вычисление корня n-ой степени при n>2 требует предварительного преобразования его к виду , а затем использование функции возведения в степень. Например, зависимостьдолжна быть преобразована к виду, а затем сформирована как вызов функции pow(x,1./3.) Попытка вычисления функции вида pow(x,1/3) приведет к получению неверного результата – единицы т.к. показатель степени (1/3) после деления станет равен нулю.

Оператор присваивания

Структура оператора:

П=А; (П=L;)

где П – имя переменной;

А (L) – арифметическое (логическое) выражение;

= – символ операции присваивания;

; – символ оператора.

Оператор ввода

Структура оператора:

scanf(“управляющая строка”, АП1[, АП2, . , АПn] );

, где scanf – имя функции (считать);

“управляющая строка” – список спецификаторов вводимых переменных, оформленный в виде символьной строки;

АП1АП2АПn– список адресов вводимых переменных;

, , – разделители списка;

( ) – ограничители аргументов функции scanf;

[ ] – признак необязательности содержимого;

; – символ оператора.

Простейший спецификатор ввода точность не учитывает и имеет вид:

%[длина]тип

, где % – признак спецификатора;

длина – целая константа без знака, определяющая количество считываемых символов численного значения;

тип – буквенное обозначение типа переменной;

[ ] – признак необязательности содержимого.

Тип переменной

Обозначение типа

Формат ввода

int

d

Целое десятичное

long

ld

Длинное целое десятичное

float

f (e)

Вещественное десятичное с обычной точностью

double

lf

Вещественное десятичное с двойной точностью

Оператор вывода на дисплей

Структура оператора:

printf(“управляющая строка” [, П1, ..., Пn] );

, где printf – имя функции (“напечатать”);

“управляющая строка” – список спецификаторов выводимых переменных, оформленный в виде символьной строки;

П1...Пn– список идентификаторов выводимых переменных;

, , – разделители идентификаторов в списке;

( ) – ограничители аргументов функции printf;

[ ] – признак необязательности содержимого;

; – символ оператора.

Структура спецификатора вывода (упрощённая):

%[длина][.точность]тип,

, где % – признак спецификатора;

длина – целая константа без знака, определяющая общий размер поля выводимой переменной (количество разрядов численного значения с учетом разделителя, знаков и буквы Е (е), если они имеются);

точность – целая константа без знака, определяющая число разрядов дробной части мантиссы численного значения переменной;

. – разделитель длины и точности;

тип – буквенное обозначение типа переменной;

[ ] – признак необязательности содержимого.

При выводе часто используют следующие обозначения типа

Тип переменной

Обозначение типа

Формат вывода

int

d

Десятичное целое со знаком

long

ld

Десятичное целое со знаком

unsigned

u

Десятичное целое без знака

int

o

Восьмеричное целое без знака

int

x

Шестнадцатеричное целое без знака

double

f (lf)

Плавающее со знаком в формате: [-]dddd.dddddd Количество цифр перед десятичной точкой зависит от величины числа, а число разрядов после нее соответствует заданной точности или равно шести

double

e (E)

Плавающее со знаком в формате:

[-]d.dddddde[+][-]d[dd]

char

c

Одиночный символ

cтрока

s

Последовательность символов до первого нулевого (\0)