Си бағдарламалау тілінің негізгі элементтері


Жұмыс түрі: Реферат
Тегін: Антиплагиат
Көлемі: 19 бет
Таңдаулыға:
Қазақстан Республикасының Білім және Ғылым министрлігі
Батыс Қазақстан инженерлік-технологиялық университеті
КУРСТЫҚ ЖҰМЫС
Тақырыбы:
«Си бағдарламалау тілінің негізгі элементтері»
Орындаған:
Тексерген:
Орал, 2012ж.
Мазмұны
Кіріспе . . . 3
1 бөлім. С/С++ бағдарламалау тілі
1. 1. С\С++ программалау тілдерінің мүмкіндіктері мен
ерекшеліктеріне шолу . . . 5
1. 2. Тілдің негізгі элементтері . . . 7
2. С/С++ тілдерінің негізгі элементтері, тұрақтылар
2. 1. Қолданылатын таңбалар . . . 10
2. 2. Константалар . . . 14
2. 3. Идентификатор және түйінді сөздер . . . 19
Қорытынды . . . 21
Пайдаланылған әдебиеттер тізімі . . . 23
КIРIСПЕ
С++ тiлi BCPL және B тiлдердiң негiзiнде құралған және Си тiлiнен дамыған. BCPL тiлi компилятордан жазуға және операциялық жүйенi бағдарламамен қамтамасыз етуге арналған. Бұл тiлдi 1967 жылы Мартин Ричард ойлап тапқан. Кен Томпсон В тiлiнiң көптеген мүмкiндiктерiн BCPL дубликатында және В тiлiн UNIX операциялық жүйелерiнiң алғашқы версияларын құру үшiн 1970 жылы Bell Laboratories-те DEC PDP-7 компьютерiнде қолданылды. BCPL және В тiлдерi қолдануға тиiмсiз болды. Онда мәлiметтiң әрбiр элементi жадыда бiр сөздiң орнын алады және мәлiмет элементтерiн өңдеуде бағдарламашыларға ауыртпалығын тигiздi.
Си тiлi В тiлiнiң негiзiнде дамыды. Си тiлiн Bell Laboratories-те 1972 жылы Деннис Ритчи DEC PDP-11 компьютерiнде жасады. Си BCPL және В тiлдерiнiң көптеген маңызды концепцияларын және мәлiмет типтерiн және басқа да қасиеттерiн қолданды. Си тiлi UNIX операциялық жүйесiн өңдеудегi тiл ретiнде кеңiнен танымал болды. Қазiргi таңда барлық операциялық жүйелер Си және Си++ тiлдерiнде жазылған. Соңғы он жылдықта Си тiлi көптеген компьютерлерде қолайлы болды.
Си++ Си тiлiнiң кеңейтiлген түрi. Оны 1980 жылдың басында Бъерн Строустроп Bell Laboratories-сында өңдеп шығарған. Си++ тiлi Си тiлiнiң бiрқатар қасиеттерiн реттеудi қамтамасыз етедi және ең маңыздысы объектi-бағдарланған бағдарламалық мүмкiндiгiн қамтамасыз етедi. Бұл бағдарламамен қамтамасыздандыру әлемiндегi революциялық идея болып табылады.
Басқада бағдарламалық тiлдер көптеген қажеттi эффект бере алмағандықтан, Си++ алғашқыда ең жоғарғы деңгейдегi нақтылы оқиғалар үлгiлерiн өңдеу мақсаты үшiн құрылған тiл болды.
Курстық жұмыстың мақсаты: Си бағдарламалау тіліндегі негізгі элементтер туралы түсінік алу. Си тіліннің негізгі элементтері: литерлер, символдары, тұрақтылар, айнымалылар, типтері т. б. таныстыру.
Курстық жұмыстың міндеттері: С/С++ бағдарламалау тілінің негізгі элементтерімен және С/С++ тіліндегі типтер, тұрақтылар, глобалды және локалды айнымалылар туралы түсінік беру. Си тілінің мүмкіндіктерімен таныстыру.
Курстық жұмыстың құрылымы: курстық жұмыс кіріспеден, екі бөлімнен және қорытынды мен пайдаланылған әдебиеттерінен тұрады.
1 бөлім. С/С++ бағдарламалау тілі
1. 1. С\С++ программалау тілдерінің мүмкіндіктері мен ерекшеліктеріне шолу
Деннис Ритчи жазған Си тілінің таралу себебі: салыстырмалы түрде «төмен деңгейлі» тіл, сондықтан алгоритм жұмысының әрбір бөлімін бақылау мүмкіндігі бар және жоғары деңгейлі тілдер принцптері енгізілгендіктен, нақты бір компьютердің архитиктурасы ерекшелітерінен тәуелсіздігін қамтамасыз ету мүмкін болды.
Жоғарғы деңгейлі тілдерден Си тілінің ерекшелігі:
- операторлар түрі өзгеше;
- көрсеткіштер жиі қолданылады;
- басқа тілдерге қарағанда синтаксикалық ережелері аз, нәтижесінде компилятор тиімді жұмыс жасау үшін 256 Кб оперативті жады жеткілікті;
- қызметші сөздерге қарағанда операторлар мен олардың комбинациялары көп;
- алғашқыда Си тілінде 27 қызметші сөз ғана болған. Кейін ANSI Си тіліне және Microsoft C тіліне қызметші сөз қосылды, жалпы саны шамамен 50;
- Көп программалау тілдерінде бар функциялар Си тілінде жоқ;
- Си тілінде қосалқы енгізу шығару функциялары, математикалық функциялары және жолдармен жұмыс жасау функциялары жоқ, бірақ сол функциялардан және басқа функциялардан тұратын жеке кітапханалардан алу мүмкіндігі қарастырылған;
- мәліметтер типін бақылау жеңіл, яғни программаның бір жерінде айнымалыны символ түрінде, екінші бір жерінде осы символдың ASCII коды ретінде қарастыруға болады;
- Си тілінде қазіргі тілдері секілді барлық басқарушы конструкциялары бар(For, if / else, …. ) ;
- Cи тілінде модулдік программалауға болады, яғни программаның әртүрлі бөлігін жеке копиляциялауға болады;
- Ассемблер тілінде жазылған ішкі программаларды шақыруға болады;
- көрсеткіштер яғни жады аймақтарынан берілген адрес бойынша қарау программаны орындау жылдамдығын арттырады. Көрсеткіштер көп тілде қолданылады, ал көрсеткіштерге арифметикалық амалдар тек Си тілінде қолданылады.
- Си тілінде барлық массивтер бір өлшемді, бірақ Си тілінде бір өлшемді массивтерден тұратын конструкциялар бар, яғни көп өлшемді массивтер құрылады;
- тек қажетті кітапханалар шақырылатын болғандықтан жады тиімді қолданылады;
- басқа тілдердегідей қосалқы функциялар;
- көптеге мамандандырылған функциялар кітапханаларының жинытығы бар.
Кемшілігі: Си тілінде мәліметтер типі қатаң қадағаланбайды, сондықтан Си тілінде тәжірибелі программист байқағанмен жаңа үйренуші байқамайтын айнымалы мәндеріне өзгерістер болуы мүмкін.
Мысалы, бір өрнекте (=) меншіктеу операторы бірнеше рет қолданылуы мүмкін. Сондықтан нәтижесінің типі түсініксіз және қиын анықталады. Бірақ оны қолдану арқылы тілдің қуаты арттырылған.
С++ тілі Си тілінің толықтырылған, яғни объектілі бағытталған программалау(ОБП) құралдарымен толықтырылған жиыны деуге болады.
Си және С++ тілдерінің айырмашылығы:
-құрылымдар мен класстар аттары мәләметтер типтерінің аттары болып табылады. С- де класс түсінігі жоқ.
1. 2. Тілдің негізгі элементтері
Символдар:
- латын әріптері;
- цифрлар;
- арнайы символдар;
- пробелмен ажыратылмаған символдар комбинациясы, бір мағыналы символ ретінде қабылданады, Мысалы ++, -, «», +=, /-, //.
Идентификаторлар - символдардан, цифрлардан және «_» таңбасынан тұрады. С компиляторы 31 символды таниды. С және С++ тілдері символдар регистріне қарайды, яғни компилятор үлкен және кіші символдарды әртүрлі символ ретінде қабылдайды.
Мысалы, Name_TYPE және name_type идентификаторлары әртүрлі деп қарастырылады.
Программистер арасында жарияланбаған келісім бойынша кезкелген идентификаторды сәйкес типінің бірінші әрпінен бастау ұйғарылған.
Қызметші сөздері:
С тіліндегі қызметші сөздер қосалқы идентификаторлар болып табылады. Оның әрқайсысы белгілі бір әрекет орындайды. Қызметші сөздер мағнасын өзгерту мүмкін емес, тек, #define препроцессор директивасы арқылықызметші сөз псевдонимін құрып, оның әрекетін көшіруге болады.
С немесе С++ тілдерінде мәндер төмендегідей базалық типтер бірімен бейнеленеді. Олар:
1. char - бірлік байт, қолданылатын литерлер жиынтығындағы бір литерді меншітей алады.
2. int - бүтін.
3. float - 3. 4E- 38 және 3. 4E+38 аралығындағы нақты сандар.
4. double - 1. 7E-308 -1. 7E+308 аралығындағы жылжымалы нүктелі сандар.
5. Void типті, ешқандай мән қайтармайтын функцияларды қолданылады.
6. bool типті айнымалы С++-те true немесе false мәнін қабылдайды.
7. Санылымды тип.
8. Көрсеткіштер.
Саналымды типті айнымалы санап көрсетілген тұрақтыға оның атауы арқылы сілтейді.
С/С++ тілі машинадан тәуелді тіл болғандықтан аталған типтерге жадыдан бөлінетін орындар көлемі нақты атап көрсетілмейді. Дегенмен, шамамен сипаттау мүмкіндігі бар.
Сонымен қатар, базалық типтерге қолданылатын бірнеше квалификаторлар бар.
Квалификаторлар. short (қысқа) және long (ұзын) квалификаторлары бүтін типтерге қолданылады:
Short int sh;
40
Long int counter;
Бұндай сипаттауларда int сөзін жазбауға болады. Көбінесе short квалификаторы арқылы сипатталған бүтінге 16 бит бөлінеді, long квалификаторымен сипатталса - 32 бит, ал int типіне - не 16, не 32 бит бөлінеді.
Signed (таңбалы) және unsigned (таңбасыз) квалификаторларын char типінежәне кез келген бүтін типке қолдануға болады.
Unsigned мәні әрқашан оң немесе нөлге тең және 2n модулі бойынша
арифметика заңына бағынады. Мұндағы, n- типті бейнелегендегі биттер санына тең.
Мысалы, char мәніне 8 бит бөлінсе, онда unsigned char 0-ден 255-ке дейінгі диапазондағы мәнге, ал signed char -128-ден 127-ге дейінгі мәнге ие.
Барлық өлшемдегі атаулы тұрақтылар <limits. h> және <float. h> стандартты тақырыптық файлдарында орналасады.
Сонымен қатар, С тілінде екі квалификатор бар: Const және Volatile.
Const - мәні өзгермейтін айнымалыларды, ал Volatile кез келген уақытта мәні өзгеретін айнымалыларды белгілеу үшін қолданылады.
Const -программа орындалу барысында өзгермейтін айнымалылар - тұрақтылар деп аталады.
Сипатталуы:
Мысалы, Const float pi=3014159;
Const int imin=1, isale=5;
Тұрақтыны сипаттаудың екі тәсілін білеміз, Const және define; көпшілік жағдайда екеуі бірдей нәтиже береді, бірақ мынадай ерекшеліктері бар: define - макротұрақты, ал Const арқылы айнымалы құрылады.
Volatile бұл айнымалының мәні сыртқы әрекеттер әсерінен өзгеруі мүмкін екенін білдіреді.
Мысалы, Volatile int EV_time;
Бұл жағдайда EV_time айнымалысы таймер, яғни жүйелік құрылғы арқылы өзгереді.
Бұл бұл квалификаторлар бір уақытта қолданылуы мүмкін, мысалы, Const Volatile Const EV_time;
Мұнда Const EV_time айнымалысының мәні программасының денесінде өзгертілменгенмен, оның мәні сырттай жанартылуы мүмкін.
2. С/С++ тілдерінің негізгі элементтері, тұрақтылар
- 2. 1. Қолданылатын таңбалар.
СИ тілінде қолданылатын таңбалардың көпшілігін бес топқа бөлуге болады.
1. Өзекті сөздерді және идентификаторларды түзуге қолданылатын таңбалар (1-кесте) . Бұл топқа ағылшын алфавитінің бас және кіші әріптері, сондай-ақ асты сызылған таңбалар енеді. Бірдей бас және кіші әріптер әртүрлі таңбалар болып саналатындығын ескеру керек, өйткені олар әртүрлі кодқа ие.
1-кесте
2. Орыс алфавитінің бас және кіші әріптерінің тобы және араб цифрлары (2-кесте) .
2-кесте
3. Нөмірлеу белгілері және арнайы таңбалар (3-кесте) . Бұл таңбалар бір жағынан есептеу процесін ұйымдастыру үшін, ал басқа жағынан белгілі терудің нұсқауын компиляторға беру үшін қолданылады.
3-кесте
4. Басқаратын және бөлетін таңбалар. Бұл топқа: ашық жер, табуляция таңбалары, жолды ауыстыру, каретканы қайтару, жаңа бет және жаңа жол таңбалары жатады. Бұл таңбалар бір-бірінен пайдаланушы анықтайтын объектілерді бөледі, оларға тұрақтылар және идентификаторлар жатады. Бөлу таңбаларының бір ізділігін құрастырушы бір таңба ретінде қарастырады (ашық жер бір ізділігі) .
5. Бөлініп көрсетілген топ таңбаларынан басқа СИ тілінде басқаратын бір ізділік деп аталатын, сондай-ақ енгізу және шығару функцияларында қолданылатын арнайы таңбалы комбинациялар кеңінен пайдаланылады. Басқаратын бір ізділік (\) кері бөлшек сызықты (міндетті түрдегі бірінші таңба) және латын әріптері мен сандарының комбинациясын қолдану негізінде құрылады (4-кесте) .
4-кесте
\ddd және \xddd (мұнда d санды білдіреді) түрлерінің бір ізділігі ПЭВМ теру кодтарынан символды сегіздік тізбек немесе он алтылық сәйкес сан бір ізділігі ретінде қарауға мүмкіндік береді. Мысалы, каретканы қайтару таңбасы әртүрлі жолдармен көрсетуі мүмкін:
\r - жалпы басқаратын бір ізділілік,
\015 - сегіздік басқаратын бір ізділік,
\x00D - он алтылық басқаратын бір ізділік.
Жол тұрақтыларында әрқашан да міндетті түрде барлық үш санды басқару жүйесінде беру қажеттігін ескерген жөн. Мысалы, жеке басқаратын жүйелілікті \010 немесе \хА деп көрсетуге болады, бірақ жол тұрақтыларында барлық үш санды көрсету керек, өзге жағдайда таңба немесе таңбалар келесі басқару жүйелілігінің жетіспейтін бөлігі ретінде қарастырылады. Мысалы:
“ABCDE\x009FGH” берілген жолдың команда СИ тілінің белгілі функциясын қолданып басылады, 8 ашық жермен бөлінген ABCDE FGH екі сөз сияқты, бұл жағдайда егер толық емес басқару жолын “ABCDE\x09FGH” көрсетсе, онда басылымда ABCDE=/=GH пайда болады, өйткені құрастырушы тізбек \x09F-ті “=+=” таңбасы ретінде қабылдайды.
Бұл жағдайды көрсете кетейік, егер теріс бөлшек сызық басқаратын жүйелілік болмайтын және сан болмайтын таңбаның алдында болса, онда бұл сызық ескерілмейді, ал таңбаның өзі литералды түрде көрсетіледі. Мысалы: \h таңбасы жолдық немесе таңбалық константада h таңбасы болып көрсетіледі. Басқару жүйелілігін анықтаудан басқа, теріс бөлшек сызық (\), сондай-ақ жалғастыру таңбасы ретінде қолданылады. Егер (\) соңынан (\n) болса, онда екі таңба ескерілмейді, ал келесі жол алдыңғының жалғасы болып табылады. Бұл қасиет ұзын жолдарды жазу үшін қолданылуы мүмкін.
2. 2. Константалар
Программаның орындалу барысында мәні өзгермейтін шама - тұрақты деп аталады.
Бүтін тұрақты, мысалы, 1234, int типімен сипатталады. Long типті тұрақты l немесе L әрпімен аяқталады. Мысалы, 123456789L. Таңбасыз тұрақтылар u немесе U әрпімен аяқталады. Ал ul немесе UL-мен аяқталатын тұрақтылар типі - unsigned long екенін көрсетеді.
Сонымен қатар, бүтін мән ондық форматта немесе басқа 8-дік немесе 16-лық форматта берілуі мүмкін. Егер тұрақты нөлден басталса, онда ол 8-дік форматта, егер 0х немесе 0Х болса, онда 16-лық форматта көрсетілген. Мысалы, ондық бүтін 31-ді 037 немесе 0Х1F түрінде жазуға болады. 8-дік және 16-лық тұрақтылардың жазылуы L және U әрпімен аяқталуы мүмкін.
Мысалы, 0XFUL тұрақтысы 15 мәніне және unsigned long типіне ие. Жылжымалы нүктелі тұрақтылар. Егер тұрақты f немесе F әрпімен аяқталса, онда тип float, ал l немесе L болса, онда long double типті болғаны.
Литерлік тұрақтылар. Литерлік тұрақтылар деп апострафқа алынған литер түрінде жазылған бүтінде айтамыз.
Мысалы, 'x'. Литерлік тұрақтының мәні ретінде литердің сандық коды алынады. Мысалы, '0' литерлік тұрақты ASCII кодында 48 кодына сәйкес келеді. Бұның 0 мәніне ешқандай қатысы жоқ. Литерлік тұрақтылар көбінесе басқа литерлермен салыстыру үшін қолданғанымен, олар басқа бүтін типтер сияқты сандарға амалдар қолдануға қатыса алады.
Тұрақты өрнек - тек тұрақтылармен ғана өрнектелетін өрнек. Мұндай өрнектер компиляциялау барысында есептеледі, сондықтан оларды келген жерде қолдануға болады.
Мысалы:
#define SAN 368
char line[SAN +1] ;
Стрингтік тұрақты - нөл немесе қос тырнақшаға алынған литерлер. Мысалы,
" Бұл жолдық тұрақты"
немесе " " /* бос жол */
Тырнақшалар жолдарға кірмейді, ол тек оның шектеуі ретінде қолданылады. Жолдық тұрақтыларды компиляциялау барысында бір-біріне жалғауға болады, бөліктерге бөліп, оларды бөлек жолдарға жазуға мүмкіндік береді. Шын мәнінде жолдық тұрақты ол литерлер массиві.
С/С++ тілінде кез келген айнымалы оны қолданғанға дейін анықталуы керек. Декларацияда айнымалылардың қасиеттері хабарланады. Ол типтің атынан және айнымалылар тізбегінен тұрады.
Мысалы,
int fahr, celsius;
int lower, upper, step;
Мұндағы int типі көрсетілген айнымалылардың мәні бүтін екенін білдіреді, ал,
float бөлшек бөлігі бар мәндер.
Программадағы өлшемдердің түгелделіп шығуы константалар деп аталады СИ тілінде константалардың төрт түрі көрсетіледі: бүтін костан-талар, жылжымалы, таңбалы константалар және жолдық литералдар.
Бүтін константа: бұл ондық, сегіздік және он алтытылық сан, олар келесі формалардың ішінднгі бүтін өлшемді көрсетеді: ондық, сегіздік немесе он алтытылық. Ондық константа бір немесе бірнеше ондық сандардан тұрады, жәнеде алғашқы сан нөл болмауы керек (ондай жағдайда сан сегіздік ретінде қабылданады) .
Сегіздік константа міндетті түрде нөлден және бір немесе бірнеше сегіздік саннан құралады (сандар арасында сегіз және тоғыз сандары болмауы керек бұл сандар сегіздік есептеу жүйесіне енбейді) .
Он алтылық константа міндетті жүйелілік ОХ немесе ОХ-тен басталады және бір немесе бірнеше он алтылық саннан құралады (есептеудің он алтылық сандар жүйесін көрсететін сандар: 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F) .
Бүтін константалардың мысалдары: Ондық константа 16, 127, 240 Сегіздік константа 0x10, 0x2B, 0XF0, Он алтылық константа 020, 0117, 0360
Егер теріс бүтін константа құру керек болса, онда “-” белгісін константа жазуының алдында қолданады (унарлы минус деп аталады) . Мысалы: -0x2A, -088, -16.
... жалғасы- Іс жүргізу
- Автоматтандыру, Техника
- Алғашқы әскери дайындық
- Астрономия
- Ауыл шаруашылығы
- Банк ісі
- Бизнесті бағалау
- Биология
- Бухгалтерлік іс
- Валеология
- Ветеринария
- География
- Геология, Геофизика, Геодезия
- Дін
- Ет, сүт, шарап өнімдері
- Жалпы тарих
- Жер кадастрі, Жылжымайтын мүлік
- Журналистика
- Информатика
- Кеден ісі
- Маркетинг
- Математика, Геометрия
- Медицина
- Мемлекеттік басқару
- Менеджмент
- Мұнай, Газ
- Мұрағат ісі
- Мәдениеттану
- ОБЖ (Основы безопасности жизнедеятельности)
- Педагогика
- Полиграфия
- Психология
- Салық
- Саясаттану
- Сақтандыру
- Сертификаттау, стандарттау
- Социология, Демография
- Спорт
- Статистика
- Тілтану, Филология
- Тарихи тұлғалар
- Тау-кен ісі
- Транспорт
- Туризм
- Физика
- Философия
- Халықаралық қатынастар
- Химия
- Экология, Қоршаған ортаны қорғау
- Экономика
- Экономикалық география
- Электротехника
- Қазақстан тарихы
- Қаржы
- Құрылыс
- Құқық, Криминалистика
- Әдебиет
- Өнер, музыка
- Өнеркәсіп, Өндіріс
Қазақ тілінде жазылған рефераттар, курстық жұмыстар, дипломдық жұмыстар бойынша біздің қор #1 болып табылады.

Ақпарат
Қосымша
Email: info@stud.kz