Программалау тілдері жоғары оқу орындарына арналған оқулық



жүктеу 2,9 Mb.
Pdf просмотр
бет14/82
Дата19.11.2018
өлшемі2,9 Mb.
#20460
түріПрограмма
1   ...   10   11   12   13   14   15   16   17   ...   82

 
32 
 #define ZERO 0.0 
Соңғы жол программадағы ZERO сӛзінің әрқайсысы 0.0 санына ауысатынын 
білдіреді. 
2) #include <тақырыптық файл аты> – программа мәтініне стандарт-
ты  кітапханамен  бірге  берілетін  «Тақырыптық  файлдар»  каталогынан  мәтін 
қосылатынын  білдіреді.  Тақырыптық  файлдардың  біреуінде  С  тілінің  әрбір 
кітапханалық  функциясының  атына  сәйкес  сипаттамасы  болады.  Тақырыптық 
файлдар тізімі тіл стандартымен анықталған.  Include директивасын пайдалану 
соған  сәйкес  стандартты  кітапхананы  іске  қоспайды,  ол  тек  кӛрсетілген 
тақырыптық  файлдан  алынатын  керекті  сипаттамаларды  программа  мәтініне 
енгізуге мҥмкіндік береді. Кітапханадан алынатын қажетті кодтар программаға 
компиляциядан кейін орындалатын біріктіру кезеңінде қосылады. Тақырыптық 
файлдарда стандартты функциялардың барлығының да сипаттамалары болған-
мен,  программа  кодына  тек  соның  ішінде  қолданылатын    функциялар  ғана 
кірістіріледі.   
Препроцессорлық ӛңдеу кезінде программа мәтініндегі препроцессор дирек-
тивалары  (#include,  #define)  анықталып,  программаға  тақырыптық 
файлдар  каталогынан  мәтіндік  файлдар  қосылады  немесе  кейбір  сӛздерді 
алмастыру орындалады. С тілінің стандарты бойынша анықталған функциялар 
бір тақырыптық файлда анықталады. 
Препроцессорлық ӛңдеу орындалғаннан кейін программа мәтінінде бірде бір 
препроцессорлық директива қалмайды. 
Компиляция  кезінде  программа  компьютерге  тҥсінікті  кодтарға  тҥрлендірі-
леді. Егер осы тҥрлендіру кезінде стандартқа сәйкес келмейтін қателер кездес-
се, оны компилятор бірден кӛрсетеді. Ал қате жоқ болса, компилятор объектілік 
код немесе объектілік модуль болып табылатын программа мәтінін береді. 
Барлық программа бӛліктері – функциялар компиляциядан ӛткен соң, объек-
тілік модульдер біріктіргішке (компоновщикке) беріледі. Ол модульдерді бірік-
тіріп,  оған  стандартты  кітапхана  функцияларын  қосады  да,  функцияда  қате 
болса, соны анықтайды. Біріктіргіш жҧмысы нәтижесінде программаның екілік 
сандар  тҥрінде  жазылған  атқарылатын  машиналық  коды  жасалады  да,  ол 
орындалып жҧмыс нәтижесін береді. Барлық программалау тілдері осы схема-
мен жҧмыс істейді.  
Программа сипаттамалар мен анықтамалардан, операторлардан қҧрастырыл-
ған бірнеше функциялар жиынынан тҧратын мәтін тҥрінде болады. Сол функ-
циялар  ішінде  main  атты  басты  функция  міндетті  тҥрде  болуы  тиіс.  Ондай 
функциясыз программа орындалмайды. Функция атының алдында сол функция 
қайтаратын  мәннің  типі  (нәтиже  типі)  кӛрсетіледі.  Егер  функция  ешқандай 
нәтиже  қайтармайтын  болса,  онда  void  типі  кӛрсетіледі,  мысалы:  void 
main()
. Әрбір функцияның, соның ішінде main функциясының да, параметр-
лері болуы тиіс, бірақ олар жоқ та болуы мҥмкін, ондай жағдайда жақша ішінде 
(void) сӛзі кӛрсетіледі. 


 
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-сурет. С программасының қҧрамы 


жүктеу 2,9 Mb.

Достарыңызбен бөлісу:
1   ...   10   11   12   13   14   15   16   17   ...   82




©g.engime.org 2024
әкімшілігінің қараңыз

    Басты бет
рсетілетін қызмет
халықаралық қаржы
Астана халықаралық
қызмет регламенті
бекіту туралы
туралы ережені
орталығы туралы
субсидиялау мемлекеттік
кеңес туралы
ніндегі кеңес
орталығын басқару
қаржы орталығын
қаржы орталығы
құрамын бекіту
неркәсіптік кешен
міндетті құпия
болуына ерікті
тексерілу мемлекеттік
медициналық тексерілу
құпия медициналық
ерікті анонимді
Бастауыш тәлім
қатысуға жолдамалар
қызметшілері арасындағы
академиялық демалыс
алушыларға академиялық
білім алушыларға
ұйымдарында білім
туралы хабарландыру
конкурс туралы
мемлекеттік қызметшілері
мемлекеттік әкімшілік
органдардың мемлекеттік
мемлекеттік органдардың
барлық мемлекеттік
арналған барлық
орналасуға арналған
лауазымына орналасуға
әкімшілік лауазымына
инфекцияның болуына
жәрдемдесудің белсенді
шараларына қатысуға
саласындағы дайындаушы
ленген қосылған
шегінде бюджетке
салығы шегінде
есептелген қосылған
ұйымдарға есептелген
дайындаушы ұйымдарға
кешен саласындағы
сомасын субсидиялау