Частина тексту файла (без зображень, графіків і формул):
Міністерство освіти і науки України
Національний університет «Львівська політехніка»
Інститут телекомунікацій, радіоелектроніки та електронної техніки
Кафедра теоретичної радіотехніки та радіовимірювань
/
ЛАБОРАТОРНА РОБОТА № 9
на тему: “ Використання вказівників для роботи з масивами даних. ”
з дисципліни «Інформатика та обчислювальна техніка»
Підготував:
Студент Групи РТ-12
Рокоманов Святослав
Прийняв:
Нестор Н. І.
Львів-2010р.
Мета роботи: Освоїти способи звертання до елементів масивів за допомогою
вказівників. Навчитись виділяти та використовувати динамічну пам’ять для розміщення
масивів даних.
Постановка задачі. Написати програму, яка здійснює обробку масиву згідно заданого
варіанту. В програмі використати динамічне виділення пам’яті для масиву. Всі операції з
елементами масиву здійснювати тільки за допомогою вказівників. Масив ввести з клавіатури.
Варіант №6
Написати програму сортування двовимірного масиву за зростанням елементів по рядках.
Розробка алгоритму:
Текст програми:
#include <stdio.h>
#include <stdlib.h>
#define r 3 //кількість рядків
#define s 3 //кількість стовпців
int main(int argc, char *argv[])
{int k,i, j,*v[20],p;
for(i=0;i<r;i++)
{ v[i]=(int*)calloc(s,sizeof(int)); }
printf(" Vukonav stydent grypu RT-12 Rokomanov Sviatoslav\n");
printf(" Laboratorna robota #9\n");
printf("vvedit elementu masuvy:\n");
for(i=0;i<r;i++){
for(j=0;j<s;j++)
scanf("%d",&*(v[i]+j));}
printf("dvovumirnuj masuv:\n");
for(i=0;i<r;i++){
for(j=0;j<s;j++)
printf("%d\t",*(v[i]+j));
puts("");}
for(j=0;j<r;j++)
for(k=0;k<r-1;k++){
for(i=0;i<r-1-k;i++){
if(*(v[j]+i)>*(v[j]+i+1))
{p=*(v[j]+i);
*(v[j]+i)=*(v[j]+i+1);
*(v[j]+i+1)=p;} } }
printf("vidsortovanuj masuv za zrostannjam: \n");
for(i=0;i<r;i++){
for(j=0;j<s;j++)
printf("%d\t",*(v[i]+j));
puts("");}
system("PAUSE");
return 0; }
Тестування та налагодження:
/
Висновок:я освоїв способи звертання до елементів масивів за допомогою
вказівників. Навчитився виділяти та використовувати динамічну пам’ять для розміщення
масивів даних. Ознайомився з функціями calloc, free, malloc, realloc та ін.