Опрацювання структур.

Інформація про навчальний заклад

ВУЗ:
Національний університет Львівська політехніка
Інститут:
Не вказано
Факультет:
КН
Кафедра:
Не вказано

Інформація про роботу

Рік:
2005
Тип роботи:
Лабораторна робота
Предмет:
Інші

Частина тексту файла (без зображень, графіків і формул):

Міністерство освіти та науки України НУ “Львівська політехніка” Лабораторна робота №7 “Опрацювання структур.” Львів 2005 Назва роботи: Опрацювання структур. Мета роботи: Закріпити теоретичні знання та оволодіти практичними навиками опрацювання структур даних. Засвоїти техніку створення та опрацювання складних типів даних. Завдання на лабораторну роботу. Розробити програмне забезпечення для опрацювання структур відповідно до заданого варіанту. Для внутрішнього представлення даних, що опрацьовуються, розробити відповідні структури даних. Прямокутники (у межах даних задач) однозначно представляються координатами верхнього лівого та нижнього правого кутів. Дані вводити зі стандартного пристрою вводу а результати виводити на стандартний пристрій виводу. Забезпечити коректне звільнення динамічно виділеної пам’яті при завершенні використання даних під які вона виділена. Звернути особливу увагу на обробку помилок, які користувач може зробити при використанні програми. При вирішенні задач забезпечити дружній інтерфейс з користувачем. Ввести прізвища, імена та номер залікової книжки довільного числа студентів групи. Впорядкувати введені записи за іменем у зворотному до алфавітного порядку та вивести результати. Текст програми: #include <stdio.h> // підключення необхідних бібліотек #include <conio.h> struct student { // об’ява структури з наступними полями char group[10]; char name[20]; char surname[20]; int zal; }; int main(int argc,char* argv[]) // головна функція { int i,j,max; \\ об’ява змінних struct student *st; int *sort,t; // перевірка навведення початкових даних (кількість студентів) if(argc!=2){printf("Error");return 1;} sscanf(argv[1],"%d",&max); // зчитування із строки значення змінної згідно заданого формату st=(struct student*)calloc(max,sizeof(struct student));// виділення пам’яті під структуру sort=(int*)calloc(max,sizeof(int)); clrscr(); printf("Enter surname,name,and Nzal. For example (Petrov,Petro,01994436):\n"); for(i=0;i<max;i++){ printf("**************************************************\n"); printf("Surname:");scanf("%s",st[i].surname); printf("Name:");scanf("%s",st[i].name); printf("Nzal:");scanf("%d",&st[i].zal); } printf("\n"); printf("-----------------------------------------------------\n"); printf("| Sorted information about students |\n"); for(i=0;i<max;sort[i]=i++); for(i=0;i<max-1;i++) for(j=i+1;j<max;j++) if(st[sort[i]].name[0]<st[sort[j]].name[0]) { t=sort[j];sort[j]=sort[i];sort[i]=t; } printf("-----------------------------------------------------\n"); printf("| surname | name | zalikova |\n"); printf("-----------------------------------------------------\n"); for(i=0;i<max;i++){printf("|%11s|%14s|%24d|\n",st[sort[i]].surname,st[sort[i]].name,st[sort[i]].zal);} printf("-----------------------------------------------------\n"); return 0; } Результат роботи програми: Surname:Morozko Name:Petro Nzal:01222333 *********************************** Surname:Sidirov Name:Ivan Nzal:01232323 *********************************** Surname:Sokolov Name:Muhajlo Nzal:01233222 *********************************** ----------------------------------------------------- | Sorted information about student | ----------------------------------------------------- | surname | name | zalikova | ----------------------------------------------------- | Morozko| Petro| 01222333 | | Sokolov| Muhajlo| 01232323 | | Sidirov| Ivan| 01232323 | ----------------------------------------------------- Алгоритм програми
Антиботан аватар за замовчуванням

30.04.2013 10:04-

Коментарі

Ви не можете залишити коментар. Для цього, будь ласка, увійдіть або зареєструйтесь.

Ділись своїми роботами та отримуй миттєві бонуси!

Маєш корисні навчальні матеріали, які припадають пилом на твоєму комп'ютері? Розрахункові, лабораторні, практичні чи контрольні роботи — завантажуй їх прямо зараз і одразу отримуй бали на свій рахунок! Заархівуй всі файли в один .zip (до 100 МБ) або завантажуй кожен файл окремо. Внесок у спільноту – це легкий спосіб допомогти іншим та отримати додаткові можливості на сайті. Твої старі роботи можуть приносити тобі нові нагороди!
Нічого не вибрано
0%

Оголошення від адміністратора

Антиботан аватар за замовчуванням

Подякувати Студентському архіву довільною сумою

Admin

26.02.2023 12:38

Дякуємо, що користуєтесь нашим архівом!