Fseek(fp,0,0); //маркер файл басына



fread(&b2, sizeof (BOOK), 1, fp);

printf (“Авторы - %s,аты - %s,беттер саны - %d\n”,b2.author,b2.title,b2.pages)

 

16-билет 2сурак б) fgets және fputs функцияларын сипаттаңыз

Сөз тіркестерімен жұмыс істегенде fgetsжәнеfputsфункциялары қолданылады:

fgetsфункциясының жазылу түрі:

fgets(нұсқауыш,MAXLEN,fp);                                                                                                 нұсқауыш –компьютер жадындағы орынға сілтейтін нұсқауыш;

MAXLEN –оқылатын тіркестің максимальды ұзындығы;                                          

fp –файл нұсқауышы.

Мысалы:

#define L 20

Main()

{

     FILE *fp;

     char *st[n];

     fp=fopen(“stroke”,”r”);

     while(fgets(st,L,fp)!=NULL)

                 Puts(st);

}

Файлдарға сөз тіркестерін жазу үшін fputsфункциясы келесі түрде қолданылады:

status=fputs (қатар нұсқауышы,fp);

status –бүтін сан, оның мәні eofфункциясында жазылады, егер fputs()функциясы файлдыңсоңына шыққан болса немесеқате тапса, fputsфункциясы жазылатын жолдың соңына /0символын жазбайды.

 

 

Билет № __17

1. Қолданбадан сыртқы программаларды жүктеу жолдары

а) Execlp, spawnlp функцияларымен сыртқы программаларды жүктеу жолын көрсетіңіз?

Функция execlp позволяет выполнить из своего приложения любое указанное приложение, передав ему управление. Вызванная программа замещает в памяти вызвавшее ее приложение. Таким образом, родительское приложение завершается и начинается новое.

 

Функция execlp определена в файле process.h (не забывайте включать его в приложение соответствующей директивой #include) следующим образом:

int execlp(char *path, char *arg0,*arg1, ..., *argn, NULL)

Параметр path определяет имя и путь к приложению, которое требуется выполнить. Если в path указан путь и имя файла с расширением, то функция ищет именно этот файл. Если же расширение файла не задано, то сначала ищется файл такой, который задан. Если он не находится, к имени добавляется расширение .exe и поиск повторяется. Если файл опять не находится, к имени добавляется расширение .com и поиск повторяется. Если в path не задан путь, то сначала поиск файла производится в текущем каталоге. Если в нем требуемый файл не найден, то поиск продолжается в каталогах, указанных в переменной окружения PATH.

 

Функция spawnlp подобна функции execlp, но обладает более широкими возможностями. Она и используемые в ней константы описаны в файлах process.h и stdio.h.

Объявлениефункции:

int spawnlp(int mode, char *path, char *arg0, argl, ..., argn, NULL)

Функция spawnlp отличается от execlp наличием параметра mode, задающего режим выполнения приложения, запускаемого на выполнение. Этот параметр может, в частности, принимать следующие значения:

Значение Описание
P_WAIT Родительское приложение ждет завершения вызванного приложения, после чего продолжается его выполнение.
P_NOWAIT Родительское приложение продолжает выполняться пока выполняется вызванное приложение. Этот режим недоступен в 16-разрядных Windows и DOS.
P_DETACH Идентичен P_NOWAIT, но вызванное приложение выполняется в фоновом режиме, так что не имеет доступа к клавиатуре и дисплею.
P_OVERLAY Вызванное приложение замещает в памяти родительское. То же, что вызов функции execlp.

б) WinExec функциясымен сыртқы программаларды жүктеу жолын көрсетіңіз?

Функция WinExec позволяет управлять формой представления окна запускаемого приложения. Эта функция может работать в любых версиях Windows и выполнять любые файлы: приложения Windows, MS-DOS, файлы PIF и т.п. Функция WinExec определяется следующим образом:

int WinExec(const char *CmdLine, unsigned int CmdShow);

Параметр CmdLine является указателем на строку с нулевым символом в конце, содержащую имя выполняемого файла и, если необходимо, параметры командной строки. Если имя файла указано без пути, то Windows будет искать выполняемый файл в каталогах в следующей последовательности:
1. Каталог, из которого загружено приложение.
2. Текущий каталог.
3. Системный каталог Windows, возвращаемый функцией GetSystemDirectory.
4. Каталог Windows, возвращаемый функцией GetWindowsDirectory.
5. Список каталогов из переменной окружения PATH.

 

Параметр CmdShow определяет форму представления окна запускаемого приложения Windows. Чаще всего используется значение SW_RESTORE, при котором окно запускаемого приложения активизируется и отображается на экране. Если это окно в данный момент свернуто или развернуто, то оно восстанавливается до своих первоначальных размеров и отображается в первоначальной позиции. Для приложений не Windows, для файлов PIF и т.д. состояние окна определяет само приложение.
При успешном выполнении запуска приложения функция WinExec возвращает значение, большее 31. При неудаче могут возвращаться следующие значения:

 

в) ShellExecutec функциясымен сыртқы программаларды жүктеу және құжатты ашу

Функция ShellExecute может не только выполнять заданное приложение, но и открывать документ и печатать его. Под термином «открыть файл документа» понимается выполнение связанного с ним приложения и загрузка в него этого документа. Например, обычно с документами, имеющими расширение .doc, связан Word. В этом случае открыть файл, например, с именем file.doc означает запустить Word и передать ему в качестве параметра имя файла file.doc. Кроме описанных возможностей функция ShellExecute позволяет открыть указанную папку. Это означает, что будет запущена программа «Проводник» с открытой указанной папкой.

 

Для использования функции ShellExecute в модуль надо добавить директиву препроцессора подключающую модуль ShellAPI, в котором описана функция:

#include "ShellAPI.h"

 

2. а) Графикалық режимді тағайындау

Графикалық режимді тағайындау үшін драйвердің режимін анықтайтын және адаптердің жұмыс режимін тағайындайтын бүтін типті екі айнымалы болуы қажет. Графикалық режимді тағайындайтын айнымалыға міндетті түрде бас әріптермен жазылған DETECT мәні меншіктелуі қажет. Осы мәнді меншіктегенде айнымалыға үнсіз келісім бойынша 0 мәні меншіктеледі де, ол EGA.BGI драйверімен жұмыс жасайды. Осы кезде адаптердің жұмыс режимі 640x480x16 режиміне ауысады.

б) Түстер палитрасы

uputpixel(x,y,c)-putpixel(20,25,2)-нүкте салу. Мұндағы с-түсі, ол 0..15-ке дейінгі мәндерді қабылдайды немесе түстердің ағылшын тіліндегі атын үлкен әріптермен жазу керек. Мысалы putpixel(20,25,RED)-қызыл түсті нүкте шығарады.

 

в) Графикалық функциялар мен процедураларды атаңыз, олардың жазылу форматын көрсетіңіз.

Графикалық режимді тағайындау процедурасы:

initgraph(&драйвер, &режим номері, ‘EGA.BGI файлының жолы’ ) Графикалық режимді жабу процедурасы- closegraph();

uline(x1,y1,x2,y2)-line(20,25,45,25)-түзу салу

umoveto(x,y)- moveto(20,25)-нүктені қажетті позицияға орналастыру

ulineto (x,y)- нүктенің ағымдағы орнынан көрсетілген позицияға дейін сызық сызу

ucircle(x,y,r)-шеңбер салу

upieslice(x,y,а1,а2,r) – боялған шеңбер немесе сектор салу, мұндағы а1,а2–бастапқы және соңғы бұрыштар –pieslice(40,100,0,360,20)

urectangle(x1,y1,x2,y2)-іші боялмайтын тіктөртбұрыш салу

uellipse(x,y, а1,а2,r1,r2)-элипс салу

ubar(x1,y1,x2,y2)-іші боялған тіктөртбұрыш салу

ubar3d(x1,y1,x2,y2,а, ontop(onoff))- параллелепипед салу

uarc(x,y,a, b, r)- доға салу, мұндағы a, b –бастапқы және соңғы бұрыш - arc(100,50,0,180,50)

ufillellipse(x,y,xr,yr)- іші боялған эллипс салу

uouttext(“Graphica”)-мәтінді экранның сол жақ жоғарғы бұрышына шығару

uouttextxy(x,y,“Graphica”)-мәтінді x,y позициясына шығару

usetсolor(c)- осы процедурадан кейін орналасқан объектілердің жиегін берілген с түсімен бояйды. Мысалы setсolor(6); circle(200,150,50)-шеңбердің жиегі қоңыр түске боялады.

usetfillstyle(int Стиль, int түс)- бояу стилін және түсін береді. Мұндағы стиль 0.. 12 –ге дейінгі аралықты қабылдайды. Түс 0..15 аралығында. Мысалы, setfillstyle(1, 14) немесе setfillstyle(SOLD_FILL, 14)- Бұл кезде осы процедурадан кейн орналасқан іші боялатын объектілер тұтас сары түске боялады, өйткені стильдің 1 немесе SOLD_FILL мәні тұтас бояу дегенді білдіреді.

 

 

Билет № __18

1. Қолданбадан сыртқы программаларды жүктеу жолдары

а) Execlp, spawnlp функцияларымен сыртқы программаларды жүктеу жолын көрсетіңіз?

Функция execlp позволяет выполнить из своего приложения любое указанное приложение, передав ему управление. Вызванная программа замещает в памяти вызвавшее ее приложение. Таким образом, родительское приложение завершается и начинается новое.

 

Функция execlp определена в файле process.h (не забывайте включать его в приложение соответствующей директивой #include) следующим образом:

int execlp(char *path, char *arg0,*arg1, ..., *argn, NULL)

Параметр path определяет имя и путь к приложению, которое требуется выполнить. Если в path указан путь и имя файла с расширением, то функция ищет именно этот файл. Если же расширение файла не задано, то сначала ищется файл такой, который задан. Если он не находится, к имени добавляется расширение .exe и поиск повторяется. Если файл опять не находится, к имени добавляется расширение .com и поиск повторяется. Если в path не задан путь, то сначала поиск файла производится в текущем каталоге. Если в нем требуемый файл не найден, то поиск продолжается в каталогах, указанных в переменной окружения PATH.

 

Функция spawnlp подобна функции execlp, но обладает более широкими возможностями. Она и используемые в ней константы описаны в файлах process.h и stdio.h.

Объявлениефункции:

int spawnlp(int mode, char *path, char *arg0, argl, ..., argn, NULL)

Функция spawnlp отличается от execlp наличием параметра mode, задающего режим выполнения приложения, запускаемого на выполнение. Этот параметр может, в частности, принимать следующие значения:

Значение Описание
P_WAIT Родительское приложение ждет завершения вызванного приложения, после чего продолжается его выполнение.
P_NOWAIT Родительское приложение продолжает выполняться пока выполняется вызванное приложение. Этот режим недоступен в 16-разрядных Windows и DOS.
P_DETACH Идентичен P_NOWAIT, но вызванное приложение выполняется в фоновом режиме, так что не имеет доступа к клавиатуре и дисплею.
P_OVERLAY Вызванное приложение замещает в памяти родительское. То же, что вызов функции execlp.

б) WinExec функциясымен сыртқы программаларды жүктеу жолын көрсетіңіз?

Функция WinExec позволяет управлять формой представления окна запускаемого приложения. Эта функция может работать в любых версиях Windows и выполнять любые файлы: приложения Windows, MS-DOS, файлы PIF и т.п. Функция WinExec определяется следующим образом:

int WinExec(const char *CmdLine, unsigned int CmdShow);

Параметр CmdLine является указателем на строку с нулевым символом в конце, содержащую имя выполняемого файла и, если необходимо, параметры командной строки. Если имя файла указано без пути, то Windows будет искать выполняемый файл в каталогах в следующей последовательности:
1. Каталог, из которого загружено приложение.
2. Текущий каталог.
3. Системный каталог Windows, возвращаемый функцией GetSystemDirectory.
4. Каталог Windows, возвращаемый функцией GetWindowsDirectory.
5. Список каталогов из переменной окружения PATH.

 

Параметр CmdShow определяет форму представления окна запускаемого приложения Windows. Чаще всего используется значение SW_RESTORE, при котором окно запускаемого приложения активизируется и отображается на экране. Если это окно в данный момент свернуто или развернуто, то оно восстанавливается до своих первоначальных размеров и отображается в первоначальной позиции. Для приложений не Windows, для файлов PIF и т.д. состояние окна определяет само приложение.
При успешном выполнении запуска приложения функция WinExec возвращает значение, большее 31. При неудаче могут возвращаться следующие значения:

в) ShellExecutec функциясымен сыртқы программаларды жүктеу және құжатты ашу

Функция ShellExecute может не только выполнять заданное приложение, но и открывать документ и печатать его. Под термином «открыть файл документа» понимается выполнение связанного с ним приложения и загрузка в него этого документа. Например, обычно с документами, имеющими расширение .doc, связан Word. В этом случае открыть файл, например, с именем file.doc означает запустить Word и передать ему в качестве параметра имя файла file.doc. Кроме описанных возможностей функция ShellExecute позволяет открыть указанную папку. Это означает, что будет запущена программа «Проводник» с открытой указанной папкой.

 

Для использования функции ShellExecute в модуль надо добавить директиву препроцессора подключающую модуль ShellAPI, в котором описана функция:

#include "ShellAPI.h"

 

2. Файлдық мәліметтерді өңдеу

а) fwrite және fread функцияларын сипаттаңыз

fwrite және fread функцияларын пайдалану

Құрылымдарды пайдаланатын файлдармен жұмыс істеу кезінде fread()/fwrite()функцияларын пайдаланған ыңғайлы. Олардың жазылуы:

fread(ptr,size,n,fp);

мұнда fpфайлынан әрқайсысыsizeбайттан тұратын мәліметтіңnблогыptfнұсқауышы көрсетіп тұрған жады аймағына оқылады (оқылатын блок үшін алдын ала орын дайындап қою қажет).

fwrite(ptr,size,n,fp);

мұнда ptfнұсқауышы көрсетіп тұрған жады аймағында орналасқан әрқайсысыsizeбайттан тұратын мәліметтіңnблогыашық тұрған fpфайлына жазылады.

б) fgets және fputs функцияларын сипаттаңыз

 

fgets және fputs функцияларын пайдалану

Сөз тіркестерімен жұмыс істегенде fgetsжәнеfputsфункциялары қолданылады:

fgetsфункциясының жазылу түрі:

fgets(нұсқауыш,MAXLEN,fp);                                                                       нұсқауыш –компьютер жадындағы орынға сілтейтін нұсқауыш;

MAXLEN –оқылатын тіркестің максимальды ұзындығы;                                          

fp –файл нұсқауышы.

Файлдарға сөз тіркестерін жазу үшін fputsфункциясы келесі түрде қолданылады:

status=fputs (қатар нұсқауышы,fp);

status –бүтін сан, оның мәні eofфункциясында жазылады, егер fputs()функциясы файлдыңсоңына шыққан болса немесеқате тапса, fputsфункциясы жазылатын жолдың соңына /0символын жазбайды.

 

 

Билет № __19_

1 Айнымалылар және өрнектер а) айнымалы дегеніміз не? Оны сипаттау б) Жергілікті және ауқымды айнымалылар в). Өрнектердегі типтерді түрлендіру. Типтерді келтіру

Айнымалы деген не

Айнымалылар латын әріптері мен цифрларының кез – келген тіркесі түрінде беріледі. Айнымалы деп программаның орындалу барысында әртүрлі мәндерді қабылдайтын шамалар.

Айнымалылардың негізгі типтері:
int — бүтін сандар типі.(int x; int y=37;)
double, float — үтірі бас сандар типі.(float a; double b; float pi=3.14;)
Char — символдық тип (Char q; q='w'; Char t;)
String — сөздер, жолдар типі. (String str; String tost=«Ал, не дейміз енді))»;)
Boolean — логикалық тип.(Бұл типпен кейінірек «очно» танысамыз)

Машиналар сондай ақылсыз, оларда жолай түсініп кету деген жоқ. Айнымалымен жұмыс істеу үшін міндетті түрде алдымен бір рет ЖАРИЯЛАУ керек. Ол үшін оның типін және атын көрсетеміз. Мысалға, int x; (бұдан түсінетінімз x бүтін санды айнымалы, 5 болуы мүмкін, 777 болуы мүмкін, әйтеуір бір бүтін сан).

2.5. Жергілікті және ауқымды айнымалылар

Айнымалылардың әрекет ету аймағы – программаның ағымдағы әрекеттеріне қандай мәліметтердің қатынасуға болатынын анықтайтын қағида. Айнымалылардың үш типі болады: ауқымды, локальді (жергі­лікті) және формальды.

Жергілікті айнымалылардың әрекет ету айма­ғы – олар сипатталған программа бөлігі, яғни олар сол функция тұлға­сында ғана белгілі болып табылады. Программаның осы бөлігінен шыққан соң, жергілікті айнымалылар мен олардың мәндері жоғалады.

Формальды айнымалылар – тұтынушы функциясының тақыры­бын­да көрсетілген параметрлер. Формальды параметрлер функция тұлғасында жергілікті айнымалылар сияқты қолданылады. Формальды параметрлердің әрекет ету аймағы – функция тұлғасы болып табы­латын блок.

Ауқымды айнымалылар программадағы функциядан тыс сипат­та­лады. Олар программаның кез келген жерінде қолданылуы мүмкін, сондықтан ауқымды айнымалыларды алдын ала сипаттау және бас­тап­қы мәндерді меншіктеу керек. Ауқымды айнымалылардың әрекет ету аймағы – олар сипатталғаннан бастап, программа соңына дейін болып саналады.

2.6. Өрнектердегі типтерді түрлендіру. Типтерді келтіру

C++ Builderбағдарламасында есептер орындау барысында компонеттерден мәліметтер алғанда немесе компонентке мәлімет шығару қажет болған типтерді түрлендіру функциясын орындау қажет:

StrToFloat – жолдық типті нақтыға түрлендіру

FloatToStr - нақты типті жолдыққа түрлендіру

IntToStr – бүтін типті сандарды жолға түрлендіру

StrToInt – жолдық типті бүтін типке түрлендіру

 

2 С++ мәліметтердің типтері а) Негізгі мәліметтер типтерін атаңыз б) Қолданушымен анықталатын типтер қандай?  

Тілдің алфавиті.С++ тілінің алфавитіне кіретін символдар:

· Латынның үлкен, кіші әріптері және төменгі сызықша;

· Араб цифрлары;

· Арнайы символдар:” {} [] | , () + - / % * . \ /: ?  ‘ <= >= ! & # ~ ;^

· Бос орындық символдар: бос орын, табуляция және келесі жолға өту символдары жатады.

 

Мәліметтер типі айнымалылардыжариялау кезінде меншіктеледі. Төменде негізгі мәліметтер типі көрсетілген:

· int — бүтін типті.

· float — тип данных с плавающей запятой.

· double — тип данных с плавающей запятой двойной точности.

· char — симводық тип

· bool — логикалық тип.

Айнымалыларды жариялау мысалы:

int a; // объявление переменной a целого типа.

float b; // объявление переменной b типа данных с плавающей запятой.

double c = 14.2; // инициализация переменной типа double.

char d = 's'; // инициализация переменной типа char.

bool k = true; // инициализация логической переменной k.

 

 

Билет № __20_

1 Тармақталу операторлары а) Шартты оператордың жазылу форматын көрсетіңіз б)switch таңдау операторларының жұмыс принципі қандай?  

3. Тармақталу операторлары

а) Шартты оператордың жазылу форматын көрсетіңіз

б) switch таңдау операторларының жұмыс принципі қандай?

Шартты амал «?:»
Бұл амал программа кодының көлемін қысқарту үшін пайдаланылады. Оның көмегімен if-else операторының қарапайым және күрделі түрлерін алмастыруға болады. Шартты амалдың жазылу форматы:

логикалық өрнек ? өрнек1 : өрнек2

Алдымен логикалық өрнек есептеледі, егер ол ақиқат болса , онда өрнек1, кері жағдайда өрнек2 есептеледі.
«if-else» операторы

Жалпы жазылу түрі:

if (өрнек) a;

                немесе

if (өрнек) a; else b;

«if-else» операторын программада пайдалану мысалы: Енгізілген санды жұп не тақ екенін анықтау

Switch таңдау операторы

Switch таңдау операторы if операторын бірнеше рет қолдунадың өте ыңғайлы алмастырушысы болып табылады. Switch таңдау операторы айнымалының мәнін брнеше тұрақтылармен салыстырады. Switch шартындағы көрсетілген айнымалының мәні case кілттік сөзінен кейін тұрған мәндермен салыстырылады. Case операторының мәнімен айнымалы мәні сәйкес болғанда, компьютер программаны сол жерінен жалғастырады.

switch( /*variable*/) { caseconst1: variable айнымалысы const1ге тең болғанда орындалатын код break; caseconst2: бұл код variable мәні const2* мәніне тең болғанда орындалады break; /*...*/ default: ешбір констант мәні variable* айнымалы мәніне сәйкес келмегенде орындалатын код break; }
2 C++ Builder өңдеу ортасы. а) Ортаның негізгі терезелерін атаңыз және оларға сипаттама беріңіз б) Компоненттер палитрасы терезесін сипаттаңыз в) Форма және код редакторы терезесін сипаттаңыз

 

C++Builder- C++ тілінде программалық құралдарды өңдеу үшін программистер пайдаланатын программалық өнім, қолданбаларды жылдам өңдеу аспабы , программалаудың біріктірілген ортасы,жүйе.

Бастапқыда Borland Software компаниясы өңдеген, ол компанияның бөлуінуі себебінен қазіргі кезде Embarcadero Technologies компаниясына тиесілі

C++Builder құрамында объектілер кітапханасының жиыны (STL, VCL, CLX, MFC және т.б.), компилятор, баптаушы, код редакторы және басқа да компоненттер қосылған. Өңдеу Delphi ортасына ұқсас. Delphi өңделген көптеген компоненттерді C++Builder –де пайдалануға болады.

C++Builder объектіге бағытталған программалаудың – инкапсуляция, полиморфизм және жинақтық туындауды және тіл стандартындағы кілттік сөздер мен жаңадан ендірілген спецификаны қолдайды.

C++ Builder-де әрбір компонент үш түрлі сипаттамаға ие: қасиеттер, оқиғалар және әдістер.  

Егер палитрадан компонентті формаға қосатын болсақ. Объектілер инспекторы терезесі автоматты осы компонентке пайдалауға болатын қасиеттер мен әдістерді көрсетеді.

Форма маңызды визуалды компонент болып табылады және кез келген қосымшаның орталық бөлігі. Жобаға жаңа форма қосу File/New Form командасымен орындалады. Әрбір автоматты түрде құрылатын форма үшін C++ программа файлына оны құрудың сәйкес операторын СreateForm әдісі арқылы қосады.

Форманы құру және оны пайдалану кезiнде:

- OnCreate -құру;

- OnShow – бейнелеу;

- OnReSize – өлшемінанықтау ;

- OnActivate –белсенділігі;

- OnPaint –сурет; оқиғалары тізбектей пайда болады. Оларпайда болу ретiменкөрсетілген.

Форманың көрiнетiндiгiн басқаруды басқа тәсiлмен Show және Hide әдiстерiн пайдалана отырып, орындауға болады. Show процедурасы модалды емес режимде форманы бейнелейдi, ал Hide процедурасы форманы бұғады.


Дата добавления: 2018-04-04; просмотров: 359; Мы поможем в написании вашей работы!

Поделиться с друзьями:






Мы поможем в написании ваших работ!