Си тілінен дәрістер


I-ші тарау

Кіріспе

Өткен ғасырдың орта кездерінде есептеуіш техника саласында күрделі өзгерістер болып, Фортран, Бейсик, Паскаль және т. б. көптеген жоғары деңгейлі программалау тілдерінің жарыққа шыққаны белгілі.

1972 жылы АТ&Т атаулы Американың корпорациясы жаңа С (Си) программалау тілін дайындап шықты. Ол-математикалық есептеуге арналған және жүйелік программаларды құруға бейімделген, салыстырмалы оңай, жоғарғы құрылымдық және алгоритмдерді басшылыққа алып дайындалған процедуралық жоғары деңгейлі программалау тіл. Тілге жылдам орындалатын, жеке биттермен операция жасайтын операторлар да енгізілген. Олар арқылы байланыс порттарын, магниттік дискілерде жинақтауыштарды және т. б. аппараттық құралдарды басқаруға мүмкіндік жасалды. Ал, алғашқы кездерде жеке типті компьютерлердің аппараттық құралдарына қол жеткізе алатын машиналық командалармен жұмыс істейтін төменгі деңгейлі ассамблер тілі ғана болатын.

Си тілі бірте-бірте дамытылып, қазіргі кезде пайдаланылып келе жатқан, 1983 жылы дүние жүзі елдері басшылыққа алған ANSI C нұсқасы да жарыққа шықты ( ANSI - стандарттардың Америкалық ұлттық институты) . ANSI C тілінің түрлі нұсқаларына енгізілген стандартты кітапханалар да бар. Тілдің кемшілігі де жоқ емес, ол жүйелік және қолданбалы программаларды дайындауға бейім, бірақ айнымалыларға рұқсат етілмеген қол жеткізу механизмін қамтамасыз етпейді және құрылатын класты басқа кластың ішкі класы (мұрагер) ретінде жариялау мүмкін емес. Мұндай объектілі - бағдарлы программалау (ОБП ) тілдеріне енетін ерекшеліктерді ескеріп, Borland International Inc фирмасы С тілінің дамытылған жаңа Turbo C (Турбо Си) нұсқасын 1980 жылдардың басында жарыққа шығарды. Кейіннен Turbo C++ 3. 0 және олардың кеңейтілген Borland C++ нұсқалары да пайда болды: Borland C++ 2. 0, Borland C++ 3. 0, Borland C++ 3. 1, Borland C++ 4. 0 және т. б.

Олардың MS DOS, Windows операциялық жүйелерінде жұмыс істеу мүмкіндіктері жеткілікті.

Әдетте, жоғарыда аталған тілдер MS DOS жүйесінің NC (Norton Commander) қабықша прогаммасына енгізіліп қойылады. Онымен жұмыс істеу үшін алдымен берілетін негізгі командалар:

  • сәйкес каталогтан tc. exe файлын іске қосу. Мәзірлер енгізілген жүйе терезесі ашылады;
  • F10пернесін басып, курсорды мәзірдің File пунктіне жылжыту және File-New командасын беру (Турбо Си ++ тілі тышқанмен жұмыс істейді, сондықтан мәзірмен тышқан арқылы жұмыс істей беруге болады) ;
  • экранда прогамма терілген соң, компиляциялау:Alt+F9;
  • прогамманы сақтау (save) :F2;
  • программаны іске қосу (run) : Ctrl+F9;
  • жүйеден шығып, NC-ке өту: Alt+X.

1. 1 «Си » тіліне түсініктеме

Ескерту. 1. Си тілінде анықтамалық тек ағылшын тілінде жазылған. Оны орыс тіліне аудару үшін ‘Socrat’ не сол сияқты аудару программасын пайдалануға болады.

2. Программа ішінде қазақ алфавитін пайдаланып, қазақша мәтін енгізу үшін алдын-ала NC панелінде жазылған kazega. com файлын іске қосып қою керек. Программа ішінде оны теру үшін осы файлды іске қосу командасы: SHIFT + SHIFT. Латын алфавитіне қайтып өту үшін осы команданы қайта берсе болғаны.

3. Турбо СИ жүйесінде құрылған программаны Turbo C++ жүйесінде де пайдалануға болады. Бірақ, прогамма соңына return 0; операторын кірістіріп қойса болғаны.

4. Программа Си тілінде . С толықтыруымен, С++ тілінде . СРР толықтыруымен сақталады.

1. 2 СИ тілінің алфавиті

1) Латын алфавитінің үлкен және кішіәріптері (А, В, …, Z, a, b…, z) ;

2) Цифрлар:0, 1, 2, 3, . . . , 9

3) Арнайы белгілер:″, & % () * / [] + - < = > ! ? \ ; _ : Р ‘ ^ ~ {}

4) Көзге көрінбейтін символдар, олар сөйлемдерді бір-бірінен ажыратуда қолданады (мысалы, пробел (бос орын), табуляция, жаңа жолға өту) .

Түсіндіру мәтіндерінде (коментартяларда), жолдарда және символдық тұрақтыларда басқа литерлер де істетілуі мүнкін (мысалы, орыс немесе қазақ әліппесінің әріптері) .

Түсіндіру мәтіндерді /*және*/ белгілерінің ішіне жазылады. Мысалы /*Бұл бағдарламада Евклид есебін шешеді*/

Стандарттық СИ тілінде түсіндіру мәтіндерін бір-бірінің ішіне жазуға болмайды, яғни /*текст-1/*текст-2*/текст-3*/ көріністегі жазу-қате, “текст-3” түсіндіру мәтіні болып есептеледі.

СИ тілінде ликсимнің 6 класы бар:Таңдап алынатын және қолданылатын идентификаторлар, қызметші (түйінді) сөздер, тұрақтылар, жолдар (жолдық тұрақтылар), ажырату белгілері (пунктуация белгілері) .

1. 3 Идентификатор

Әріптердің, цифрлардың және сызықша “-”символдарының әріптен немесе символынан басталатын тізбегі СИ тілінің идентификаторы болып есептеледі.

Идентификаторға мысалдар:

KOM_16, Size88, _MIN, TIME, time

СИ тілінде үлкен және кіші әріптер бір-бірінен өзгешеленеді, яғни TIME және timе идентификаторлары басқа-басқа идентификаторлар.

Идентификаторлардың ұзындығы (яғни ондағы символдар саны) кез келген мөлшерде болуы мүнкін, бірақ компилятор иденфитикаторлардағы символдардың басынан бастап 31-ін ғана есепке алады. Кейбір компиляторлар кез келген иденфикатордың бастапқы 8 символын ғана есепке алады. Мұндай жағдайларда NUMBER_of_ROOM және NUMBER_OF_TEST

Иденфитикаторларының

айырмашылығы болмайды.

1. 5 Қызметші (түйінді) сөздер.

Тілдің құрамына алдын ала алдынан енгізілген және бағдарламашы тарапынан еркін таңдалып, қолдануға болмайтын иденфитикаторлар қызметші (түйінді) сөздер деп аталады. Қызметші сөздер берілгендердің типін, жадтардың классын, типтердің квалификаторларын, модизмкаторларды, псевдоайнымалыларды және операторларды анықтайды. Тілдің стандартында мынандай қызметші сөздер анықталады.

auto
break
case
char
const
continue
default
do
auto: double
break: else
case: enum
char: rxtern
const: float
continue: for
default: goto
do: if
auto: int
break: long
case: register
char: retura
const: short
continue: signed
default: size of
do: static
auto: struct
break: switch
case: typedef
char: union
const: unsigned
continue: void
default: volatile
do: while

Мағынасына қарай қызметші сөздер мынандай топтарға бөлінеді. Берілгендердің типтерін белгілеу үшін типтердің спецификаторлары және квалификаторлары қолданылады.

Типтердің спецификаторларына мыналар жатады:

char- символдық;

double- жылжымалы нүктелі екілік анықтықтағы нақты;

enum- санамалы тип-әр біріне атау және мән берілетін бүтін тұрақтыларды анықтау;

float- жылжымалы нүктелі нақты;

int- бүтін;

long- ұзын бүтін;

short- қысқа бүтін;

struct- структуралық (құрылымдық) тип;

signed- таңбалы, яғни таңбалы бүтін (жоғарғы бит таңбалы есептеледі) ;

union- біріктіруші тип;

unsigned- таңбасыз тип(жоғарғы бит таңбалы болып есептелмейді) ;

void- мәнінің болмауы;

typedef- типті қысқаша белгілеу синонимін ендіреді (типті қысқаша атаумен белгілеуді анықтайды) ;

Типтің квалификаторы:

Const- тұрақты мәнге ие болған объекттің квалификаторы, тек одан оқу мүнкін;

Volatile- мәні, бағдарламашының аңық бір нұсқауынсыз өзгеруі мүмкін болған объекттің квалификаторы;

Типтің квалификаторы компиляторға бағдарлама кодын оптимизациялау процессінде объекттерді ерекше қайта өңдеуге қажеттігі және (немесе) мүнкіндігі жөнінде ақпарат берілді.

Жадтың кластарын белгілеуде мына қызметші сөздер істетіледі :

auto - автоматтық;

extera -сыртқы;

register- регистрлік;

static -статикалық;

Операторларда құру үшін мына қызметші сөздер қолданылады:

break- циклден шығу;

continue- циклдің ағындық итерациясын аяқтау (кезектегі итерацияға өтіп циклді жалғастыру) ;

do- орындау (дейін циклді операторының тақырыбы) ;

for-үшін (параметрлік цикл операторының тақырыбы) ;

goto -шартсыз өту;

if-егер -шартты өту операторы;

return- қайту (функциядан) ;

switch- аударгыш, іске қосқыш;

while- әзірше(әзірше циклінің тақырыбы немесе do циклінің аяқталуы) .

Бұлардан басқа қызметші сөздерге мыналар жатады:

default- switch операторында қажетті вариант болмағандағы іс-әрекетті аңықтайды;

case- switch операторындағы варианты анықтайды:

else- if оператордың құрамында істеледі және тиісті тармақты анықтайды;

size of- операнттың өлшемін (байттарда) анықтау операциясы.

II-ші тарау

Айнымалылар және атаулы тұрақтылар

СИ тілінің негізгі ұғымдарының бірі объект яғни жадтың атауға ие болған аймағы ұғымы. Объекттің дербес көрінісі -бұл айнымалы. Айнымалыларға олардың типіне сәйкес әр түрлі типтегі мәндер беру мүмкін. Айнымалыға тиісті жад аймағында оған берілетін (меншіктелетін) мәннің коды орналастырылады. Айнымалының мәніне жағу үшін оның атауы атала жеткілікт, ал оның мәні орналасқан жад аймағына оның адресі арқылы жету мүмкін.

Бағдарламада әр бір айнымалыны пайдалану үшін ол алдынан анықталған болуы керек, яғни айнымалыға жаддан орын бөлінуі керек.

Мәндерінің типіне сәйкес, айнымаллар да үш түрлі болады: символдық, бүтін және нақты.

Айнымалардың анықталуының қарапайым формасы мынандай көріністе болады:

Тип айнымалы_ аттарының_ тізімі; мұндағы айнымалардың атауы-бұлар бағдарламашы тарапынан таңдалған идентификаторлар болып, олар тізімде бір-бірінен үтір белгісімен ажыратылған болады;

Тип-берілетін типтердің бірі.

Бүтін типті айнымалылар:

Char-ұзындығы 8 биттен кем болмаған бүтін;

short int- қысқа бүтін;

int- бүтін;

long -ұзын бүтін;

Бүтін типтердің әр бірі таңбалы (signed) немесе таңбасыз (unsigned) болып анықталуы мүмкін (Еш нәрсе айтылмаған жағдайда тип-signed) .

Бүтін айнымалыларда сипаттауға мысалдар:

char symbol, cc;

unsigned char, code;

int number, row;

unsigned long long_number; .

Әр бір сипаттаманың соныңда "нүктелі үтір" белгісі қойылуы шарт. СИ тілінің стандарты бойынша мынандай нақты айнымалылар ендірілген:

float -нақты бірінші анықтығы;

double - нақты екілік анықтығы;

long double -нақты максимал анықтығы;

ЭЕМ-де барлық нақты типтегі айнымалылардың мәндері жылжымалы нүкте түрінде бейнеленеді яғни санның мантиссасы және дәрежесі болады. (мысалы, 1. 21Е-04)

Нақты айнымалыларды сипаттауға мысалдар:

float x, X, cc3, pot_8;

double e, stop, B4;

Нақты айнымалылардың мәндерінің максимал (шекті) мәндері оларға сәйкес тұрақтылардың шекті мәндерімен сәйкес келеді.

Берілдгендердің негізгі типтері

Берілген типі
Өлшемі, бит
Мәндер диапозоны
Берілген типі: unsigned char
Өлшемі, бит: 8
Мәндер диапозоны: 0…255
Берілген типі: сhar
Өлшемі, бит: 8 (%S%c)
Мәндер диапозоны: -128…127
Берілген типі: enum
Өлшемі, бит: 16
Мәндер диапозоны: -32768…32767
Берілген типі: unsigned int
Өлшемі, бит: 16
Мәндер диапозоны: 0…65535
Берілген типі: short int (short)
Өлшемі, бит: 16 (%d)
Мәндер диапозоны: -32768…32767
Берілген типі: unsigned short
Өлшемі, бит: 16
Мәндер диапозоны: 0…65535
Берілген типі: int
Өлшемі, бит: 16 (%d)
Мәндер диапозоны: -32768…32767
Берілген типі: unsigne dlong
Өлшемі, бит: 32
Мәндер диапозоны: 0…4294967295
Берілген типі: long
Өлшемі, бит: 32
Мәндер диапозоны: -2147483648 . . . 2147483647
Берілген типі: float
Өлшемі, бит: 32 (%f)
Мәндер диапозоны: 3. 4E-38…3. 4E+38
Берілген типі: double
Өлшемі, бит: 64 (%ef)
Мәндер диапозоны: 1. 7-308…1. 7E+308
Берілген типі: long double
Өлшемі, бит: 80 (%ef)
Мәндер диапозоны: 3. 4E-4932…1. 1E+4932

2. 1Айнымалыға мәндерді меншіктеу:

Тип айнымалы-атауы==бастапқы _мән;

Осы әдіс- инициализация деп аталады. Меншіктеу операциясы-бағдарламаның орындалуы барысында амалға асырылады, ал инициялазацилау-айнымалыға жадтан орын ажыратылғанда (бөлінгенде) амалға асырылады. Инициязациялық анықтауға мысалдар:

Float Pi=3. 1415, CC=1. 23;

Unsigned int year=1997;

2. 2 Шекті мәндер тұрақтылары

Бүтін типтер үшін шекті мәндер -limits. h файлы.

1 - кесте .

Тұрақтының аты: Тұрақтының аты
Мәні: Мәні
Мағынасы: Мағынасы
Тұрақтының аты:

CHAR_BIT

SCHAR_MIN

SCHAR_MAX

UCHAR_MAX

CHAR_MIN

CHAR_MAX

MB_LEN_MAX

SHRT_MIN

SHRT_MAX

USHRT_MAX

INT_MIN

INT_MAX

UINT_MAX

LONG_MIN

LONG_MAX

ULONG_MAX

Мәні:

8

-128

127

255

′0′

SCHAR_MIN

UCHAR_MAX

SCHAR_MAX

1

-

-32768

32767

65535

-32768

32767

65535

-2147483648

2147483647

4294967295

Мағынасы:

Байттағы биттер саны

Signed char-дың минимал мәні

Signed char-дың максимал мәні

Unsigned char-дың максимал мәні

Char үшін минимал мәні

Char үшін максимал мәні

Көп байтты символдағы байттардың

минимал саны.

Short үшін минимал мәні

Short үшін максимал мәні

Unsigned short-тың максимал мәні

I

nt үшін минимал мәні

Int үшін максимал мәні

Unsigned int үшін максимал мәні

Long үшін минимал мәні

Long үшін максимал мәні

Unsigned long үшін максимал мәні

2. 3 Нақты типтердің тұрақтылары - float. h файлы

2-кесте.

Тұрақтының аты: Тұрақтының аты
Мәні: Мәні
Мағынасы: Мағынасы
Тұрақтының аты: 1
Мәні: 2
Мағынасы: 3
Тұрақтының аты:

FLT_RADIX

FID_DIG

FLT_EPSILON

FLT_MANI_DIG

FLT_MAX

FLT_MAX_EXP

FLT_MAX_10_EXP

FLT_MIN

FLT_MIN_EXP

FLT_MIN_10_EXP

DBL_DIG

DBL_EPSILON

DBL_MANT_DIG

DBL_MAX

DBL_MAX_EXP

DBL_MAX_10_EXP

DBL_MIN

DBL_MIN_EXP

DBL_MIN_10_EXP

Мәні:

2

6

1E-5

24

1E+37

128

38

1E-37

-125

38

10

1E-16

53

1E+308

1024

308

1E -308

-

-1021

-307

Мағынасы:

Экспоненциал түрде бейнелеу негізі,

Мысалы:2, 16

Дұрыс ондық цифр саны

Минимал х, мұнда 1. 0+х≠1. 0

(1. 192093Е-07)

Мантиссадағы FLT_RADIX негізі

бойынша цифрлар саны

Жылжымалы нүктелі максимал сан

(3. 402823Е+38)

Максимал n, мұндағы FLT_RADIXⁿ-1 өрнекті float типіндегі сан

Түрінде бейнеленуі мүмкін.

Максимал бүтін n, мұнда 10ⁿ float типі түрінде бейнелеуі мүмкін.

Float типіндегі жылжыиалы нүктелі минимал, нормал түрде келтірілген сан (1. 175494 Е-38)

Минимал n, мұнда 10ⁿ саны нормал көрініске келтірілген сан түріне бейнелеуі мүмкін.

Максимал бүтін n, мұнда 10ⁿ саны

float типі түріндебейнеленуі мүмкін.

Double типі үшін дұрыс ондық

цифрлар саны.

Минимал Х, мұнда 1. 0+х =1. 0 Х≠ 1. 0

және Х double типіне тиісті.

(2. 220446 Е-16)

FLT_RADIX негізі бойынша double типіндегі санның мантиссасындағы цифрлар саны.

Double типіндегі жылжымалы

типіндегі максимал сан.

(1. 797693 Е+308)

Манимал n, мұнда FLT_RADIXⁿ-1

саны double типіндегі сан көрінісінде

бейнеленуі мүмкін.

Максимал бүтін n, мұнда 10ⁿ double типі түрінде бейнеленуі мүмкін.

Double типіндегі нормал түрге келтірілген жылжымалы нүктелі минимал сан (2. 225074Е-308)

Минимал n, мұнда 10ⁿ саны нормал түрге келтірілген double типіндегі

сан көрінісінде бейнеленуі мүмкін.

Минимал теріс n саны, мұнда 10ⁿ

саны double типіндегі сандардың анықталу обылысында жатады .

Бұл кестедегі FLT_ префиксі float типіне, ал DBL_префиксі

double типіне сәйкес келеді. Жақшаның ішіне кейбір тұрақтылар

үшін олардың Borland 3. 1 С+1тегі бейнеленуі үлгілері көрсетілген.

2. 4 СИ бағдарламалау тілінің математикалық стандарт функциялары

3-кесте

Функция: Функция
Протитип және олардың қызметтерінің қысқаша сипаттамасы: Протитип және олардың қызметтерінің қысқаша сипаттамасы
Функция: 1. авs
Протитип және олардың қызметтерінің қысқаша сипаттамасы:

Int abs (int i) ;

Бүтін аргумент i-дің абсалют мәнән қайтарады.

Функция: 2. acos
Протитип және олардың қызметтерінің қысқаша сипаттамасы:

Double acos(double x) ;

Арккосинус функциясы. Аргументтің мәні -1 мен +1

аралығында болуы қажет, яғни -1 ≤ х ≤+1

Функция: 3. atan
Протитип және олардың қызметтерінің қысқаша сипаттамасы:

Double atan (double x) ;

Арктангенс функциясы.

Функция: 4. atan 2
Протитип және олардың қызметтерінің қысқаша сипаттамасы:

Double atan2 (double у, double x) ;

У/х мәнінің арктангенстің функциясы.

Функция: 5. cads
Протитип және олардың қызметтерінің қысқаша сипаттамасы:

Double cabs (struct complex znum) ;

Znum комплекс санының абсалют мәнін есептейді. Сomplex

Структурасының ( типінің ) анықталуы-math. h файылында

Функция: 6. Ceil
Протитип және олардың қызметтерінің қысқаша сипаттамасы:

Double ceil (double x) ;

Х аргументтен кіші болмаған ең жақын бүтін санды

есептейді ( анықтайды )

Функция: 7. Сos
Протитип және олардың қызметтерінің қысқаша сипаттамасы:

Double cos (double x) ;

Косинус функциясы. Бұрыштың ( аргументтің ) мәні

радиандуда берілуі тиіс

Функция: 8. Exp
Протитип және олардың қызметтерінің қысқаша сипаттамасы:

Double еxp (double x) ;

еx-тің мәнін есептейді ( экспоненциалдық функция )

Функция: 9. fabs
Протитип және олардың қызметтерінің қысқаша сипаттамасы:

Doubl fabs (double x) ;

Нақты түрдегі х аргументінің абсалют мәнін екілік дәлдікпен қайтарады.

Функция: 10. floor
Протитип және олардың қызметтерінің қысқаша сипаттамасы:

Doubl floor (double x) ;

Х-тің мәнінен үлкен болмаған ең үлкен бүтін санды

анықтайды. Оны double түрінде өрнектейді

Функция: 11. fmod
Протитип және олардың қызметтерінің қысқаша сипаттамасы:

Doubl fmod (double x, double у) ;

Х-ті у-ке бөлгендегі қалдықты қайтарады

Функция: 12. frexp
Протитип және олардың қызметтерінің қысқаша сипаттамасы:

Doubl frexp (double value, int exp) ;

Жылжымалы нүктелі value санын нормал түрге келтірілген мантиссаға және бүтін бөлігін 2-нің дәрежесі көрінісінде ажыратады (бөледі)

Функция: 13. hypot
Протитип және олардың қызметтерінің қысқаша сипаттамасы:

Doubl hypot ( double x, double у) ;

Катеттері х, у болған тік бұрышты үшбұрыштың z гипотенузасын

Есептейді (zІ=xІ+yІ)

Функция: 14. labs
Протитип және олардың қызметтерінің қысқаша сипаттамасы:

Long doubl labs ( long x) ;

long x бүтін аргументтің абсалют мәнін есептейді

Функция: 15. dexp
Протитип және олардың қызметтерінің қысқаша сипаттамасы:

doubl ldexp (double v, int e ) ;

v *2e өрнектің мәнін есептейді.

Функция: 16. log
Протитип және олардың қызметтерінің қысқаша сипаттамасы:

double log(double x) ;

Натурал логарифмнің( lnx) мәнін есептейді

Функция: 17. log 10
Протитип және олардың қызметтерінің қысқаша сипаттамасы:

double log 10 (double x) ;

Ондық логарифмнің ( lg x) мәнін есептейді

Функция: 18. Modf
Протитип және олардың қызметтерінің қысқаша сипаттамасы:

Double modf (duble value, double*iptr) ;

Жылжымалы нүктелі value санын бүтін және бөлшек

бөлімдерге ажыратады. Санның бүтін бөлігі жадтың iptr сілтейтін аймағына жазылады, ал бөлшек бөлігінің мәні ф-я қайтаратын мәнге тең болады.

Функция: 19. Poly
Протитип және олардың қызметтерінің қысқаша сипаттамасы:

double poly (double x, int n, double c [ ] ) ;

c[n] xⁿ +c[ n-1] xⁿЇ№ + . . . +c [ 1] x+c [0] полиномының мәнін есептейді.

Функция: 20. Pow
Протитип және олардың қызметтерінің қысқаша сипаттамасы:

double pow (double x, double у) ;

x y өрнектің мәнін есептейді

Функция: 21. Pow 10
Протитип және олардың қызметтерінің қысқаша сипаттамасы:

double pow 10 ( int p) ;

10p өрнектің мәнін есептейді.

Функция: 22. Sin
Протитип және олардың қызметтерінің қысқаша сипаттамасы:

double sin (double x) ;

Синустың ф-ясы. Бұрыштың( аргументтік) мәні радиандарға беріледі.

Функция: 23. Sinh
Протитип және олардың қызметтерінің қысқаша сипаттамасы:

double sinh (double x) ;

x аргументтің гипербалалық синусының мәнін есептейді.

Функция: 24. Sgrt
Протитип және олардың қызметтерінің қысқаша сипаттамасы:

double sgrt (double x) ;

х аргументтік оң мәнінің квадрат түбірін есептейді.

Функция: 25. Tan
Протитип және олардың қызметтерінің қысқаша сипаттамасы:

double tan (double x) ;

Тангенстің ф-ясы. Бұрыштың(аргументтің) мәні радиандарға беріледі.

Функция: 26. Tanh
Протитип және олардың қызметтерінің қысқаша сипаттамасы:

double tanh (double x) ;

х аргументтің гипербалалық тангенсінің мәнін есептейді.

III-тарау

Операциялар және олардың түрлері

Өрнектерді құрастыруда және содан кейін мәнін есептеуде операциялар қолданылады. Бір операцияны бейнелеу үшін, көп жағдайларда бірнеше операциялар істеледі. Кестеде, СИ тілінің стандарты бойынша анықталған операциялардың барлық белгілері (таңбалары) келтірілген . Кестеде операциялар топтары бөлініп, олардың топтарға сәйкес рангтері ( реті) көрсетілген .

3. 1Операциялар приоритеті ( рангі)

Рангі
Операциялар
Ассоциятивтігі
Рангі: 1
Операциялар: ( ) [ ] . .
Ассоциятивтігі:
Рангі: 2
Операциялар: ! ~+ -++ -&* ( тип ) size of
Ассоциятивтігі:
Рангі: 3
Операциялар: */% ( мультипликативтік бинарлы)
Ассоциятивтігі:
Рангі: 4
Операциялар: + - ( аддитивтік бинарлы )
Ассоциятивтігі:
Рангі: 5
Операциялар: << >> ( разрядтық жылжымалы )
Ассоциятивтігі:
Рангі: 6
Операциялар: < <= > => ( қатынас )
Ассоциятивтігі:
Рангі: 7
Операциялар: = != ( қатынас )
Ассоциятивтігі:
Рангі: 8
Операциялар: & ( разрядтық конъюнкция « және» )
Ассоциятивтігі:
Рангі: 9
Операциялар: ^ ( разрядтық жоғалту «немесе» )
Ассоциятивтігі:
Рангі: 10
Операциялар: ( разрядтық дизъюнкция «немесе»)
Ассоциятивтігі:
Рангі: 11
Операциялар: && ( конъюнкция «және»)
Ассоциятивтігі:
Рангі: 12
Операциялар: ( дизъюнкция «немесе»)
Ассоциятивтігі:
Рангі: 13
Операциялар: ?: ( шартты операция)
Ассоциятивтігі:
Рангі: 14
Операциялар: = * = / = % = + = - = & = ^ = = <<=>> =
Ассоциятивтігі:
Рангі: 15
Операциялар: , ( «үтір» операциясы)
Ассоциятивтігі:

3. 2 Ұнарлық ( бір орыңды ) операциялар

Бір орынды префикстік және постфикстік операцияларды бейнелеу үшін мынадай символдар істеледі:

&- операцияның адресін анықтау операциясы (2 ранг)

*- адрес бойынша қатынас жасау операциясы , яғни сілтемені ашу, басқаша айтқанда атын анықтау операциясы . Мұнда сілтеме (көрсеткіш) операнд болуы керек. (2 ранг) .

... жалғасы

Сіз бұл жұмысты біздің қосымшамыз арқылы толығымен тегін көре аласыз.
Ұқсас жұмыстар
Геологиялық барлау жұмыстарына және пайдалы қазба кенорындарына өнеркәсіптік игеруге салынған инвестицияларының инвест жобаның тиімділігін бағалау
Жастардың өзіне – өзі қол жұмсаудың алдын алу шаралары
Ортаның факторларына организмдердің адаптациясы
Электрондық оқулықтың жұмыс тәртіптері
Электрондық оқулықтардың қолдануы
Python тілі жайында
Мұнай-газ өнеркәсібінде жобаларды инвестициялық талдау
Сұйықтық қозғалысының ламинарлық режимі
Өлшеу қателіктері және өлшеу құралдары
PHP және MySql
Пәндер



Реферат Курстық жұмыс Диплом Материал Диссертация Практика Презентация Сабақ жоспары Мақал-мәтелдер 1‑10 бет 11‑20 бет 21‑30 бет 31‑60 бет 61+ бет Негізгі Бет саны Қосымша Іздеу Ештеңе табылмады :( Соңғы қаралған жұмыстар Қаралған жұмыстар табылмады Тапсырыс Антиплагиат Қаралған жұмыстар kz