33
Функция тақырыбынан соң, жҥйелі жақша ішінде оның операторлары, яғни
ішкі тҧлғасы (денесі) орналасады. Функция тҧлғасы дегеніміз – анықтаулар, си-
паттамалар, орындалатын операторлар жиынынан тҧратын, жҥйелі жақшаға
алынған символдар тізбегі. Әрбір анықтама, сипаттама немесе оператор нҥктелі
ҥтірмен аяқталады.
Анықтаулар – программадағы ӛңделетін мәліметтерді бейнелеуге қажет
объектілер (объект – компьютер жадының ат қойылған аймағы, мысалы,
айнымалы) енгізеді. Анықтаулар тӛмендегідей тҥрде болады:
int y = 10; // бҥтін сан тҥріндегі ат қойылған константа
float x; // нақты (аралас сан тҥріндегі) айнымалы
Сипаттамалар – компиляторға программаның басқа бӛліктерінде жазылған
объектілер мен функциялардың аттары және қасиеттері жайлы мәлімет береді.
Операторлар – программаның орындалатын әрбір қадамында қандай іс-
әрекеттер атқарылатынын анықтайды.
С программасының мысалы:
#include // препроцессорлық директива
void main()
// функция
тақырыбы
{
// функция тҧлғасының басы
printf(“Hello!”); // экранға
Hello! сӛзін шығару
}
// соңы
Келесі 2.2-суретте С программасының жалпы қҧрылымы кӛрсетілген.
Суретке сәйкес, С программасы бірнеше функциялардан (main, f1, f2…)
қҧралады және олардың біреуі міндетті тҥрде main() болуы қажет. Жалпы
кез келген функция оның тақырыбы мен тҧлғасынан (денесінен) тҧрады.
С-программа
# тақырып
main()
f1
f2
Операторлар
Операторлар
Операторлар
2.2-сурет. С программасының қҧрылымы
34
Программадағы кез келген функция тақырыбы препроцессордың директи-
васынан және функция атынан тҧрады. Функция атына жалғасып, жақша ішіне
параметрлер жазылуы мҥмкін, кейде параметрлер болмайды, ондайда жақша
ішіне ешнәрсе жазылмайды.
Функция тҧлғасы операторлардан тҧрады, олар жҥйелі жақшалармен шекте-
леді. Әрбір оператордан кейін
; таңбасы қойылады.
Енді тағы бір программа мысалын келтірейік:
/* Герон формуласы арқылы үшбұрыш ауданын табу */
#include /*
енгізу/шығару директивасы */
#include /*
математикалық функциялар директивасы */
main() /*
басты функцияны қолдану */
{ int a,b,c; /*
бҥтін айнымалыларды сипаттау */
float p,s; /*
нақты айнымалыларды сипаттау */
printf("\nҮшбұрыш қабырғаларын енгіз: \n");
scanf("%d%d%d",&a,&b,&c);
p=(a+b+c)/2.0;
s=sqrt(p*(p-a)*(p-b)*(p-c));
printf("s=%f",s);
}
Программада тҥсініктемелер беру ҥшін /* және */ таңбалары қолданылады,
олардың ішіне қазақша, орысша, ағылшынша сӛздер жазуға болады. Ал жол
соңындағы тҥсініктемелер қос қиғаш сызықтан (//) кейін жазылады, бҧл тәсіл
С++ тілінің қҧрылымынан алынған.
Препроцессор директивалары
#include сӛзінен кейін жазылады,
stdio.h
тіркесі енгізу/шығару операциялары орындалатынын білдіреді (2.3-сурет). Ал
math.h сӛз тіркесі программада математикалық функциялар пайдаланыла-
тынын кӛрсетеді.
Басты функция
main() аргументсіз жазылған, сол себепті жақша ішінде
ешнәрсе кӛрсетілмеген. Ал функция тҧлғасы, яғни ішкі қҧрамы операторлардан
(немесе басқа функциялардан) тҧруы тиіс.
Int тҥйінді сӛзі
a,b,c айнымалы-
тақырып
#include
main()
функция тұлғасы
int m;
m=1;
printf (“%d бастапқы мәндер \n”, m);
препроцессор
директивасы
функция аты
меншіктеу
операторы
сипаттау жолы
стандартты
функцияны шақыру
2.3-сурет. С программасының қҧрамы