Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Билет №16. 1.Файлдан оқу немесе файлға жазу үшін ол әрі қарай файлға қатынас жасау үшін қолданылған






1. Файлдан оқ у немесе файлғ а жазу ү шін ол ә рі қ арай файлғ а қ атынас жасау ү шін қ олданылғ ан кө рсеткішті қ айтаратын, библиотекалық fopen функциясының кө мегімен алдын-ала ашылуы керек.

Файлдың кө рсеткіші деп аталатын бұ л кө рсеткіш, файл туралы ақ параттан (буфер адресі, буфердегі ағ ымдық литердің жағ дайы, файл оқ уғ а немесе жазуғ а ашық па, файлмен жұ мыс істеуде қ ате бар ма жә не файлдың соң ы кездестіме) тұ ратын қ ұ рылымғ а жіберіледі. < stdio.h> -тан алынғ ан анық тамалар FILE деп аталатын қ ұ рылымның сипаттамасын қ осатын болғ андық тан, қ олданушығ а толығ ымен білу керек емес. Тек қ ана файл кө рсеткішін анық тау ү шін талап етілетін – бұ л келесі тү рдегі декларацияны беру:

FILE * fp;

FILE * fopen(char*name, char* mode);

Файлдан оқ у мен файлғ а жазудың бірнеше тә сілдері бар. Ең қ арапайымы getc жә не putc функцияларын қ олдану. int getc (FILE*fp) функциясы с литерін *fp файылына жазады жә не қ ате болғ ан жағ дайда, жазылғ ан литерді немесе EOF-ті қ айтарады.

Файлдардың форматты енгізу-шығ аруын scanf жә не printf функцияларында тұ рғ ызуғ а болады. Олар scanf жә не printf-тің, олардың бірінші аргументі файлғ а кө рсеткіш болып табылатын айырмашылығ ымен ұ қ сас

int fscanf(FILE*fp, char * format, …)

int fprintf(FILE*fp, char * format, …)

 

2. if жә не case операторларымен жұ мыс.

If
Тармақ талу процестері бар алгоритмдерді ұ йымдастыру ү шін шартты операторлар пайдаланылады. Тармақ талу белгілі бір шарттың орындалуы немесе орындалмауына тә уелді атқ арылады. Кейде бір тармақ ешбір амал орындалмай да қ ала береді.
If шартты операторы. If (егер) операторы программадағ ы іс-ә рекеттердің орындалу реттілігін ө згертетін мү мкіндіктің ең кең тарағ ан тә сілі болып табылады.

If THEN ELSE немесе қ ысқ артылғ ан тү рде IF THEN Мұ ндағ ы 1- жә не 2- операторлардың ө здері қ арапайым немесе қ ұ рама оператор болуы мү мкін.
Case
Тармақ талу операторында белгілі бір шарттың орындалуы немесе орындалмауына байланысты алгоритмнің 1- немесе 2- операторы орындалады, кө бінесе мү мкін болғ ан жағ дайда, екеуі емес одан да кө п болады, яғ ни процесс кө п тармақ ты болады.
Таң дау операторы (case) бірнеше операторлардың ішінен таң дау жолымен кө п тарамды тармақ талуды ұ йымдастырады.
CASE таң дау операторы кө п тармақ ты алгоритмдерді барынша қ арапайым жә не кө рнекі тү рде жазуғ а мү мкіндік береді. Оның қ ұ рамында селектор (selector – таң дау) деп аталатын ө рнек жә не параметрлер тізімі болуы тиіс, ә рбір параметрге сә йкес таң дау тұ рақ тылары болуы қ ажет.
Таң дау командасы былай орындалады: алдымен селектор-ө рнек мә ні есептеледі де, ол тұ рақ тылармен салыстырылады. Егер ө рнектің мә ні 1-тұ рақ тығ а тең болса, онда 1-оператор орындалады, ал ө рнектін мә ні 2-тұ рақ тығ а тең болса, онда 2-оператор, 3-тұ рақ тығ а тең болса, онда 3-оператор т.б. тізімдегі тек бір ғ ана оператор орындалады да, таң дау командасы осымен аяқ талады.

сase of
:;
:;

еlse;
еnd.

3. #include < iostream.h>
#include < math.h>


void main()
{
int min = -1;
int max = -1;
int n;
cout< < " Введитеколичествоэлементов: ";
cin> > n;
cout< < endl< < endl;
int *mas = int[n]; // мундагыmas жанамассив
for (inti=0; i< n; i++)
{
mas[i] = rand() % 20 - 10;
cout< < mas[i] < < " ";
}
cout< < endl< < endl;
for (inti=0; i< n; i++)
{
if (min = -1 || abs(mas[min]) > abs(mas[i]))
min = mas[i];
}
for (inti=0; i< n; i++)
{
if (min= -1 || abs(mas[min]) < abs(mas[i]))
max= mas[i];
}
cout< < " min: " < < min < < " " < < " max: " < < max< < endl< < endl;
return 0;
}

 






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.