37691

Складні структури даних. Структури. Об’єднання. Бітові поля

Лабораторная работа

Информатика, кибернетика и программирование

Мета: навчитись проводити обробку складних структур даних і вирішувати задачі з використанням різних методів сумісного збереження даних різноманітних типів.

Украинкский

2013-09-25

143.69 KB

8 чел.

Міністерство освіти і науки, молоді та спорту України

Хмельницький національний університет

Кафедра системного програмування

ЛАБОРАТОРНА РОБОТА №5

з програмування

Складні структури даних. Структури.

Об’єднання. Бітові поля

Студент групи КІ-10-1      _______   ___________   Ноль М.Г.

Керівник                             _______   ___________   Медзатий Д.М.

Хмельницький

2011

Лабораторна робота №5

Тема: Складні структури даних. Структури. Об’єднання. Бітові поля.

Мета: навчитись проводити обробку складних структур даних і вирішувати задачі з використанням різних методів сумісного збереження даних різноманітних типів.

Завдання

Створити структуру “Банк”, в якій містяться наступні поля:

-   прізвище, ім’я, по батькові;

-   номер рахунку;

-   дата останньої операції;

-   сума останньої операції;

-   сума вкладу.

Написати програму, що окремими функціями виконує наступні дії:

-   введення з клавіатури даних у масив, що складається з N змінних типу “Банк”;

-   впорядкування записів за зменшенням суми вкладу;

-   виведення на екран інформації про всіх абонентів, сума останньої операції яких не перевищує 100 грн і номер рахунку яких містить цифру, що вводиться із клавіатури.

Програма

#include <stdio.h>

#include <string.h>

struct {char pib[50],number[10],data[10]; int suma,vklad;} b[10],t;

int N;

void read()

{

int i;

do printf("Введіть кількість записів N (N<10): "), scanf("%d",&N); while ((N<=0)||(N>10));

for (i=0;i<N;i++)  {

  printf("\n\tВведіть прізвище,ім'я,по-батькові:  "); gets(b[i].pib);

  printf("\tВведіть номер рахунку:  "); gets(b[i].number);

  printf("\tВведіть дату останньої операції:  "); gets(b[i].data);

  printf("\tВведіть суму останньої операції:  "); scanf("%d",&b[i].suma);

  printf("\tВведіть суму вкладу:  "); scanf("%d",&b[i].vklad);  }

}

void sort()

{

int i,j;

for (i=0;i<N;i++) for (j=1;j<N;j++) if (b[j].vklad>b[j-1].vklad) t=b[j],b[j]=b[j-1],b[j-1]=t;

}

void res()

{

int i; char a;

printf("Введіть цифру: "); scanf("%s",&a);

for (i=0;i<N;i++) if ((b[i].suma<=100)&&(strchr(b[i].number,a)!=NULL))

   {printf("\n\tПІБ:  "); puts(b[i].pib);

    printf("\tНомер рахунку:  "); puts(b[i].number);

    printf("\tДата останньої операції:  "); puts(b[i].data);

    printf("\tСума останньої операції:  "); printf("%d\n",b[i].suma);

    printf("\tСума вкладу:  "); printf("%d\n",b[i].vklad);

   }  

}

void main()

{

read();

sort();

res();

}


Висновок

Виконавши лабораторну роботу, я навчився описувати та опрацьовувати структури в мові програмування С, сумісно зберігати дані різних типів, а також засвоїв створення функцій.


 

А также другие работы, которые могут Вас заинтересовать

8369. Все о китайском чае 103 KB
  Во все времена Китай считался одним из главных производителей чая. За долгую историю производства чая в это стране были открыты и внедрены в практику различные способы выращивания чайного листа, продуманы и апробированы принципы его предварительной ...
8370. Китайский и японский новый год 41.5 KB
  Китайский новый год. Существует древнее суеверие, которое не позволяет в первый день Нового года есть мясо. Считается, что такая пища способна отвратить от человека счастье на целый год. Также не полагается мыть волосы в этот день, поскольку можно с...
8371. Китайское изобразительное искусство 53 KB
  Китайское изобразительное искусство Китайская национальная живопись гохуа появилась в глубокой древности. Она отличается большим своеобразием и совершенно отлична по материалу, технике и художественным средствам от европейской живописи. Китайские ка...
8372. Великая китайская стена 32 KB
  Великая китайская стена (кит.трад., упр, пинь инь: буквально: Длинная стена или кит. трад., упр., пиньинь, буквально: Длинная стена в 10 000 ли)...
8373. Великая китайская стена. Архитектурное сооружение 27.5 KB
  Великая китайская стена Эта очень однородная традиционная архитектура повторяется на протяжении веков установлением типов простых прямоугольных зданий невысокого силуэта, построенных в соответствии с канонами пропорций и методов строительства, котор...
8374. Велика Китайська стіна 24.5 KB
  Велика Китайська стіна - символ Китаю, одна із найграндіозніших споруд усіх часів і народів. Стіна починається недалеко від Ляодунської затоки і проходить по горах через Північний Китай і пустелю Гобі, довжина стіни зі сходу на захід - 6700 км....
8375. Первый властелин единого Китая 72 KB
  Первый властелин единого Китая 1. Вопросы для повторения. Определите словесно с помощью корты местоположение Китая. Докажите, что в Китае были все необходимые условия для занятия земледелием? Какие трудности приходилось преодолевать китай...
8376. Книгораспространение в Китае 26.27 KB
  Книгораспространение в Китае Книжное дело в Китае занимает одну из ведущих позиций на рынке информации и является важной статьей центрального и региональных бюджетов, несмотря на определенные изменения конъюнктуры рынка информационных технологий. Ве...
8377. Происхождение и история китайской письменности 73.5 KB
  Происхождение и история китайской письменности Место письменности в истории китайского языка Письменность является выразителем языка. Древние люди письменность и язык ставили на одну доску. Изменение звука речи они ошибочно принимали за изменение пр...