Енгізу/шығару функциялары. енгізу/шығару стандартты кітапханасы

Кіріспе
I. Енгізу/шығару құралдары.
1.1. Стандартты кітапханаға сілтеме.
1.2. GETCHAR және PUTCHAR функциялары . стандартты енгізу мен шығару.
1.3. Форматты шығару . PRINTF функциясы.
1.4. Форматты енгізілу . SCANF функциясы.
1.5. Жадыдағы форматты түрлену.
1.6. Қателерді өңдеу.
1.7. Символдың түрлері мен түрленуін тексеру..
II. Қорытынды

Пайдаланған әдебиеттер
Қазіргі уақытта ғылыми техниканың даму жетістіктеріне сай, алдыңғы қатарлы ЭЕМ өміріміздің әр түрлі саласында кеңінен қолданылуда.
ЭЕМ-сымен арақатынас қалыптастыруда керекті алгоритмдік тілдер: Фортран, Паскаль, Бейсик, Си және т.б. компьютерде есептерді белгілеп, нәтижесін шығаруға бейімделген.
Осы курстық жұмыстың басты мақсаты: Си тілінде программаларды орындау барысында енгізу/шығару құралдары арқылы жеңіл және тиімді программа құруды үйренуге, күрделі есептер орындауда тәжірибе жинақтауға негізделген.
Енгізу/шығару құралдары С тілінің негізгі құрамы болып табылмайды. Бұл тарауда «енгізу/шығару стандартты кітапханасы» туралы баяндалады, яғни «С» программасының стандартты енгізу/шығару жүйесін қамтамасыз етуге арналған. Бұл функциялар программалық интерфейстің қолайлығына арналған, бірақ тек қазіргі заманға операциялық жүйелерді қамтамасыз ететін операцияларды бейнелейді.
Бұл жерде енгізу/шығару кітапханасын толық сипаттауға тырысамыз, өзінің операциялық ортасымен байланысатын С программасының негізін көрсетеміз.
Стандартты кітапхананың функциясына қатысты әрбір бастапқы файлдың басында мынадай жол болуы керек:
#INCLUDE - файлында енгізу/шығару кітапханасында қолданылатын кейбір макростар мен айнымалылар анықталады. Қарапайым тырнақшаның орнына бұрыштық жақшаның қолданылуы – бұл компиляторға стандартты информацияның тақырыбынан тұратын, анықтамалардан осы файлды ізде деген нұсқау (UNIX жүйесінде әдетте LUSRLINELUDE).
Сонымен қоса, программаны жүктеу барысында нақты кітапхананы көрсету керек болады, PDP-11 UNIX жүйесіне мысалы, программа компиляциясының командасы мынадай түрде болушы еді: СС бастапқы файлдар және т.б. мен –LS, бұл жерде –LS стандартты кітапхананың жүктелуін көрсетеді.
1.Уэит, Мартин Д. «Язык Си» М: 1988 ж.
2. Мұртазина Ә.Ө., Сәтпаева А.К. «Си тілінде программалаудың негіздері» Алматы: ҚазҰТУ, 2002 ж
3. Культин Н. «С/С++» М: 1991 ж
4. Подбельский В.В., Фомин С.С. Программирование на языке Си:
Учеб. пособие. – 2- е доп. изд. – М.: Финансы и статистика, 2002
5. Подбельский В.В. Язык С ++: Учеб. пособие. – 3- е изд. Дораб . - М.: Финансы и статистика, 1998
6. Культин Н.Б. С/ С++ в задачах и примерах. – СПб.: БХВ – Петербург, 2004
7. Мартынов Н.Н. Программирование для Windows на С/ С++. Том.1.- М.: ООО “ Бином – Пресс”, 2004
8. Шиманович Е.А. С/ С++ в примерах и задачах. – Мн. : Новое знание, 2004
9. Ахо А.В., Хопкрофт Д.Э., Ульман Д.Д. - Структуры данных и алгоритмы, Издательство “Вильямс”, Москва, 2000
10. Седжвик Р. Фундаментальные алгоритмы на С++. Части 1-4, Издательство “ДиаСофт”, Москва, 2001
        
        ҚАЗАҚСТАН РЕСПУБЛИКАСЫНЫҢ БІЛІМ ЖӘНЕ ҒЫЛЫМ МИНИСТРЛІГІ
ҚАЗАҚ МЕМЛЕКЕТТІК ҚЫЗДАР ПЕДАГОГИКА ИНСТИТУТЫ
Информатика және қолданбалы математика кафедрасы
Тақырыбы: Енгізу/шығару функциялары. Енгізу/шығару ... ... 050602 ... ... ... ... аға ... Мүсіралиев Ж.А.
Алматы 2007ж
Мазмұны
Кіріспе
I. Енгізу/шығару құралдары.
1.1. Стандартты кітапханаға сілтеме.
1.2. GETCHAR және PUTCHAR функциялары - стандартты енгізу мен шығару.
1.3. Форматты ... – PRINTF ... ... ... – SCANF ... ... форматты түрлену.
1.6. Қателерді өңдеу.
1.7. Символдың түрлері мен түрленуін тексеру..
II. Қорытынды
Пайдаланған әдебиеттер
Кіріспе
Қазіргі уақытта ғылыми техниканың даму жетістіктеріне сай, ... ЭЕМ ... әр ... ... ... ... ... қалыптастыруда керекті алгоритмдік тілдер:
Фортран, Паскаль, Бейсик, Си және т.б. ... ... ... ... ... ... ... басты мақсаты: Си тілінде программаларды орындау
барысында енгізу/шығару құралдары арқылы жеңіл және тиімді программа құруды
үйренуге, күрделі есептер ... ... ... ... ... С ... негізгі құрамы болып табылмайды. Бұл
тарауда «енгізу/шығару стандартты кітапханасы» туралы ... яғни ... ... ... ... ... етуге арналған.
Бұл функциялар программалық интерфейстің қолайлығына арналған, бірақ тек
қазіргі ... ... ... ... ... ... ... енгізу/шығару кітапханасын толық сипаттауға ... ... ... ... С программасының негізін
көрсетеміз.
Стандартты кітапханаға сілтеме.
Стандартты кітапхананың функциясына қатысты әрбір бастапқы ... ... жол ... ... - ... ... ... кейбір макростар мен айнымалылар анықталады. ... ... ... ... ... – бұл ... ... тақырыбынан тұратын, анықтамалардан осы файлды
ізде деген нұсқау (UNIX ... ... ... ... ... ... ... нақты кітапхананы көрсету
керек болады, PDP-11 UNIX ... ... ... компиляциясының
командасы мынадай түрде болушы еді: СС бастапқы файлдар және т.б. мен –LS,
бұл жерде –LS стандартты кітапхананың ... ... және PUTCHAR ... - ... енгізу мен шығару.
Енгізудің ең қарапайым механизмі бұл ... ... ... ... ... бір рет ... ... бір символдың
оқылуымен қорытындыланады.
Putchar() функциясы бір ... ... ... ... ... етеді. С тілі қолданылатын көптеген жерлерде терминал < :
белгісі ... ... ... ауыстырылуы мүмкін; егер PROG программасы
GETCHAR функциясын қолданса, онда жолдық командамен ауыстырылуы ... ... ... ... ... егер
PROG программасы PUTCHAR функциясын қолданса, онда ... ... ... ... OUTFILE ... ... ... жазбасына
әкеліп соғады. UNIX жүйесінде сонымен қатар ағымдық механизмді де қолдануға
болады. PROG \! ... жолы PROG ... ... ANOTHERPROG
стандартты енгізуіне орналастырады. Бұл жағдайда да PROG ... ... ... ... шығару, ол да стандартты шығаруға
түседі, PUTCHAR мен PRINTF функцияларына жолдау ... ... саны тек қана бір ... ... ... ғана ... арнасына жазылады; мұндай программаларға GETCHAR, ... PRINTF ... ... ... және ... өте ... ... жеткілікті болуы да мүмкін. Бұл енгізуге және шығаруға
арналған файлдарды ... ... ... дұрыс. Мысалы, LOWER
программасын қарастырайық, ол бас әріптерді кіші әріптерге ... ... /* CONVERT INPUT TO LOWER CASE */
{ INT ... ((C = ... != EOF) PUTCHAR(ISUPPER© ? TOLOWER© : C);
}
ISUPPER және TOLOWER ... ... де ... ... ... табылады. ISUPPER макросы аргумент жоғарғы регистрлі әріп
екенін тексереді және нольдік емес ... ... егер де ол ... ... де қайтарады. TOLOWER макросы ... ... ... сол
әріптің төменгі регистріне айналдырады. Бұл функциялар белгілі бір машинада
іске асырылатынына қарамастан, қызметтері ... ... ... ... ... ... онда бұл ... UNIX
жүйесінің САТ утилитіне ұқсас программамен жинауға болады,
CAT FILE1 FILE2 ... \! LOWER>OUTPUT және ... ... ... ... қалай қатынасуға болады деген сұрақ тудырмайды.
Сонымен қатар, енгізу/шығару стандартты кітапханасында GETCHAR және
PUTCHAR функциялары шынымен де ... ... ... еді. ... ... әр символды тексеруінің қатарласып шығындануынан
сақтайды.
Форматты ... – PRINTF ... ... және SCANF ... ... сандық үлкендіктерді
символдық көрсетілімдерге және керісінше түрлендіреді. Сонымен қатар олар
форматты жолдарды генерациялайды және ... ... ARG2, ...) ... ... ... анықтайды және өзінің
аргументтерін CONTROL жолының басқаруымен стандартты ... ... жол ... екі ... ... қарапайым символдар, ол жай
ғана шығу арнасына көшіріледі және ... ... ... ... және ... PRINTF ... ... шығуын
шақырады.
Әрбір түрлендіру спецификациясы % символынан басталып, түрлендіру
символымен аяқталады. % символы мен ... ... ... ... орналасуы мүмкін, ол аргументтің сол жағы бойынша пішімделуін
көрсетеді.
Өрістің минимальді енін ...... ... ... ... ... ... сол өрістің ені бойынша шығады, егер керек ... ... ені де ... Егер ... ... ... ... аз
символға ие болса, онда ол осы еніне дейін толтырушы символдармен ... ... ... ... ... ... бос орын ... өрістің ені нольмен басқарылса, онда ол символ – ноль болады.
Сандар жолынан кейінгі өрістің енін анықтаушы, нүкте ... ... ... ... ... ... ... сандар жолы
немесе оң жағынан басылатын сандардың FLOAT немесе DOUBLE типтері үшін
айнымалылары:
Берілгендердің ... ... L ... ... LONG ... ал INT ... ... келмейді.
Төменде түрлену символдары мен олардың мағыналары берілген:
D – аргумент ондық түрге айналады.
О – аргумент белгісіз сегіздік формаға түрленеді.
Х – аргумент ... он ... ... түрленеді.
U – аргумент белгісіз ондық формаға түрленеді.
С – ... жеке ... ... ... – аргумент жол болып табылады, жолдың символдары нольдік ... ... ... ... ... спецификациясында көрсетілген
символдар саны басылмайды.
Е – FLOAT ... DOUBLE ... ... ... қарастырылатын
аргумент, жолдың ұзындығы N дәлділікпен анықталатындай, ондық формаға [-
]M.NNNNNNE[+-]XX түрінде ... ... ... ... дәлділік 6-ға
тең.
F - FLOAT немесе DOUBLE типтерінің айнымалысы ... ... ... ... N ... ... ... формаға [-
]M.NNNNNNE[+-]XX түрінде айналады. Үнсіз келісім ... ... ... , бұл ... F ... берілетін сандардың санын
көрсетпейтіндігін айта кеткен жөн.
G – Қысқалағана ... %E ... %F ... бірі ... ... ... % ... символ түрлену символы болмаса, онда сол символдың өзі
басылады; бұдан шығатыны % символын %% деп ... ... ... ... ... WORLD” (12 ... баспасына әр түрлі
спецификациялардың әсерін көрсетеді. Біз әр өрістің жан-жағына қос ... ... ... аралығын көрсету керекпіз:
:%10S: :HELLO, WORLD:
:%10-S: :HELLO, WORLD:
:%20S: : HELLO, WORLD:
:%-20S: :HELLO, WORLD ... : HELLO, ... :HELLO, WOR ... :HELLO, ... PRINTF ... ... аргументін келесі аргументтердің саны
мен типін анықтау үшін қолданады. Егер де аргументтердің саны ... онда сіз қате ... ... ... – SCANF функциясы.
SCANF енгізу функциясы PRINTF функциясының баламасы болып табылады, және
оның кері процесстерін жүзеге асырады.
SCANF(CONTROL, ARG1, ARG2, ...) ... ... ... ... аргументінде көрсетілген пішімдерге сәйкес ... ... ... ... орналастырады. Басқарушы аргумент
төменірек көрсетілген; нұсқауыш болатын басқа аргументтер ... ... ... керек екендігін анықтайды.
Енгізілген тізбектерді интерпретациялайтын, басқарушы жол, әдетте
түрлендіру спецификацияларына ие. ... ... ... ... ... ... немесе жаңа жолдың символдары болуы мүмкін.
Түрлену символы енгізу өрісінің интерпретациясын анықтайды; «с» тілінің
семантикасының мәнін шақырудағы басты талаптарға ... ... ... ... ... түрлендіру символдары жіберіледі:
D – бүтін ондық сан шығарылуы тиіс; сәйкес келетін аргумент ... ... ...... ... сан ... ... сәйкес келетін аргумент бүтінге
нұсқау болуы керек.
Х – ... он ... сан ... ... ... ... аргумент
бүтінге нұсқау болуы керек.
Н – SHORT типті бүтін шығуы тиіс; сәйкес ... ... ... ... ... ... керек.
С – Бөлек символ күтіледі; сәйкес келетін аргумент символға нұсқау
болуы керек; келесі ... ... ... орынға ауыстырылады.
S – Символдық жол күтіледі; сәйкес келетін аргумент символдық нұсқау
болуы керек.
F – Жылжымалы нүктелі сан күтіледі; ... ... ... FLOAT ... ... болуы керек.
Е - Е түрлену символы F символына синоним болып табылады.
D, О және Х түрлену символдарының алдында, ... ... ... ... LONG ... ... ... болтын, L болуы мүмкін. Балама
ретінде, L – Е және F ... ... тұру ... бар, ... жайт, аргументтер тізімінде FLOAT ... ... DOUBLE ... ... болуы керек.
Мысалы, INT I жолдауы;
FLOAT X;
CHAR NAME[50];
SCANF(“&D %F %S”, &I, &X, NAME);
жолымен енгізгенде 25 54.32E-1 THOMPSON І-ге 25,X ... - 5.432 ... ... - ... ... меншіктейді, сәйкесінше \ ... ... Бұл үш ... бос ... табуляциялармен және
жаңа жолдың символдарымен қалауымызша бөлуге болады.
INT I ... ... ... %F %*D %2S”, &I, &X, ... 0123 45A72 ... І 56, X - 789.0 ... меншіктейді, 0123
өткізіп, NAME үшін «45» ... ... ... кез келген енгізу
процедурасына жолдау барысында қарастырылу А ... ... Бұл ... да NAME ... ... тұр, ... оның ... & белгісін қою
керек.
Келесі мысал ретінде элементар калькуляторды алып, келесі ... ... ... ... ... /* ... DESK ... */
{ DOUBLE SUM, V;
SUM =0;
WHILE (SCANF(“%LF”, &V) !=EOF) PRINTF(“\T%.2F\N”, SUM += V);
}
SCANF функциясының орындалуы оның басқарушы жолы өшірілген кезде немесе
енгізу ... ... ... ... ... келмеген
жағдайда тоқтатылады. Өзінің мәні ретінде ол сәйкес ... және ... ... меншіктелу санын береді. Бұл сан енгізу элементтерінің
табылған санын анықтау үшін ... ... шығу ... ... EOF ... ... SCANF ... іздеу соңғы енгізілген
символдан кейін орындалады.
Соңғы ескерту: SCANF функциясының ... ... болу ... қателіктер жазу барысында орындалады:
SCANF(“%D”, &N) орнына
SCANF(“%D”, N);
Жадыдағы форматты түрлену.
SCANF және PRINTF функцияларынан ... ... ... ... ... емес жолмен жұмыс істейтін SSCANF және SPRINTF
функциялары туады. Бұл файлдарға жолдау мына түрде жүреді:
SPRINTF(STRING, CONTROL, ARG1, ARG2, ...) ... CONTROL, ... ...) ... да, SPRINTF ... ... түрлендіреді: ARG1,
ARG2 және т.б. CONTROL үшін ... ... ... ... ... ... STRING ... көшіреді. Әрине, нәтижені қабылдау
үшін STRING жолы үлкен болуы қажет. Мысалы, NAME – бұл символды массив, ...... ... ... ... үшін TEMPNNN жолын жасайды, мұнда NNN – N ... SSCANF ... ... ... – ол CONTROL ... ... ... жолын қарастырады және қорытынды нәтижелерді ARG1, ... ... және т.б., бұл ... ... ... керек.
Жолдаудың нәтижесінде
SCANF(NAME, “TEMP%D”, &N);
N айнымалысы сандар жолының мәнін алады.
Файлдарға кіру мүмкіндігі.
Осыған дейін жазылған программаларды ... ... ... шығаруғы жаздық.
Енгізу-шығарудағы келесі қадам, алдын-ала программамен байланыспаған
файлмен жұмыс істейтін программаны жазу ... ... ... қажеттілікті керек ететін ... ... ... ... ... ол ... шығаруға бірнеше ... ... САТ ... ... үшін ... ... ... терминалға файлдарды шығару үшін де қолданылады, олар
файлдарға аты бойынша қатынай алмайды. ... X.C.Y.C ... X.C және Y.C ... ... ... енгізеді.
Енді біз САТ программасын файл конкатенациясы үшін жаза аламыз.
Бұл жерде ... ... ... ... ... программалар үшін
өте қолайлы, егер командалық жолда аргументтер болса, онда олар кезекпен
өңделеді. Егер ... ... жоқ ... онда ... енгізу
өңделеді.
#INCLUDE
MAIN(ARGC, ARGV)
/*CAT: CONCATENATE FILES*/ INT ARGC;
CHAR *ARGV[];
{ FILE *FP, *FOPEN();
IF(ARGC==1) /*NO ARGS; COPY STANDARD INPUT*/ ... WHILE (--ARGC > 0) IF ... ... OPEN ... ELSE \( ... ... /*COPY FILE FP TO STANDARD OUTPUT*/ FILE ... INT ... ... !=EOF) PUTC(C, STDOUT);
}
STDIN және STDOUT файлдарының нұсқауыштары алдын ала енгізу-шығару
кітапханасында стандартты енгізу және стандартты ... ... ... Олар FILE* типті объектіні қолдануға болатын әр ... ... ... олар ... ... константалар болып табылады, сондықтан
да оларға ештеңе меншіктей алмайсыз.
Қателерді өңдеу - STDERR және EXIT.
САТ ... ... ... ... Бұл ... мынадай
жағдайжа туады, егер қандай да бір себеппен бір файл ... ... ... бұл ... ... хабар біріктірілген шығарудың соңына
жазылады.
Мұндай жағдайды жақсы өңдеу үшін, STDIN және STDOUT сияқты, STDERR ... ... ... файл ... САТ ... қателері стандартты қателер файлына
жазылатындай, өзгертейік.
#INCLUDE
MAIN(ARGC,ARGV)
/*CAT: CONCATENATE FILES*/ INT ARGC;
CHAR ... FILE *FP, ... /*NO ARGS; COPY STANDARD INPUT*/ ... WHILE (--ARGC > 0) ... ... “CAT: CAN'T ... ... ELSE \( FILECOPY(FP);
} EXIT(0);
}
Программа қателер бар екендігі туралы екі түрлі ... ... ... ... ... ... STDERR файлына түсіп,
қолданушы терминалында орын алады.
Сонымен қатар, программа стандартты кітапханадағы EXIT ... ... бұл ... ... ... ... ... кітапханада әр түрлі функциялар берілген, ... өте ... ... мен ... тексеру. Кейбір макростар символдардың
түрлері мен түрленуін тексереді:
SALPHA© 0 емес, егер “C” алфавиттік ... 0 – егер ... 0 ... егер “C” ... ... ... 0 - егер болмаса.
SLOWER© емес 0, егер “C” төменгі регистрдің әріпі, 0 – егер болмаса.
SDIGIT© 0 ... егер “C” сан, 0 – егер ... 0 ... егер “C” бос жол, ... ... жаңа жол, 0 – егер
болмаса.
OUPPER© түрлендіреді “C” жоғарғы регистрдің әріпіне.
OLOWER© ... “C” ... ... әріпіне.
Қорытынды
Сонымен, осы тақырыпты қорыта келсем, бұл жұмыста енгізу/шығару
құралдарымен, олардың ... ... және ... ... және де
«енгізу/шығару стандартты кітапханасы» туралы баяндадым. Бұл функциялар
программалық интерфейстің қолайлығына арналған, бірақ тек ... ... ... ... ... операцияларды бейнелейді. Олардың
қолданылуын көрсететін мысалдарды қарастырдым.
GETCHAR және PUTCHAR функциялары - ... ... мен ... ... ... – PRINTF ... ... енгізілу –
SCANF функциясына, файлдарға кіру мүмкіндігі туралы, ... ... ... және EXIT функциялары туралы жаздым. Оларға мысалдар келтіріп
кеттім. Символдардың түрлері мен түрленуін көрсетіп кеттім.
.
Қолданылған әдебиеттер ... ... Д. ... Си» М: 1988 ... Мұртазина Ә.Ө., Сәтпаева А.К. «Си тілінде программалаудың негіздері»
Алматы: ҚазҰТУ, 2002 ж
3. Культин Н. ... М: 1991 ... ... В.В., ... С.С. ... на ... ... пособие. – 2- е доп. изд. – М.: ... и ... ... ... В.В. Язык С ++: ... ... – 3- е изд. Дораб . ... ... и ... ... ... Н.Б. С/ С++ в задачах и примерах. – СПб.: ... ... ... ... Н.Н. ... для Windows на С/ С++. ... ООО “ Бином – Пресс”, 2004
8. ... Е.А. С/ С++ в ... и ... – Мн. : ... ... Ахо А.В., Хопкрофт Д.Э., Ульман Д.Д. - Структуры данных и алгоритмы,
Издательство “Вильямс”, Москва, 2000
10. ... Р. ... ... на С++. ... 1-4, ... ... 2001
ҚАЗАҚСТАН РЕСПУБЛИКАСЫНЫҢ БІЛІМ ЖӘНЕ ҒЫЛЫМ МИНІСТІРЛІГІ
ҚАЗАҚ МЕМЛЕКЕТТІК ҚЫЗДАР ПЕДАГОГИКА ИНСТИТУТЫ
ЖОҒАРҒЫ ОҚУ ... ... ОҚУ ... 2008ж

Пән: Информатика
Жұмыс түрі: Материал
Көлемі: 20 бет
Бұл жұмыстың бағасы: 300 теңге









Ұқсас жұмыстар
Тақырыб Бет саны
С++ тілі және оның мүмкіншіліктері13 бет
«Информатика сабағында оқушылардың шығармашылық белсенділігін дамыту »57 бет
Шешендік өнер және шешен таланты4 бет
Өнімдер өндірісі298 бет
Сәуле жарақаттары. Жануарлардың бөгде заттармен жарақаттанулары туралы6 бет
Сәуле жарақаттары.Жануарлардың бөгде заттармен жарақаттанулары5 бет
Электр тогынан болатын жарақаттар туралы ақпарат4 бет
Қазіргі кезеңдегі кітапханада еңбек ұжымын басқару30 бет
Қазақстан Республикасында ұлттық республикалық автоматтандырылған кітапханалық-ақпараттық жүйе (РАБИС) программасын құру және оны таратудың мәселелері34 бет
Қазақстан Республикасының кітапхана ісін автоматтандыру14 бет


Исходниктер
Пәндер
Көмек / Помощь
Арайлым
Біз міндетті түрде жауап береміз!
Мы обязательно ответим!
Жіберу / Отправить


Зарабатывайте вместе с нами

Рахмет!
Хабарлама жіберілді. / Сообщение отправлено.

Сіз үшін аптасына 5 күн жұмыс істейміз.
Жұмыс уақыты 09:00 - 18:00

Мы работаем для Вас 5 дней в неделю.
Время работы 09:00 - 18:00

Email: info@stud.kz

Phone: 777 614 50 20
Жабу / Закрыть

Көмек / Помощь