Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Билет №14. 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. Параметрлі айнымалысанды функциялар. Егер функцияның формалды парамерлерінің тізімі кө п нү ктемен аяқ талса, оны шық ырғ ан кезде осы жерде тағ ы бірнеше параметр кө рсетуге болатының білдіреді. Бұ л параметрлер ү шін типтердің сә йкестң гң н тексеру орындалмады, char жә не short типтері int ретінде, ал float типі doubleретінде беріледі. мысал ретінде printf функциясын келтіруге болады, оның прототипі келесі тү рде береледі: Int printf (const char*, …); Жоғ арыдағ ы мысал функцияны шақ ыру кезң нде кем бір char* типті парамерт болуын жә не басқ а параметрлердің болуы немесе болмауы мү мкін екендігін кө рсетеді. Printf (“бастапқ ы мә ліметтерді енгізініз”); //бір параметр Printf(“қ осынды; & 5.2f тең ге “, sum); //екі парамер Printf(“& d & d & d”, a, b, c, d); //бес параметр Функция ішіндегі міндетті емес параметрлерге қ ол жеткізу ү шін stdarg.h> тақ ырыптық файлында орналасқ ан va_start, va_arg жә не va_end кітапхана макростары қ олданылады. 3. #include< stdio.h> void main() { inti; long float t=1, p=1; for(i=1; i< =4; i++) scanf(" %d", & i); for(i=1; i< =4; i++) { t=1; t=1/(2*t*i); p=p*t; } printf(" p=%lf", p); }
|