Си тіліндегі мәліметтер типі және олардың хабарлануы



Батыс Қазақстан инженерлік-технологиялық университеті

КУРСТЫҚ ЖҰМЫС

Тақырыбы:

Си тіліндегі мәліметтер типі және олардың хабарлануы

Орындаған: ИС-11 топ студенті
Дүйсенова А.К.
Тексерген: аға-оқытушы Жахиена
А.Г.

Орал, 2012ж.

Мазмұны

Кіріспе ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..
... ... ... ... ... ... ... ... ... ... ... ... ...3
1 бөлім. С++ бағдарламалау тілі
1.1 Тілдің
алфавиті ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..
... ... ... ... ... ... ... .5
1.2 Мәліметтер түрлері.(Типы
данных) ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... .6
1.3 Мәліметтерді енгізу және
шығару ... ... ... ... ... ... ... . ... ... ... ... ... ... ... ... ... ..9
1.4 Мәліметтерді формат бойынша
шығару ... ... ... ... ... ... ... . ... ... ... ... ... ... .10
1.5 Мәліметтерді форматтап енгізу және
программаның
құрылымы ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ... ..
... ... ... ... 12
2 бөлім. Си тіліндегі мәліметтер типін түрлендіру және
олардың хабарлануы
2.1. Типтерді
түрлендіру ... ... ... ... ... ... . ... ... ... ... ... ... ... ... ... ... ..
... ... ... ... ... .14
2.2. Си тілінде жазылған
программа ... ... ... ... ... ... .. ... ... ... ... ... ... ... ... ... ... ..
.21
Қорытынды ... ... ... ... ... ... .. ... ... ... ... ... ... ... ... ... ... ..
... ... ... ... ... ... ... ... ... ... ..23
Пайдаланылған әдебиеттер
тізімі ... ... ... ... ... ... ... . ... ... ... ... ... ... ... ... ... ... ..
..25
Кіріспе

Тақырыптың өзектілігі: Си тілі - жүйелік программалау тілі, бұл тілді
компиляторлар мен операциялық жүйелерді жазуға және қолданбалы
программаларды жазуға қолданылады. Мысалы, Нью–Джерси штатының Мюррей Хилл
қаласында Bell laboratiories компаниясының ұйымдастыруымен 1969 жылы UNIX
–операциялық жүйесі жазылды, бұл жүйе PDP-7 компьютеріне орнатылған. С
тілінің негізгі идеяларының көпшілігі BCPL тілінен алынған.
Программада пайдаланылатын мәліметтердің немесе шамалардың мәндері Си
тіліндегі алдын ала келісілген типтердің біріне тән болуы тиіс.
Мәліметтердің немесе шамалардың типі деп, олардың қабылдай алатын
мәндерінің және олармен орындауға болатын амалдардың жиының анықтауды
айтады, яғни тип дегеніміз - шамалардың қабылдайтын мәндеріне берілетін
сипаттама.
Мәліметтердің әр типі тек өзіне ғана сәйкес келетін операциялар жиынын
орындата алады. Мысалы, 1 мен 2 мәндері бүтін сандар типіне жатады, оларды
қосуға, азайтуға, көбейтуге және бөлуге болады.АJI, ІВМ және РС мәндері
сөз тіркесі типіне жатады, бұларды біріктіріп жазуға ғана болады (ІВМ
РС). Қосуға, азайтуға, көбейтуге, бөлуге болмайды. Кез келген тұрақты,
айнымалы функция немесе өрнек өзіне тән бір типпен ғана сипатталады. Си
тілінде шамалардың типін көрсету міндетті болып табылады. Сондықтан
программа алдына оның сипаттау бөлімінде пайдаланылатын барлық шама
атаулары және оның типтері көрсетілуі қажет.
Бұлардан өзге типтер программаның типтері сипаттау бөлігінде анықталуы
қажет. Тұрақты сандардың типін олардың сыртқы пішініне қарап - ақ ажыратуға
болады, ал айнымалылар мен функциялар типтері программаның сипаттау
бөлімінде көрсетіледі.
Мәліметтердің қарапайым түрлерін стандартты типтер деп атау
қалыптасқан. Стандартты типтердің real түрінен өзгелері реттелген деп
аталады, өйткені оларды бүтін сан арқылы өрнектей отырып өсуі не кемуі
бойынша реттеп орналастыруға болады.
Курстық жұмыстың мақсаты: СС++ бағдарламалау тіліндегі мәліметтер
типі және олардың хабарлануы туралы түсінік алу. Алынған білімдерді
тереңдету.
Курстық жұмыстың міндеттері: СИ тілінің мүмкіндіктерімен таныстыру.
СС++ бағдарламалау тілінің мәлімттер типі, мәліметтердің енгізілуі мен
шығарылуы туралы мағлұматтар беру.
Курстық жұмыстың құрылымы: курстық жұмыс кіріспеден, екі бөлімнен және
қорытынды мен пайдаланылған әдебиеттерінен тұрады.

1 бөлім. С++ бағдарламалау тілі

1.1 Тілдің алфавиті

Латын алфавитінің әріптері.
1.А,В...Z,a,b,c...z;
2.0...9;
3.”, , {}, (), [], +,-,,%,\,,’,.,:,=,=,,,=,-,!,&, *,#,((,
4. Өрнектеуге болмайтын символдар: бос орын: табуляция, жаңа жолға
көшу.
5. Коментария жазу үшін орыс альфавиті қолданылады.
Идентификаторлар. Тілдің ең негізгі түсіністерінің бірі-
идентификатор. Ол объектінің атауы ретінде қолданылады. (функцияның,
айнымалының, константалардың)
Идентифатор төмендегі ережеге сай таңдалуы қажет:
1. Олар латын әріптерінің х немесе астын сызу басталуы қажет .
2. Оның ішінде латын әрпі және астын сызу белгілері қолданылуы
мүмкін. Бөтен таңбаларды қолдануға болмайды.
3. Си тілінде кіші және үлкен латын әріптері өзгеше деп саналады.
4. Идентификатордың ұзындығы әр программаның жүйесінде әр түрлі ANSI
стандарты бойынша 32 таңбадан аспауы керек . Си ++ те шектеуі жоқ.
5. Объектілердің идентификаторы тілдің, түйінді сөздерінің стандартты
функциядан және библиотека аттарынан өзгеше болуы қажет.
Си программалау тілінде түсініктемеге көп көңіл қойылады. Ол
программаны теруді жеңілдетеді. Каментарий мына * және таңбалармен
шектеледі. *Бұл түсініктеме * Си++те мынадай тәсілі бар мына таңбадан
кейін тұрған символдың бәрін сол қатер аяғына дейін түсініктеме деп
түсінеді.

1.2 Мәліметтер түрлері.(Типы данных)

Программалар әр түрлі мәліметтермен жұмыс істейді. Олар қарапайым
мәліметтерге бүтін және нақты сандар объектінің жадыдағы адрестерінің
Реттестірген мәліметтерге массивтер, файлдар жатады. Тілде мәлімет
түрі және түрдің модификаторы. Екі ұғым бар мәлімет түрі мысалы бұл бүтін
сан ал модификатор бар немесе таңбалары жоқ дегенді білдіреді. Таңбалары
бар бүтін сан оғ және теріс сан қабылдай алады, ал таңбасы жоқ сан тек қана
оң сан қабылдай алады. Си тілінде 5 базалық түрі бар:
1. Char-символдық.
2. Int-бүтін сан.
3. Float-нақты сан.
4. Double-ұзын нақты сан.
5. Viod-мәні жоқ.
1. Char типті айнымалының өлшемі бір байт, оның мәндері әртүрлі символдар
‘f’, ‘a’, ‘k’, ‘,’ программада оларды апострафқа алып жазу керек.
2. Си тілінде бүтін айнымалының өлшемі бір машиналық сөзге тең.-32768-
+32767.
3. Float түйінді сөзі нақты сандардан айнымалыда анықтауға қолданылады.
5,6,31,33,-2.01. Нақты санды 3 көшпелі нүкте арқылы да жазуға болады.
54000(54 ( 10 =54E 3 5.4 (54E-1(0.54E1.E таңбасы алдында тұрған санды
маркиса, ал Е деп тұрған санды көрсеткіш деп аталады. Float айнымалысына
32 бит беріледі.3.4У-387-3. 4Е+38.
4. Double-түйінді сөзі 2 еселенетін дәлдікпен берілген нақты сандарды
анықтайды. Ол ЭВМ жадында 64 бит орын алады. 1,7 Е-308-1-1,7У-308.
5. Viod-түйінді сөзі объетінің мәнін бейтарап етіп қалдыру үшін
(нейтрализовать). Ешқандай мәнді әкелмейтін функцияны хабарлау үшін
қолданылады. Кейбір базалық типтердің объектісі өзгертілуі мүмкін. Ол
үшін арнайы түйінді сөз модификатор деп аталады. ANSI стандарты бюойынша
мынадай модификатор бар Unsigned, Signed, shott, long. модификаторлар
спецификаторлардың алдында жазылады. Мысалы: Unsigned char.Егер
модификатордан соң спецификатор жазылмаса, онда Си компиляторы оны бүтін
деп түсіндіреді. Мысалы long a, long int a, екеуі де бір мағына береді.
Программада қолданылатын барлық айнымалылар оларды пайдалануға дейін
хабарлануы тиіс.
Хабарлау-объектің қасиеттерін көрсетеді. Мыс: типі бүтін сан,размері 4
байт хабарлау оған ЭВМ жадыларына орын дайындау үшін қажет Айнымалыларды
бірнеше қатарға жазуға болады. Айнымалыларға оларды хабарлау кезінде мән
беруге де болады.
int a=5,b=47;
char x=’b’;
char
Си тілінде жалпы глобальные және жеке локальные объектілер болуы
мүмкін.
Глобальные-функциясынан тыс анықталады. Сондықтан кез-келген функция
үшін жұмыс.
Локальные-функцияның ішінде қолданылады.
Int a*-Жалпы айнымалыны анықтау.*
int function (int b, char c)-*Функцияны хабарлау.*
{ *программа денесі.*
int d,l; жеке айнымалыларды сипаттау.
float.f
int function(int b,char c)*-функцияны және оның
формальдық параметрлерін анықтау.*
{ *функция денесі.*
char g;
}
Программа main() функциясын шақырудан басталады. Ол программа денесі.
Ал программа денесі {} арасында жазылады. Функция денесі де аралығында
жазылады.
Константалар.
1.Нақты сандар-123.456,5.6Е-4.Олар функциясы түрінде жазылады: 123.456
5.6Е-4 .
2. Бүтін сандар 125.
3. Қысқа бүтін сандар - олардың соңында Н немесе әрпі жазылады.
275Н,275n.
4. Ұзын бүтін сандар – олрадың соңында немесе әріптері жазылады.
361327L ,247499l.
5. Таңбасыз - олрадың соңында және әріптері жазылады.
361327U,361327u .
6. Сегіздік сандар – олрадың алдында әрпі жазылады.
7. Ол алтылық санау жүйесіндегі сандар – олардың алдында ОХ және Ох
жазылады. Ох 57.
8. Символдық – апостровқа алынатын жалғыз символ 0,2.
9. Қатарлық (строк) – тырнақшаға алынған символдар тізбегі бұл
қатарлық константа.
10. Константалық өрнек – а 60+301.

1.3 Мәліметтерді енгізу және шығару

СИ де мәліметтерді енгізу – шығару билиотека функциялары арқылы
ұйымдастырылады. Ең қарапайым енгізу механизмі detchar( ) функция арқылы
бір символды оқу. Ол былай жазылады: int detchar(void).
Бұл жерде аргумент типі, ал функцияның мәні бүтін болады.
Операторлар.
x=detchar( )
x айнымалысына келесі енгізілетін символды меншіктейді. Ол бүтін
немесе символдық болу мүмкін.
2)putchar(x); х-айнымалының мәндерін шығарады detchar(x); және puts
хабарлаулары stdio.h атты библиотека функциялары да бар фаилда жазылған.
Библиотекалық программаларды библиотекаларда қолдану үшін stdio.h фаилды
іске қосу керек. Ол препроцессорлардың мынадай дерективасы арқылы
#includestdio.h.
Программалардың басында detchar( ) функциясы үшін символды
енгізілгеннен кейін Enter клавишін басу қажет,ал detche ( ) және detch( )
функциялары . Ол режимді, алып тастайды. Enter-ді баспауға болады.
Екеуінің айырмашылығы енгізілген символдарды экранда көрсетеді. Ал
detch - көрсетпейді.

1.4 Мәліметтерді формат бойынша шығару.

Файл ішінде f функциясы мәліметтерді форматтап шығаруды, іске
асырады.
Форматы: stdio.h (“басқару жолы”, аргумент 1, аргумент 2, ...,)
Басқару жолы – үш тип компанентінен тұрады.
1. Кәдімгі символдар.
2. Түрлендіретін символдар.
3. Басқару константалары.
Түрлендіру спецификациялары % белгісінен басталады да
түрлендір символыменен бітеді.
% (белгілер( (өріс ені( (дәлдігі(FNh(l( c-n.
С-n- түрлендіру символы блай жазылуы мүмкін.
С-аргумент мәні символ болады.
D немесе i – аргумент мәні ондық сан болады.
е -аргумент мәні ехе потенциалды түрде берліген нақты сан.
E-аргумент мәні ехе потенциалды түрде берліген нақты сан.
F және f – жылжымалы нүкте арқылы берілген нақты сан.
G,g – қажет емес 0-ді өшіреді.
O – аргумент мәні сегіздік жүйедегі сан.
S – сегіздік жүйедегі символдар қатары.
u – таңбасыз бүтін сан.
х,x – аргумент мәні он алтылық жүйедегі сандарды
қабылдайды.
р – аргумент мәні көрсеткіш (указатель).
n - форматтау операциясының ішінде қолданылады.
( g,f,l,x –символдарының алдында қолданады.
Егер ( таңбасынан кейін түрлендіру символы тұрмаса оны экранға
шығарады.

Print f () функциясы басқару қатарын қолданады.
Қанша аргумент бар, олардың типтері қандай?
Басқару символдарының ең көп қолданылатындары:
\а – дыбыс символдарын аз уақыт беру.
\в – курсорды бір позицияға солға жылжыту.
\f – формат көрсету.
\n -жаңа жолға шығу.
\r -көрсеткішті қатар басына келу.
\t-горизантальды табуляция.
\v-вертикалды табуляция.
\\-- тағбаларын экранға шығару.
-.-экранға шығады.
\-- экранға шығады.
\?-?-белгісін экранға шығарады.
Мысалы: print f((tcomputer)n(d\n,(i)
Алдымен горизантальды табуляция орындалады, яғни курсор экран шетінен
жылжиды. Одан соң компьтер деген сөз экранға шығады. Одан соң курсор келесі
жолдың басына көтеріледі. Одан соң I деген бүтін сан % d ондық формуласы
бойынша экранға шығады. Ең соңында курсор келесі жолдың басына көшеді.
Символдар қатарын экранға былайша шығаруға болады. print f((бұл
символдар қатары()

1.5 Мәліметтерді форматтап енгізу және

программаның құрылымы

Scan f () функциясы формат бойынша мәліметтерді енгізеді.
Форматы : Scan f () (“басқару қатары”, аргумент 1,аргумент 2...).
Аргументтер-сәйкес мәндер көрсеткіштері. Сондықтан айнымалылар алдында
белгісі жазылады.
Басқару қатары-түрлендіру спецификаттарын көрсетеді. Оларға бос
орындар,табуляция символдары , жаңа жолға көшу. Түрлендіру символды баспаға
шығару символдарына ұқсас. Кейбір симолдарының алдында модификациялар
жазылуы мүмкін.
F – tar типті көрсеткішті көрсетеді.
N - near типті көрсеткішті көрсетеді.
h – char int типті көрсеткішті көрсетеді; бұл d,i,o-u,x символдарының
алдында жазылуы мүмкін.
l - long int типті көрсеткішті көрсетеді.
L - long double типті көрсеткішті көрсетеді.
Мыс: бүтін сан int a символ в-ны нақты сан t былай енгізуге болады.
Scanf ((% d(, (a)
Scanf ((% l(, (b); Scanf ((% d%c%f((a,(b,(c”)
Программа мынандай элементтердің жиынынан тұрады. Процессорлардың
командаларды, компилятор көрсеткіштері, хабарламалар мен анықтамалардан
тұрады.
Тестерінің компиляция алдында өзгертеді. Компиляторға
көрсеткіштер арнайы құрал-саймандар (указатель), олар арқылы
программа орындалады (скомпилируется).
Айнымалыларды хабарлау – айнымалының атрибутын көрсетеді.
Айнымалыларды анықтау – оған ЭВМ жадынан орын береді.
Функцияларды хабарлау – оның атын, оның формальдық параметрлерінің
атрибутын көрсетеді. Cu тіліндегі программа орындалуы үшін кем дегенде бір
функция болуы қажет. Егер бірнеше функция болса олардың біреуі бас функция
болып, оның аты main () болуы мүмкін.
Мысалы: int x =1;\* айнымалыларды анықтау*
int y=2;
extern int printf (char*, ...); \* функцияны хабарлау*
main () \* бас функцияны анықтау *
{int r ;* айнымалыларды анықтау *
int w;
z=y+x; .w=y-x;
printf ((r=%d\w=%d\n(,r,w);}
2 бөлім. Си тіліндегі мәліметтер типін түрлендіру және олардың хабарлануы
2.1. Типтерді түрлендіру
Егер өрнекте әр түрлі типті операндылар бар болса, оларды бір жалпы
типке келтіру керек.Ол үшін мынандай функциялар тізімі бар.
1.Егер операндылардың біреуінің типі double болса ,онда қалғаны да сол
типке келтіріледі.
2.Немесе long болса қалғаны да сол типке келтіріледі.
3.Немесе float типті болса қалғаны сол типке келтіріледі.
4.Немесе unsignet болса қалғаны сол типке келтіріледі.
5.long болса қалғаны сол типке келтіріледі.
6. unsignet болса қалғаны сол типке келтіріледі.
7.int болса қалғаны сол типке келтіріледі.
int a=30000;
float b;
- - - - -
b=(float)a*12;
Aйнымалысы int-тiң түрi,яғни char 1 байт 4 байттың өлшемiн алады. Ол
айнымалы C++ға қалай сол алдында жариялауы керек. C++ға бағдарламашылар C:
void, int, float, double және charден мәлiметтердiң бес түрлерi қолдана
алады. Сипаттама түр void ешқандай да түрге сәйкес келмейдi int нақты,
float нақтысы өте аз дәлдiк, double нақты ,екi есе шығыны дәлдiк char
болып табылады.
Бұдан басқа түрлер C++ барып тұр: bool және wchar_t. Сипаттама түр
(ақиқат ) true-ның bool-ы логикалық, немесе (жалған ) false wchar_t
ұлғаймалы (барлық көрсетiлетiн символдар жүйелерiнде қолдауы керек) болады.
Типтің модификаторлары: Аталған түрлердiң кейбiрi (таңбалы ) signed-
тiң сөзi, (таңбасыз ) unsigned, (қысқа ) short және (ұзын ) longның
түрлендiруге болады. Егер түр көрсетiлмесе, онда intтiң түрi жобаланады.
Болуы мүмкiн түрлендiргiштерi бар түрлердiң толық жиыны төменде көрсетiлген
:
Типтердiң мәндерiнiң өлшем және диапазондары қолданылатын процессор
және компиляторлардан тәуелдi болады. 
cfloat (немесе float.h) cfloatтiң басы үшiн арналған файлы нақты
типтер үшiн мiнездемеде болады, (немесе limits.h) climits - бүтiн санды
түрлер үшiн. Сiз (байттардағы) кез келген типтiң өлшемiнiң анықтауы үшiн
sizeof операцияны пайдалана аласыз.
Бұл өлшемдер архитектуралардың көпшiлiктерi үшiн дегенмен дәл келедi:
char-дың float-ы int әдетте 32 битi бар, 8 бит, double - 64 бит; bool
сақтаулар үшiн 8 бит, long long-нi қолданылады - 64 бит.
Санмен көрсетiлген түрлер үшiн шектеулер басы үшiн арналған файлда
анықталған. Numeric_limitsтiң үлгi бойынша сыныбының әдiс және тұрақтылары
төменде сипатталған. Бұл сыныптың мамандандыруы мәлiметтердiң кез келген
қолданбалы түрi үшiн ... жалғасы

Сіз бұл жұмысты біздің қосымшамыз арқылы толығымен тегін көре аласыз.
Ұқсас жұмыстар
СИ тіліндегі символдық функциялар мен процедуралар
Си тілінің пайда болу тарихы мен мүмкіндіктері
СИ тіліндегі функциялар
Си тілінде құрылған программаның құрылымын сипаттау жайлы
С++ тілі. Мәліметтер концепциясы. Реттік тип
Си тiлiнiң негiзгi түсiнiктерi
Си программалау тілі
С++ тілі туралы жалпы мағлұматтар
C++ программалау тілі
С++ тілі және оның мүмкіншіліктері
Пәндер