49069

Написать программу, описывающую структуру MARSH

Курсовая

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

Ввод с клавиатуры данных в массив, состоящий из восьми элементов типа MARSH; записи должны быть упорядочены по номерам маршрутов. Вывод на экран информации о маршруте, номер которого введен с клавиатуры...

Русский

2014-01-07

375 KB

15 чел.

Министерство образования и науки Российской Федерации

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

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

КУРСОВАЯ РАБОТА

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

Выполнил: студент гр. ИБ-250

Майоров О.Н.

Проверил: Доцент кафедры ИТ и СБ

Шишкин А. Д.

Санкт-Петербург 2013

Содержание

3.Задание курсовой работы                                                                           

4. Алгоритм функции  vvod( )                                                                                                

    5. Алгоритм функции  sortirovka( )                                                                                       

6. Алгоритм функции  vivod( )                                                                                            

  1.  Алгоритм функции  poisk( )                                                                                        
  2.  Основной алгоритм программы

9. Листинг программы                                                                                                  11. Вывод результатов                                                                                                 

Задание на курсовое проектирование по дисциплине « Методы и средства программирования»

10 вариант.

Описать структуру MARSH, содержащую следующие поля:

  •  Номер маршрута,
  •  Начало маршрута,
  •  Конец маршрута.

Написать программу, выполняющую следующие действия:

  •  ввод с клавиатуры данных в массив, состоящий из восьми элементов типа MARSH; записи должны быть упорядочены по номерам маршрутов;
  •  вывод на экран информации о маршруте, номер которого введен с клавиатуры;
  •  если таких маршрутов нет, выдать на дисплей  соответствующее сообщение.

Алгоритм функции vvod( ):

Алгоритм функции sortirovka( ):

                                                         

Алгоритм функции vivod( ):

                                                    

Алгоритм функции poisk( ):

Основной алгоритм программы:

Листинг программы:

#include<stdio.h>

#include<conio.h>

#include<stdio.h>

#include<string.h>

#define MAX 8

typedef struct MARSH{

char nachalo[20];

char konec[20];

int nom;

}

MARSH;

int i;

MARSH temp;

MARSH s[MAX];

void vvod()

{

clrscr();

int i;

printf("vvedite dannie o 8 marshrutah \n");

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

{

printf("\n nomer marshruta ");

scanf("%d",&s[i].nom);

printf("\n nachalo marshruta ");

scanf("%s",&s[i].nachalo);

printf("\n konec marshruta ");

scanf("%s",&s[i].konec);

}

}

void sortirovka()

{

int i,j;

printf("informacia o marshrutah: \n");

for (i=0; i<MAX-1; i++)

for (j=i+1; j<MAX; j++)

{

if (s[i].nom>s[j].nom)

{

temp=s[i];

s[i]=s[j];

s[j]=temp;

}

 }

 }

void vivod()

{

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

printf("%d %s %s\n", s[i].nom, s[i].nachalo, s[i].konec);

}

void poisk()

{

int nom;

int m=0;

printf("\n vvedite nomer");

scanf("%d", &nom);

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

if (s[i].nom==nom)

{

printf("%d %s %s", s[i].nom, s[i].nachalo, s[i].konec);

m=1;  }

if (m==0)

printf("net takogo nomera ",s[i].nom);

}

void main(void)

{

int o;

vvod();

sortirovka();

vivod();

g1:poisk();

printf("\n  1-prodolshit' 2-vihod\n");

scanf("%d", &o);

if (o==1)

{goto g1;

}

else {goto g2;};

g2: printf("EXIT");

}

Вывод результатов:


i=0;i<max;

Конец цикла

Начало

Конец

i – индекс маршрута

Ввод номера маршрута,  начала маршрута и конца маршрута.

Ввод:

s[i].nomer

s[i].nachalo

s[i].konec

Ввод

i=0; i<max-1

j=i+1; j<max

Сортировка по номеру маршрута

s[i].nom > s[j].nom

Начало

temp=s[i]

s[i]=s[j]

s[j]=temp

конец цикла

конец цикла

вывод

Конец

 

i-индекс маршрута

ачало

 i=0;i<max

Вывод:

s[i].nom

s[i].nachalo

s[i].konec

Вывод номера рейса, название начала маршрута, назнание конца маршрута.

   Конец  цикла

Конец

Начало

Сравнить заданный номер с введенным

(S[i].nom==nom)

 i=0;i<max

Вывод:

s[i].nom,  s[i].nachalo,

s[i].konec.

     m=1

да

нет

 Конец цикла

m=0

Вывод: «нет рейса с таким номером»

Конец

да

нет

Введите номер.

Scanf (%d, &nom)

Начало

Ввод

Вывод

Поиск

Конец

Сортировка


 

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

60073. Історична пізнавально-розважальна гра «Гей ви, козаченьки!» 39 KB
  Мета. Систематизувати і узагальнити знання дітей з історії українського козацтва. Сприяти пізнавальній активності учнів. Розвивати увагу, мислення, вміння працювати командою.
60075. Зима прийшла і свята привела 87.5 KB
  Варвара Великомучениця. У другій половині ІІІ століття в багатого та знатного Діоскора була дочка на імя Варвара. Варвара заслуговувала всього цього. Залишена наодинці відірвана від суспільства Варвара знаходила для себе втіху роздивляючись природу з високої вежі.
60076. ДЖЕНТЛЬМЕН-ШОУ! 64.5 KB
  Чтоб с улыбкою весенней подружиться вы смогли и в хорошем настроении день сегодня провели Песня Мы вам честно сказать хотим Джентльмен 1. Приветствуем вас леди и джентльмены на нашем концерте посвящённом Международному женскому дню.
60078. Яким має бути добро на Землі? 33 KB
  Обладнання: малюнки про добро малюнок дуба калини сонечко. Вступ Діти усміхнімось один одному скажімо: Доброго дня і на краплинку сонця побільшає у світі на краплинку щастя на краплинку радіснішим стане життя вихователь вивішує на дошку...
60079. Ми діти твої, Україно! 59.5 KB
  Мета: стимулювати в учнів інтерес до історії України; формувати національну свідомість школярів; розвивати почуття відповідальності за долю своєї держави; виховувати почуття патріотизму та національної гідності.
60080. Подаруємо ялинці новорічні шати 65.5 KB
  Мета: 1. Виховна: виховувати любов до природи, до народних календарних свят, акуратність, організованість, дисциплінованість. 2. Корекційна: корекція мовлення, розвиток уваги, дрібної моторики рук.
60081. Людина починається з добра 72 KB
  Вчитель: Доброго дня дорогі діти шановні гості А день сьогодні дійсно добрий тому що людським теплом і добротою зігріте серце. Людина в світ приходить для добра Щоб в світі цім добро творити Вам розуміти діточки пора Що серденьку з любовю треба жити.