Мақсаты: С тілінің массивтерімен және көрсеткіштерімен жұмыс істеуде практикалық дағдыларды алу, функционалдық модульділікті қамтамасыз етуді үйрену.
Таңдалған опцияға сәйкес (кесте 1.1) символдық жолдарды өңдеу функциясын жасаңыз. Үлгі үшін С тілінің жолдарын өңдеудің кітапханалық функцияларын алу керек, бірақ оларды өз функциясында қолдануға рұқсат етілмейді. Көздеу, өңдеу, қателер тапсырма параметрлерін және ерекше жағдайлар. Массивтерді дәстүрлі өңдеуді және адрестік арифметиканы қолдана отырып, берілген функцияның екі нұсқасын жасау қажет.
Кесте 1.1-Тапсырма нұсқалары
s жолының бір бөлігін N позициядан бастап s1 жолымен жабу
16
StrSet(s,n,l,t)
s жолының k таңбаларын N позициясынан бастап t мәніне орнату
17
Space(s,l)
сөздер арасындағы бос орындарды біркелкі енгізу арқылы s жолын l ұзындығына дейін жеткізу
18
CopyStr(s1,s2)
S1 жолының str ішкі жолын n позициясынан бастап s2 жолына көшіру
Кестенің жалғасы 1.1
19
Findwords(s,s1)
берілген S1 фразасының s жолына кіруді іздеу
20
Replace(s,s1,s2)
s жолында S1 таңбаларының ішкі жолдарын s2-ге ауыстыру
Ескерту - "сөз" барлық жерде бос орындар жоқ таңбалардың реттілігін білдіреді.
1.2 Зертханалық жұмысты орындауға арналған жалпы нұсқаулар Тапсырманы орындау кезінде сіз келесі ұсыныстарды орындауыңыз керек:
а) таңдалған нұсқаны ескере отырып, тапсырманы орындаңыз;
б) жолды массив ретінде жұмыс істеген кезде жолдың ұзындығы алдын-ала белгісіз екенін есте ұстаған жөн, сондықтан циклдарды есептегішпен емес, жолдың соңына дейін ұйымдастырған жөн;
в) құрылған функция function тек тапсырманы орындауы керек — және одан басқа ештеңе жоқ. Содан кейін, егер параметрлер қате орнатылса немесе олардың мәндерінде қандай да бір ерекше жағдайлар болса, функция function бағдарламаны бұзбауы немесе экранға қандай да бір хабарлама шығармауы керек, бірақ қате немесе ерекше жағдай туралы қорытынды жасауға болатын болжамды мәнді қайтаруы керек;
г) функция function параметрлерінің құрамын анықтаңыз және оның мүмкін болатын қайтарылатын мәндерін орнатыңыз;
д) параметрлердің конфигурациясын (шектеулер, шарттар) және дұрыс емес тапсырмаға реакцияны таңдауды түсіндіру;
е) бағдарламаның логикалық құрылымын сипаттаңыз;
ж) берілген функцияның екі нұсқасын жасаңыз function_mas және function_ptr, массивтерді дәстүрлі өңдеуді және мекен-жай арифметикасын қолдана отырып;
з) бағдарламаны іске асыруды және оның жұмысын тестілеуді орындау. Тестілеу барлық енгізу нұсқалары үшін функциялардың денсаулығын тексеруді қамтамасыз етуі керек. Тестілеу жүргізілетін кіріс деректері кестеге жинақталады (1.2-кесте).
Іске асыру мысалы А қосымшасында келтірілген, 1.2 – кесте-тестілеуге арналған деректер
Тест №
Кіріс деректер
Шығыс деректер
s
N
s1
…
1
2
…
1.3 Есепке қойылатын талаптар
Жұмыс бойынша есеп қағаз тасығышта орындалады және мыналарды қамтуға тиіс:
1) жүйелік бағдарламалық жасақтаманың ерекшелігі неде?
2) С тілінің қандай ерекшеліктері оны Жүйелік бағдарламалау құралы ретінде пайдалануға мүмкіндік береді?
3) С символдарының жолдары қалай ұсынылады?
4) функциялар дегеніміз не?
5) функциялардың прототиптері қандай мақсатта қолданылады?
6) жергілікті және ғаламдық айнымалылардың айырмашылығы неде?
7) функцияның шамадан тыс жүктелуі дегеніміз не?
8) көрсеткіштер дегеніміз не?
9) сілтемеде сақталған мекен-жай мен сол мекен-жайда жазылған мәннің айырмашылығы неде?
10) сілтеме мен көрсеткіштің айырмашылығы неде?