49069

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

Курсовая

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

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

Русский

2014-01-07

375 KB

12 чел.

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

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

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

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

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

Выполнил: студент гр. ИБ-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)

Начало

Ввод

Вывод

Поиск

Конец

Сортировка


 

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

54810. Універсальна модернізована одномісна учнівська парта 4.39 MB
  Стосовно запропонованої учнівської парти то вона має ряд переваг над стандартною. Буде методично правильно коли коли при вивченні графічної грамоти на уроках трудового навчання чи при виконанні графічних робіт на уроках креслення дані завдання виконувати не при горизонтальному положенні столика парти а при вертикальному. Щоб зробити вертикальне положення столика парти достатньо лівою рукою дістатися важіля в передній частині опустити його вниз і столик набуває...
54811. Holidays and traditions in Ukraine and English-speaking countries 1.3 MB
  Dear pupils. I am glad to see you again. The theme of our lesson is “Holidays and traditions in Ukraine and English-speaking countries.” Today we are going to read the text about traditions in English speaking countries and Ukraine, we’ll listen to the text about Thanksgiving Day in Canada and of course you’ll speak English and present your projects. Let’s start.
54812. Parties and Holidays 78.5 KB
  Objectives: to practice pupils’ listening and speaking skills; to enrich the pupils’ vocabulary; to train the usage of the lexical material in practice; to widen students’ knowledge about the celebration of different parties and holidays in Ukraine and English-speaking countries; to develop their critical thinking; to enrich their outlook;
54814. FOOD AND COOKERY 90 KB
  It is not a secret that Ukrainian people are big eaters. Our women cook very much and they cook tasty. But our men like to eat what our women cook and they are thankful for tasty dishes.
54815. Турнір знавців Паскаля 255 KB
  Алгоритмізація та програмування для учнів є більш складними розділами інформатики. Тому варто зробити декілька уроків трішки цікавішими, навіть розважальними. Це може бути, наприклад, узагальнюючий урок напередодні тематичного оцінювання, підсумковий урок теми.
54816. Святкова церемонія вручення паспорта громадянина України 47.5 KB
  Буклети Паспорт – головний документ громадянина України Конституція України. Виховувати громадянина патріота країни любов гордість і повагу до України. Ми раді вітати вас на церемонії вручення паспортів громадянина України.
54817. Патріотичне виховання майбутніх соціальних працівників у процесі вивчення соціології (з особистого досвіду) 197 KB
  Тому одним із завдань гуманітаризації та гуманізації вищої освіти стає орієнтація і на загальнолюдські культурні цінності залучення студентів до національних джерел духовності формування у них патріотичних якостей. Проте результати аналізу досліджень вищеназваних учених свідчать що питаниям патріотичного виховання студентів вищих навчальних закладів освіти узагальненню досвіду формування патріотичних якостей студентів не приділялося належної уваги. Патріотичне виховання студентів це організований планомірний та цілеспрямований процес...
54818. Разнообразие Паукообразных 641.5 KB
  Учитель объясняет ученикам что ее необходимо заполнить в ходе урока а именно после показа 1 слайда презентации и дополнительной информации о пауках подготовленной учениками дома из дополнительной литературы. Учитель стимулирует учеников к активности говоря о дополнительных баллах за правильно заполненную таблицу. Учитель: 1. Учитель: 1.