Скачиваний:
4
Добавлен:
01.04.2014
Размер:
15.73 Кб
Скачать

БЕЛОРУССКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ

ИНФОРМАТИКИ И РАДИОЭЛЕКТРОНИКИ

Кафедра программного обеспечения информационных технологий

 

  

  

Факультет НиДО

Специальность ПОИТ

 

 

 

Контрольная работа 1

по дисциплине «Языки программирования ч1»

Вариант № 12

 

 

 

 

Выполнил студент:

группа

Зачетная книжка 

Минск 2013

Задание

12. Для получения места в общежитии формируется список студентов, который включает:

фамилию;

номер группы;

доход на одного члена семьи.

Вывести список студентов в порядке уменьшения дохода на одного члена семьи.

Программа

//---------------------------------------------------------------------------

#pragma hdrstop

#include <stdio.h>

#include <conio.h>

//---------------------------------------------------------------------------

struct spisok // Объявление структуры

{

int n;

char name[15];

int cost;

} s1 = {12, "ivanov", 500},

s2 = {12, "petrov", 600},

s3 = {11, "davidov", 700},

s4 = {12, "sidorov", 550},

s5 = {11, "assonov", 870};

struct spisok mass[5]; // Объявление массива структур

#pragma argsused

int print(spisok sp) // Функция вывода списка на экран

{

int i;

printf("\n");

printf ("Nomer gruppi %d ", sp.n );

printf("familia ");

for(i=0 ;i<15 ; i++)

{

printf ("%c", sp.name[i] );

}

printf ("doxod %d ", sp.cost );

return 0;

}

int main(int argc, char* argv[])

{

int i,k;

spisok temp;

mass[0] = s1;

mass[1] = s2;

mass[2] = s3;

mass[3] = s4;

mass[4] = s5;

printf("spisok studentov \n");

for(i = 0;i<5;i++) //вывод изначального массива списков

{

printf(mass[i]);

}

printf("\n");

printf("sortirovka\n");

for(i = 0;i<5;i++) //Сортировка

{ for(k = 0;k<4;k++)

{

if (mass[k].cost<mass[k+1].cost)

{

temp = mass[k];

mass[k]=mass[k+1];

mass[k+1] = temp;

}

}

}

for(i = 0;i<5;i++) //Вывод отсортированного массива списков

{

print(mass[i]);

}

getch();

return 0;

}

//---------------------------------------------------------------------------