С тілі. Енгізу-шығару құралы



І Кіріспе
1. Ақпаратты енгізу.шығару функциялары: Printf және scanf
1.1 Ақпаратты енгізу функциялары.
1.2. Стандартты кітапханаларға шолу.
1.3 Стандартты енгізу.шығарудың функциялары: GETCHAR мен PUTCHAR
ІІ Қорытынды
Енгізу-шығару құралы С тілінің құрамды бөлігі болып табылмайды. Дегенмен, бұған дейін біздің көрсетіп келгенімізге қарағанда нақты программалар аса күрделі тәсілмен шешіліп отырады. Менің курстық жұмысымда енгізу-шығарудың стандартты кітапханасы көрсетілетін болады, яғни С программасының енгізу-шығару стандартты жүйесін қамтамасыз ету үшін өңделген функциялар жиынтығы.Бұл функциялар интерфейстік программаларға арналған ,сонда да ол сонғы операциялық жүйемен қамтамасыз етілген операцияларды қамтиды. Процедуралар эффективтілігінің жоғарылығы соншалықты , бұл процедураларды қолданушылар ескермей тастап кетуді ойламайды да. Сонымен, осы процедуралар барлық С тілінде қолданылатын кітапханалар үшін қолданылады. Мен бұл курстық жұмыста енгізу-шығарудың барлық кітапханаларын көрсетіп жатпаймын. Мені көп қызықтыратыны С программасының жазылымдарын өзінің операциялық ортасымен қарым-қатынасын карастыра отырып, осы жазылымдардың мән-мағынасын ашу.
1. Ақпараты енгізу-шығару функциялары. Printf және scanf функциялары
• Printf() функциясы
• Формат спецификациялары
• Scanf() енгізу функциясы
• Scanf() енгізу функциясының ерекшеліктері
1 Подбельский В.В., Фомин С.С. Программирование на языке Си:
Учеб. пособие. – 2- е доп. изд. – М.: Финансы и статистика, 2002
1 Подбельский В.В. Язык С ++: Учеб. пособие. – 3- е изд. Дораб . - М.: Финансы и статистика, 1998
2 Культин Н.Б. С/ С++ в задачах и примерах. – СПб.: БХВ – Петербург, 2004
3 Мартынов Н.Н. Программирование для Windows на С/ С++. Том.1.- М.: ООО “ Бином – Пресс”, 2004
4 Шиманович Е.А. С/ С++ в примерах и задачах. – Мн. : Новое знание, 2004
5 Ахо А.В., Хопкрофт Д.Э., Ульман Д.Д. - Структуры данных и алгоритмы, Издательство “Вильямс”, Москва, 2000
6 Седжвик Р. Фундаментальные алгоритмы на С++. Части 1-4, Издательство “ДиаСофт”, Москва, 2001

Кіріспе

Енгізу-шығару құралы С тілінің құрамды бөлігі болып табылмайды.
Дегенмен, бұған дейін біздің көрсетіп келгенімізге қарағанда нақты
программалар аса күрделі тәсілмен шешіліп отырады. Менің курстық жұмысымда
енгізу-шығарудың стандартты кітапханасы көрсетілетін болады, яғни С
программасының енгізу-шығару стандартты жүйесін қамтамасыз ету үшін
өңделген функциялар жиынтығы.Бұл функциялар интерфейстік программаларға
арналған ,сонда да ол сонғы операциялық жүйемен қамтамасыз етілген
операцияларды қамтиды. Процедуралар эффективтілігінің жоғарылығы соншалықты
, бұл процедураларды қолданушылар ескермей тастап кетуді ойламайды да.
Сонымен, осы процедуралар барлық С тілінде қолданылатын кітапханалар үшін
қолданылады. Мен бұл курстық жұмыста енгізу-шығарудың барлық кітапханаларын
көрсетіп жатпаймын. Мені көп қызықтыратыны С программасының жазылымдарын
өзінің операциялық ортасымен қарым-қатынасын карастыра отырып, осы
жазылымдардың мән-мағынасын ашу.

1. Ақпараты енгізу-шығару функциялары. Printf және scanf функциялары

• Printf() функциясы

• Формат спецификациялары

• Scanf() енгізу функциясы

• Scanf() енгізу функциясының ерекшеліктері

Си тілінде сыртқы ортамен мәліметтер алмасу stdio.h енгізу-шығару
функциялары кітапханасын пайдалану арқылы орындалады. Ол тақырып файлы
ретінде былай жазылады:
#include stdio.h

Ақпаратты шығаруға (экранға, баспаға,.. ) Си тілінде мынадай
функциялар пайдаланылады:
Putchar() функциясы бір символды келесі жолға өтпей шығаруды
қамтамасыз етеді.
Puts() функциясы символдар қатарын шығарып, келесі жолдың басына
көшуді қамтамасыз етеді.
Printf() функциясы форматталған мәліметті шығаруға арналған. Оның
форматы мынандай:

рrintf (басқарушы қатар, аргументтер тізімі );

Басқарушы қатар тырнақшаға алынады және ол компиляторға ақпараттың
шығарылу түрін көрсетеді. Оған түрлендіру спецификациялары мен басқарушы
символдар кіруі мүмкін.
Түрлендіру спецификациялары жазылу түрі:

% жалау өрістің мөлшері . дәлдігі спецификация

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

Printf() функциясы мәліметтерді экранға шығару үшін қолданылады. Оның
жалпы жазылу түрі:
printf(формат тіркесі,аргументтер тізімі);
(формат тіркесі – қостырнақшамен (”) шектеліп, аргументтердің қалай
бейнеленетінін көрсетіп тұрады, экранға (баспаға) шығару алдында барлық
аргументтер формат спецификациясына сәйкес түрлендіріледі, спецификация %
символымен басталады және мәліметтер типін, оларды түрлендіру тәсілін
көрсететін бір әріп жазылады. Объектілер ретінде айнымалылар, константалар,
өрнектер қолданылуы мүмкін. Мысалы:
printf (“ Пи санының мәні = %f\n”, pi);
Формат тіркесінде мыналар болады:
1) мәтін ретінде шығарылатын символдар тіркесі;
2) түрлендіру спецификациялары;
3) басқару символдары.

Әрбір аргументке өз спецификациясы сәйкес келуі тиіс, олар:
%d – бүтін ондық сан шығарылуы тиіс,
%i – бүтін ондық сан шығарылуы тиіс,
%f – жылжымалы нүктелі нақты ондық сан ([-]dddd.dddd ) жазылып шығады,
%e – жылжымалы нүктелі экспоненциалды сан ([-]d.dddde(dd) шығарылады,
%E – жоғарыдағы сияқты, тек е орнына Е ([-]d.ddddE(dd) шығарылады,
%c – бір символ шығарылуы тиіс,
%s – символдар тіркесі (қатары) шығарылуы тиіс,
%g – нақты сан, сан ұзындығына қарай %e немесе %f қолданыла алады,
%u – таңбасыз ондық бүтін сан жазылып шығады,
%o – таңбасыз бүтін сегіздік сан шығады,
%x – таңбасыз бүтін он алтылық сан шығады.
\n – келесі жаңа жолға көшуді атқаратын басқару символы.
Мысалы:
%9i – бүтін сан ені 9 цифрдан тұрады, сан ені аз болса, оның сол жағында
бос орындар орналасады.
%9.3f – нақты сан ені 9 цифрдан тұрады, оның 3 таңбасы бөлшекке беріледі,
сан ені аз болса, оның сол жағында бос орындар орналасады.
Әрбір спецификация % символынан басталып, түрлендіру символымен
аяқталады. Ол екеуінің ортасында мыналар тұруы мүмкін:
- минус таңбасы, аргумент мәні сол жақ шетке ығыстырылып жазылады.
- цифрлар, бүтін санның жалпы орналасу енін анықтайды. Сан осы енге немесе
одан артық болып шығарылады. Егер аргумент ені көрсетілген еннен аз болса,
онда ол бос орындармен толтырылып жазылады.
- нүктеге дейін санның жалпы ені, нүктеден соң бөлшек сандар ені
көрсетіледі.
- L модификаторы, сәйкес аргумент мәні INT емес LONG екенін білдіреді.

1.1 Ақпарат енгізу функциялары

getch () функциясы жеке символдарды енгізу үшін қолданылады.
gets () функиясы ENTER пернесін басқанға дейінгі символдар қатарын
енгізуді қамтамасыз етеді.
scanf функциясы мәліметтерді форматтап енгізуге арналған. Функцияның
жалпы жазылу түрі:
scanf (басқару қатары , адрестер тізімі);
Бұл функцияда да, printf () функциясындағыдай басқару қатары
көрсетіледі. Бірақ, scanf() функциясының printf () функциясынан
айырмашылығы оның адрестер тізімінде айнымалылардың нұсқауыштары, яғни
олардың адрестері көрсетіледі. Айнымалының нұсқауышын белгілеу айнымалының
атының алдына оның адресін көрсететін & символы қойылып жазылады. Ал
жолдық айнымалыларды енгізу үшін & символы қойылмайды. %s форматын
пайдаланғанда бірінші кездесетін бос орынға дейінгі жол енгізіледі.
Мәліметтерді бір жолға бос орынмен бөлініп жазылған түрінде немесе бірнеше
жолға жазылған түрінде енгізуге болады.
Бұл ерекшеліктер келесі программалық бөлікте көрсетілген:
int course;
float grant;
char name[20];
printf ( "Укажите ваш курс, стипендию, имя \n");
scanf ( "%d%f", &course, &grant);
scanf ( "%s", name); * & отсутствует при указании массива
символов *
Scanf() енгізу функциясы жоғарыда қарастырылған түрлендіру
спецификациясының көбін пайдаланады.
scanf (формат тіркесі,аргументтер тізімі);
Аргументтер ретінде адрес нұсқауыштары пайдаланылады. Мысалы:
scanf("%d%f", &x,&y);
Кейбір айырмашылықтарын атап өтейік.
1) %е және %f спецификациялары енгізу кезінде бірдей болып
табылады;
2) short типті бүтін санды енгізу кезінде %h спецификациясы
қолданылады.
ЕСКЕРТУ. Айнымалы адресін беру үшін адрестерді жазғанда, айнымалы адресін
анықтау үшін & символы қолданылады. Ал жолдық (қатарлық) айнымалыны
енгізгенде, & символы жазылмайды.
Жол енгізуден бір мысал келтірейік.

* Жол енгізу мысалы *
main()
{
char name [15];
clrscr();
printf("\n‚Ввод имени \n");
scanf("%s",name);
printf("Автором программы является %s\n",name);
}
name атты символ массиві енгізілгенде, адресті анықтайтын & символы
жазылмайды, өйткені массивтің аты name массив адресін анықтайды.

1.2 Стандартты кітапханаларға шолу.

Стандыртты кітапханаға қатынасатын әрбір қорытынды файл,алдымен
келесі түрдегі жолмен басталуы керек.
# INCLUDE STDIO.H
STDIO.H файлында ауыспалы, қолданылған енгізу-шығарудың кітапхансы мен
кейбір макростары анықталады. Компилятор көрсетуімен берілген файлды
стандартты ақпараттар тақырыптарынан тұратын (UNIX операциялық жүйесінде
әдетте LUSRLINELUDE болып келеді) сөздіктен іздеу үшінқарапайым екілік
тырнақшаның орнына бұрыштық жақшалар қолданылады.Бұдан басқа программаның
жүктелуі кезінде кітапхананы міндетті түрде көрсету қажет болады. PDP-11
UNIX жүйесінде, мысалы, компиляциялық программа командасы мына түрде:
СС қорытынды файл және т.б.- LS
LS-стандартты кітапханалалардың жүктелуін көрсетеді.

1.3 Стандартты енгізу-шығарудың функциялары-GETCHAR мен PUTCHAR
Енгізудің ең қарапайым механизмі стандартты енгізуден бірге бір
символ оқумен аяқталады, әдетте GETCHAR функциясының көмегімен қолданушы
терминалдан аяқталады. GETCHAR функциясы әрбір оны қолданған сайын келесі
енгізілетін символды қайтарады. С тілін қолдайтын көп орталарда,
белгісінің көмегімен терминалдар кейбір файлдармен ауыстырылуы мүмкін:
егер, PROG программасы GETCHAR функциясын қолданса, онда жол былай болады:
PROGINFILE
Бұл дегеніміз PROG программасы терминалдан емес, INFILE файлының ішінен
оқиды дегенді білдіреді.Енгізуді қайта іске қосудың оңайлығы соншалықты,
тіпті PROG программасының өзі өзгерісті байқамай қалады.Жолдың “ INFILE”
бөлігі ARGV командалық жол аргументіне кірмейді. Бөлім механизмі бойынша
басқа программалардан енгізулер келіп түссе, енгізуді қайта ... жалғасы

Сіз бұл жұмысты біздің қосымшамыз арқылы толығымен тегін көре аласыз.
Ұқсас жұмыстар
Есептеу техникасының даму тарихы мен кезеңдері. ЭЕМ-ның даму тарихы
Дәріс кешені с/с++ тілдері
СИ тіліндегі файлдар және мәтіндік файлдар
С\С++ программалау тілдерінің тарихына қысқаша шолу
Паскаль тілінде сызықтық программалармен жұмыс
Бүтін сан түріндегі тип
Алгоритм және оның қасиеттері. Программаның көрінісі
Turbo Pascal тілінің операторлары жайлы
Есептер жүйесінің құрылымы
ШЕТЕЛ ТІЛІН ОҚЫТУДА ЖАҢА ТЕХНОЛОГИЯЛАРДЫ ҚОЛДАНУДЫҢ МАҢЫЗДЫЛЫҒЫ
Пәндер