Аталған және аталмаған тізімдер болады. Атаусыз тізімдер кейбір тұрақтылар тізімін мәндермен байланыстырады
enum { false, true };
Енді false 0, ал true 1 дегенді білдіреді.
i = false; i = 0; мәндері бірдей мағына береді
Мән санау элементіне нақты тағайындалуы мүмкін. Егер элементтердің кез-келгеніне мән берілсе, ал кейбіреулері берілмесе, онда тағайындалмаған элементтердің мәні алдыңғысынан бірге үлкен болады.
Мысалы:
enum { false,close = 0, open, true = 1 };
Мұнда false және close 0, ал Open және true 1 болады.
Аталған санақтар бірегей бүтін түрді анықтайды және айнымалыларды анықтау үшін типтік спецификация ретінде қолданыла алады:
Мысалы:
enum boolean { false, true };
boolean found = false;
found айнымалысы boolean түрде болады.
Бұл жағдайда санаудың көптеген элементтері осы типтегі объектілерге тағайындалуы мүмкін мәндердің толық тізімі болады.
Мысалы
found = true;
дұрыс тағайындау болады, ал
found = 100;
қате шығарады.
4. Жолдың анықтамасы
С-де кірістірілген жол деректер түрі болмағандықтан, жол түрінің айнымалыларын жасау үшін таңбалар жиымын жасау керек. Сонымен қатар, бұл массивтің соңғы элементі әрқашан нөлге тең болады - '\0 ' белгісі. Ол жолдың соңын белгілеу үшін қолданылады. Нөлдік таңбаның болуы массив ұяшықтарының саны жадқа орналастырылуы керек таңбалар санынан кем дегенде бір артық болуы керек дегенді білдіреді. Жолдарды инициализациялау келесідей жүргізілуі мүмкін:
char m1[] = " Таңбалар жолы ";
char m[44] = "Жаңа таңбалар жолы ";
1.Енгізу/шығару операторлары
printf функциясы stdio файлын қосуды қажет етеді. қарапайым және икемді форматқа ие.
printf (“Таңбалар жолы ”, объект 1 , объект 2);
Пішім жолы-қос тырнақшадан басталатын, аяқталатын және экранға шығарылатын жол. Сонымен қатар, формат жолында нысанды қалай шығару керектігін көрсететін формат сипаттамалары болуы мүмкін.
Мысалы:
printf(“Сумма=%d\n ”,sum);
Шығару жолы - Сумма = - және спецификация %d ден құралған. Барлық пішім сипаттамалары % белгісінен басталады және әдетте деректер түрін және оларды түрлендіру жолын көрсететін бір әріппен бірге жүреді. Әрбір объект үшін оған сәйкес келетін бір ғана формат спецификациясы болуы керек. Бағдарламада объект sum айнымалысы болып табылады, ол %d форматының сипаттамасына сәйкес келеді. %d бағдарламада қолданылатын кейбір бүтін сан күтілетінін айтады. Төменде кейбір басқа формат сипаттамалары берілген
%u
|
-
|
белгісі жоқ бүтін сан;
|
%p
|
-
|
көрсеткіш мәні;
|
%f
|
-
|
нақты Сан;
|
%e
|
-
|
экспоненттік түрдегі нақты Сан;
|
%s
|
-
|
жол;
|
%x
|
-
|
Он алтылық форматтағы бүтін сан.
|
Шығарылатын өрістің енін % белгісі мен әріп арасына қою арқылы да орнатуға болады. Мысалы өріс ені 4-ке тең болса, %4d деп жазылады. Өзгермелі нүкте өрісінің ені келесідей беріледі %6.2 f (Паскаль 6:2-ге ұқсас).
Мысалы:
printf(“ %6.2f ”,r); // C
write(r:6:2); {Pascal}
Егер өріс мазмұнын солға туралау қажет болса (әдепкі бойынша оңға туралау), жалаушалар деп аталатындарды қолдануға болады. Таңбаларды, бос орындарды, Ондық бөлшектерді шығару және басып шығару үшін қолданылатын жалаулардың қосымша тізбегі. Кейбір келесі мәндерді қабылдауы мүмкін:
-
|
-
|
оң жақтағы бос орындарды толтыра отырып, өрістің ішіндегі нәтижені солға туралау;
|
+
|
-
|
+ белгісін шығарылатын мәнге қосу егер ол белгі түрінде болса;
|
пробел
|
-
|
Алынған мәнге «+» орнына бос орын (пробел) қосылады, егер алынған мән таңбалы және оң болса. Теріс мәндер «-» басталады және бос орынсыз (пробел қойылмайды);
|
Мысалы:
printf(“ %-6.2f ”,r);
Кері қиғаш сызық ( \ ) формат сипаттамасы емес, басқару таңбасы болып табылады және жолға енгізілген арнайы таңба болып табылады. Мысалы, бағдарламадағы \n курсорды жаңа жолға аударудың символы болып табылады. \n көмегімен printf функциясы Паскальда writeln ретінде жұмыс істейді. Төменде жиі кездесетін басқару таңбалары берілген.
\f
|
-
|
экранды тазарту;
|
\t
|
-
|
табуляция белгісі;
|
\b
|
-
|
сою (backspace) алдыңғы таңбаны соғады;
|
\a
|
-
|
динамик сигналы;
|
printf функциясын шақырған кезде объектілер айнымалы, тұрақты, өрнек, сондай-ақ шақырылатын функциялар болуы мүмкін, яғни олар формат сипаттамасының тиісті мәнін беретін кез келген нәрсе болуы мүмкін.
Алдыңғы функцияның жұбы scanf функциясы - енгізу функциясы-келесі форматқа ие:
scanf(“Пішім жолы ”, адрес1, адрес2, …);
Пішім жолағы printf функциясының пішім жолымен бірдей көрінеді. Жолдан кейінгі Нысандар мәндер емес, мекен-жайлар болуы керек.
Мысалы:
int a,b;
scanf(“%d %d”,&a,&b);
Бұл қоңырау бағдарламаға бос орынмен бөлінген екі бүтін санды енгізуді күту керектігін айтады (қойынды, жолды аудару белгісі). Енгізілген сандардың біріншісі a айнымалыға тағайындалады, ал екіншісі b-ға. егер, мысалы, енгізілген сандарды үтірмен бөлу қажет болса, онда scanf функциясының қоңырауы келесідей болады:
scanf(“%d , %d”, &a,&b);
Егер char st[30] деп жарияланған жолды енгізу қажет болса; (30 таңбадан тұратын массив), онда мынау қажет:
scanf(“%s”,st);
st таңбалар массиві болғандықтан, st мәні массивтің Өзі болып табылады (көрсеткіш тақырыбында толығырақ), осы себепті st алдында scanf функциясының шақыруында амперсанд ( & ) қойылмайды. Scanf көмегімен жолдарды енгізу кезінде ішіндегі Бос орындар бар жолды енгізе алмау мәселесі туындайды, өйткені scanf функциясы кез келген бос орынды жолдың соңындағы белгі ретінде қабылдайды.
Мысалы:
«Жүйелік тәсіл-инженер-жүйелік технологияның ұраны!»
тек "Жүйелік"енгізіледі.
Позициядан шығу gets функциясын қолдану болып табылады.
Достарыңызбен бөлісу: |