149
{"name3",20},
{"name4",21},
{"name5",22} };
struct STUDENT stnew[5], stn;
FILE *fp=fopen("l9_2.dat","w");
writeStudInfo(fp,st,5);
fclose(fp);
fp=fopen("l9_2.dat","r");
readStudInfo(fp,stnew,5);
readStudNum(fp,&stn,2);
fclose(fp);
}
Студенттердің өз бетімен орындауға арналған тапсырмалары
1. Файл құратын программа жазыңыз, оның компоненттері келесі структурадан
тұрады:
Табель нөмірі
ТАӘ
Жалақы мөлшері
Файлға бес жұмысшы туралы мәлімет енгізіңіз, басқа файлға ең жоғары жалақы
алатын жұмысшы туралы мәліметті енгізіңіз.
2. ZARPL.DAT файлын құратын және экранға шығаратын программа құрыңыз,
оның компоненттері келесі структурадан тұрады:
Табель нөмірі
ТАӘ
Жалақы мөлшері
Енгізуден шығу – табель нөмірі=999. Жалақысы 45000 теңгеден асатын
жұмысшылардың табель нөмірін, ТАӘ және жалақысын экранға шығарыңыз.
3. Файл құратын программа жазыңыз, оның компоненттері келесі структурадан
тұрады:
Табель нөмірі
аванс
Енгізуден шығу – табель нөмірі=999. Экранға келесі құрылымды ведомость
шығарыңыз:
Табель нөмірі
аванс
…………………… …….
…………………… …….
Барлығы:
4. Бүтін сандар файлын құрыңыз. Файлдағы оң сандардың арифметикалық
ортасын табыңыз.
5. Бүтін сандар файлын құрыңыз. Файлдағы ең кіші элементтің реттік нөмірін
табыңыз. Егер мұндай сандар бірнешеу болса, онда біріншісінің нөмірін
табыңыз.
150
6. Элементтері жеке символдар болып келген файл құрыңыз. Алғашқы екі
символы цифр болып табыла ма, анықтаңыз. Егер цифр болса, онда осы
цифрлардан құралған сан тақ бола ма, анықтаңыз.
7. Элементтері жеке сөздер болып келген файл құрыңыз. Реттік нөмірі тақ
болып келген сөздерден сөйлем құраңыз.
8. Элементтері «киллобайт» сөзінің жеке әріптері болып келген файл құрыңыз.
Қатесі жоқ жаңа файл құрыңыз.
9. Текстік файл берілген. 30-дан аса символы бар жолдарды басқа файлға жазу
керек.
10. Текстік файл берілген. Барлық тақ нөмірлі жолдарды екінші файлға, ал жұп
нөмірлі жолдарды үшінші файлға жазу керек. Жолдардың жалғасу реті
сақталады.
Практикалық жұмыстың орындалуы туралы есептің формасы
Есепте болуы қажет:
Кез-келген орындалған тапсырма үшін
1. Есептің шешімінің математикалық моделі;
2. Есептің шешімінің алгоритмі;
3. Есеп шешімінің алгоритмі орындалған программа.
Блиц-тест
1. С/С++-те fopen функциясы не үшін арналған?
a) Файлды ашуға.
b) Файлды жабуға.
c) Файлды құруға және ағымдық каталогта уақытша файл ашуға.
d) Ашылған файлдан символды оқуға.
e) Графиканы инициализациялауға.
2. С/С++-те fсlose функциясы не үшін арналған?
a)
Файлды ашуға.
b)
Файлды жабуға.
c)
Файлды құруға және ағымдық каталогта уақытша файл ашуға.
d)
Ашылған файлдан символды оқуға.
e)
Графиканы инициализациялауға.
3. С/С++-те tmpfile функциясы не үшін арналған:
a)
Файлды ашуға.
b) Файлды жабуға.
c) Файлды құруға және ағымдық каталогта уақытша файл ашуға.
d) Ашылған файлдан символды оқуға.
e) Графиканы инициализациялауға.
Бақылау сұрақтары
1. Файл дегеніміз не? Файлдар қандай мақсатта қолданылады?
3. Файл атауларына қойылатын талаптар қандай?
4. Файлдармен қандай амалдар орындалады?
5. Файлдан мәліметтерді оқу үшін қандай функциялар қолданылады?
151
Глоссарий
С тілінде:
Файлдан оқу және файлға енгізу үшін ең алдымен файл fopen функциясының
көмегімен ашылуы тиіс. Бұл функция операциялық жүйе арқылы орындалатын
әрекеттерді ұйымдастыру жұмысын орындайды және файлмен мәлімет алмасуға
арналған көрсеткішті қайтарады.
Ал, файлға көрсеткіш файл туралы информациялардан тұратын құрылымға
(жазбаға) сілтейді. Мұндағы информация мынадай сұрақтарының жауабынан
тұрады:
буфер адресі,
буфердегі ағымды литердің күйі,
файлдан оқуға немесе жазуға ашық па?,
файлдың соңғы таңбасы кездесті ме?
Мұндай құрылым сипаттамасы кітапханасындағы FILE типінде
беріледі. Қолдану үшін мынадай декларация берілсе жеткілікті:
FILE * fp;
FILE * fopen (char * name, char * m);
Мұндағы: fp – FILE типіндегі көрсеткіш, ал fopen FILE – ге көрсеткішті
қайтарады. Fopen функциясы мына түрде қолданылады:
fp = fopen (name, m);
Мұндғы: name – файлдың атын меншіктейтін жол;
ал, m – файлды қолдану режимі; яғни бұл да жол, қолданушы файлды қалай
қолданатынын білдіреді, төмендегідей мәндердің бірін иелене алады:
" r " – (read) оқу режимі;
" w "- ( write) жазу;
" a "- ( apprnd) толықтыру;
Кейбір жүйеде тексттік және бинарлық файлдар болып жіктеледі, бұл жағдайда
режим жолына "в" (binary – бинарлық) немесе “t”(тексттік) таңбасы тіркеледі.
Файлмен жұмыс жасау барысында қате кездессе, онда fopen функциясы NULL
мәнін қайтарады.
Мысалы,
FILE*fin, * fout;
fin=fopen (“PRIMER.dat”,”’r”);
fout=fopen (“RESULT.dat”, “w”);
1-ші жолда 2:fin,fout – файл көрсеткіші құрылады, ал төменгі жолдарда
сәйкесінше оқуға және жазуға арналған файлдар ашылады.
Fopen()
функциясы
файлдың
аталған
көрсеткішін
қабылдайды,
программаның орындалу барысында олардың мәндері жасанды өзгертілмеуі тиіс.
Мұндай файлдағы 2-ші параметр файлдарымен мәлімет алмасу режимін
анықтайды. Файл мынадай режимдерде ашылуы мүмкін:
- текстік;
- екілік;
Достарыңызбен бөлісу: |