37691

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

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

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

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

Украинкский

2013-09-25

143.69 KB

7 чел.

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

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

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

ЛАБОРАТОРНА РОБОТА №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();

}


Висновок

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


 

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

41991. ИССЛЕДОВАНИЕ ОПЕРАЦИОННЫХ УСИЛИТЕЛЕЙ (ОУ) 202 KB
  Идеальный усилитель имеет следующие свойства: бесконечный коэффициент усиления по напряжению А→ ∞; бесконечное полное входное сопротивление Zвх → ∞; нулевое полное выходное сопротивление Zвых → 0; равенство нулю выходного напряжения Uвых = 0 при равных напряжениях на входах U1 = U2; бесконечная ширина полосы пропускания ∆fпр= ∞. За входным каскадом следуют один или несколько промежуточных; они обеспечивают уменьшение напряжения сдвига на выходе усилителя до близкой к нулю величины и усиление по напряжению и по току....
41992. ИССЛЕДОВАНИЕ БИПОЛЯРНОГО ТРАНЗИСТОРА (БТ) 422 KB
  В БТ ток через кристалл обусловлен движением носителей заряда обоих знаков и электронов и дырок. В полевых транзисторах протекание тока через кристалл обусловлено движением носителей заряда одного знака электронов или дырок. Он имеет структуру состоящую из чередующихся областей с различными типами электропроводности: npn или pnp рис.
41993. ИССЛЕДОВАНИЕ ПАРАМЕТРОВ РАБОЧЕЙ ТОЧКИ БИПОЛЯРНОГО ТРАНЗИСТОРА В СХЕМЕ С ОБЩИМ ЭМИТТЕРОМ 692.5 KB
  Краткие теоретические сведения Задание тока базы с помощью резистора Схема транзисторного каскада с общим эмиттером представлена на рис. В этом режиме ток коллектора максимален и не управляется током базы: DCIб IкIKH 5.1 где IKH – ток коллектора насыщения определяется сопротивлением Rк в цепи коллектора и напряжением источника питания Ек: IKHEK RK. Для...
41994. Проектирование и создание отчетов в среде Visual FoxPro 9.0 706.97 KB
  0 Открываем уже созданную ранее базу выбираем вкладку Documents переходим на заголовок Reports и нажимаем New. Выбираем Report Wizrd далее если необходимо создать отчет к связанным формам выбираем One –to Mny Report Wizrd а если создать отчет к одинарной форме нашей базы то выбираем Report Wizrd. В нашем случае выбираем Report Wizrd. Затем в левой колонке выбираем таблицу для которой необходимо создать отчет.
41995. Дослідження структури та складових BІOS (Base Іnput Output System) 68.5 KB
  Мета роботи: розглянути складові частини BIOS з допомогою яких створюється парольний захист комп'ютера и визначити методи погроз та атак на паролі BIOS.exe – програма для перепрограмування BIOS з можливістю зберігання змісту існуючого у файл.exe – програма для розпаковки головного модуля BIOS із файлу створеного з допомогою wdflsh.exe та редагування його змісту в тому числі і інструментального паролю BIOS а також отримати новий двійковий файл для перепрограмування BIOS.
41996. Дослідження файлової системи NTFS 625 KB
  Теоретичні відомості Файловая система NTFS New Technology File System формирует на логических дисках следующую структуру: MFT Mster File Tble – метафайл содержащий информацию о информационных файлах и их местонахождении на логическом диске. MFTMirror – копия файла MFT содержащая информацию только о служебных метафайлах которая чаще всего располагается в середине логического диска. Помимо программы загрузчика IPL2 в BootSector размещаются поля со следующей информацией: Смещение байт Описание 0 Команда JMP xxxx 3...
41997. Исследование объемов передаваемой информации в каналах спутниковых систем связи 41.5 KB
  Лабораторная работа состоит из 2 этапов расчета: Расчет энергетических характеристик спутниковой линии.2 содержат графическое отображение результатов расчета. В конце работы предложены результаты расчета производительности системы при заданном наборе исходных данных. Исследовать характеристики ССС по всем пунктам этапа расчета 1 при заданном наборе исходных данных.