- •Си тілінде жазылѓан программа ќ±рылымы
- •Си тіліндегі мєліметтер типтері
- •Си тіліндегі арифметикалық арттыру және азайту операциялары
- •Си тілінде типтерді түрлендіру
- •Енгізу және шығару функциялары scanf(),printf().
- •Меншіктеу операторы.Өрнектер.
- •Логикалық және қатынас операциялары.
- •Логикалыќ операциялар
- •Шартты операторлар.
- •Switch опреторы
- •For цикл операторы
- •While цикл операторы
- •Массивтер.Массивтерді инициалдау.
- •Функцияны баяндау: классикалыќ т‰рі.
- •Си тіліндегі көрсеткіштер.
- •Кµрсеткіштерге ќолданатын операциялар
- •Жадының кластары auto,static,extern,register
- •Бірөлшемдімассивтерде көрсеткіштерді қолдану.
- •Int b[30]; /*30 б‰тін элементтен т±ратын сыртќы массив*/
- •Көрсеткіштерді қолдану.Көрсеткіштерге қолданылатын операциялар.
- •Статикалық массивтерді қолдану.
- •Int b[30]; /*30 б‰тін элементтен т±ратын сыртќы массив*/
- •Жолдар.Жолдарға қолданылатын опрециялар.
- •Символдыќ жолдардан т±ратын массивтер
- •Жолдарды µњдеу библиотекасындаѓы жолдарға ќолданылатын операциялардыњ функциялары
- •Си тіліндегі мәліметтер структурасы
- •Файлдармен жұмыс істеу fscanf(),fprintf().
- •Файлдармен жұмыс істеу fgets(),fputs()
- •Файлдармен жұмыс fread(),fwrite().
- •Мәліметтердің динамикалық структуралы тізімдер,стектер кезектер.
- •Бірінің ішіне енген структуралар
- •Си тіліндегі графикалық функцияларын қолдану.
Бірінің ішіне енген структуралар
Бірініњ ішіне бірі енген структураларды ќарастырайық.
Мысал
#include <stdio.h>
#define num 5
#define len 15
#define is “Наука”
struct isd
{ char namisd[len];
int godisd; }
struct knig
{ char author[len];
char title[len]
struct isd isdat; }
main()
{ static struct knig masking[num]={{“Петров В.”,
“Информатика”
{“Наука”, 1998}},
{“Савельев В.”,
“Физика”,
{“Наука”,1985}}};
int i;
for (i=0; i<num; i++)
if (masking[i].isdat.nanidd==IS)
printf (“%s %s \n”, masking[i].author, masking[i].title); }
Си тіліндегі графикалық функцияларын қолдану.
Графикалыќ функциялар инициалдау ‰шін мына функциялар ќолданылады:
voіd far іnіtgraph (іnt far -drіve-", іnt far «mode, char far -path);
Бірінші параметр кітапханаѓа ж±мыс жасайтын адаптер типін кµрсетеді. Осы параметрге сєйкес баѓытталѓан видеоадаптердіњ драйвері ќосылып, барлыќ кітапханаѓа белгіленуі ж‰реді.Стандартты драйверлерді: CGA, EGA. VGA, DETECT т.б. кµрсететін бір неше т±раќтылар аныќталѓан.
DETECT маѓанасы кітапханаѓа бар видеоадаптердіњ типін µзі аныќтау керек.
Екінші параметр - mode - режимді аныќтайды.
Егер бірінші параметр ретінде DETECT мєні алынып ќойса, онда mode параметрі ќолданылмайды. ‡шінші параметр ретінде каталог аты ќолданылады, файл типі BGІ (Borland's Graphіcs Іnterface ) болатын адаптер драйвері осы каталогта орналасќан:
CGA.BGІ - CGA адаптердіњ драйвері;
EGAVGA.BGІ- EGA жєне VGA адаптердіњ драйвері;
HERC.BGІ - Hercules адаптердіњ драйвері.
graphresult функциясы алдындаѓы іnt far graphresult(voіd) графикалыќ операциясыныњ аяќтау кодын ќайтарады.
GrOk мєні д±рыс аяќталѓанын кµрсетеді. Кітапханамен ж±мысты аяќтау ‰шін closegraph функцияларын міндетті т‰рде шаќыру ќажет:
Мысал
voіd far closegraph ( voіd );
#іnclude <conіo.h>
#іnclude <graphіcs.h>
#іnclude <process.h>
#іnclude <stdіo.h>
maіn () {
іnt mode; іnt res; іnt drіver = DETECT;
іnіtgraph ( &drіver, &mode, """ );
іf ( ( res = graphresult () ) != grOk )' {
prіntf("\nGraphіcs error: %s\n", grapherrormsg ( res) );
exіt ( 1 );}
lіne ( 0, 0, 0, getmaxy () );
lіne ( 0, getmaxy (), getmaxx (), getmaxy () );
lіne ( getmіaxx (), getmaxy (), getmaxx (), 0 );
lіne ( getmaxx (), 0, 0, 0 );
getch ():
closegraph (}; }
Программа графикалыќ режимге µтіп, экран бетініњ шетіне тік тµртб±рышты салады. Ќате байќалѓан жаѓдайда стандартты диагностикалыќ хабар береді. Кітапхана белгіленіп болѓан соњ адаптер сєйкесінше режимге кµшеді де экран тазартылып онда келесі координаталыќ ж‰йе орнатылады. Экранныњ сол жоѓарѓы б±рышыњда алѓашќы н‰кте (0,0) координаталарымен орналасќан.
іnt far getmaxx ( voіd );
іnt far getmaxy ( voіd,):
getgraphmode функция кµмегімен дєл ќандай режим орнатылѓан екенін білуге болады:
іnt far getgraphmode ( voіd );
clearvіewpor функциясын экранды тазарту ‰шін пайдалануѓа болады:
voіd far clearvіewport ( voіd );
Бµлек нүктелермен ж±мыс. putpіxel функциясы баяндалѓан Color т‰стіњ пикселін координатасы (х,у) болатын н‰ктеге ќояды:
voіd far putpіxel ( іnt х, іnt у, іnt Color );
getpіxel функциясы координатасы (х,у) болатын пиксел т‰сін ќайтарады:
unsіgned far getpіxel ( іnt х, іnt у );
setcolor процедурасы пероныњ т‰сін аныќтайды:
voіd far setcolor ( іnt Color );
setlіnestyle функциясы пероныњ ќалѓан параметрлерін аныќтайды:
voіd far setlіnestyle ( іnt Style, unsіgned Pattern, іnt Thіckness );
Бірінші параметрі шаблон сызыѓын береді. Кµп жаѓдайда параметр ретінде алдын-ала аныќталѓан шаблон пайдаланылады:
SOLІD_LІNE, DOTTED-LІNE, CENTER-LІNE, DASHED-LІNE, USERBІT-LІNE жєне т.б.
USERBІT-LІNE мєні шаблонныњ екінші параметрімен беріліп т±рѓанын кµрсетеді.
Шаблон 8 битпен аныќталады.Б±л жерде 1 биттіњ мєні сєйкес келген жерде н‰ктеніњ ќойылатынын білдіреді, ал 0-ќойылмайтынын кµрсетеді.
‡шінші параметр сызыќтыњ пикселде ќалындыѓын кµрсетеді. NORM_WІDTH жєне THІCK_WІDTH параметрдіњ м‰мкін аттары.
Пероныњ кµмегімен кµптеген сызыќтыќ объектілерді, тіксызыќты, кесінділерді, доѓаларды, эллипстарды салуѓа болады.
Тіксызыќты кесінділер алу ‰шін lіne функциясын пайдаланамыз, ондаѓы біріктіретін н‰ктелер (х1,у1) жєне (х2,у2):
voіd far lіne ( іnt x1, іnt y1, іnt x2, іnt y2 );
Шењбер салу. cіrcle функциясы r радиусы жєне центрі (х,у) н‰ктелерінде болатын шењбер сала алады:
voіd far cіrcle ( іnt х, іnt у, іnt г );
Эллипстыњ доѓасын салу. arc жєне ellіpse функциялары шењбердіњ доѓасын салады ( (х,у) н‰ктелер орталыѓы жєне радиусы), StartAngle б±рышынан басталып EndAngle б±рышымен аяќталады. Б±рыштар градуспен беріліп саѓат баѓытына ќарсы баѓытталѓан: