49392

Описание структуры с именем NOTE

Курсовая

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

Описать структуру с именем NOTE, содержащую следующие поля: - фамилия, имя; - номер телефона; - дата рождения (массив из трех чисел); Написать программу, выполняющую следующие действия: - ввод с клавиатуры данных в массив, состоящий из восьми элементов типа NOTE; записи должны быть упорядочены по датам рождения; - вывод на экран информации о человеке, номер телефона которого введен с клавиатуры; - если такого нет, выдать на дисплей соответствующее сообщение.

Русский

2013-12-26

50.63 KB

116 чел.

 

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

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

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

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

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

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

Абрамов В.А.

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

Шишкин А. Д.

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

Содержание

  1.  Задание на курсовое проектирование                                                                         3
  2.  Алгоритм функции  vvod                                                                                              4
  3.  Алгоритм функции  sortirovka                                                                                      5
  4.  Алгоритм функции  vivod                                                                                             7
  5.  Алгоритм функции  poisk                                                                                             8
  6.  Алгоритм главной функции                                                                                         9
  7.  Листинг программы                                                                                                     10
  8.   Вывод результатов                                                                                                      12
  9.   Таблица переменных                                                                                                  14
  10.  Список использованной литературы                                                                         14

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

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

- фамилия, имя;

- номер телефона;

- дата рождения (массив из трех чисел);

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

- ввод с клавиатуры данных в массив, состоящий из восьми элементов типа NOTE; записи должны быть упорядочены по датам рождения;

- вывод на экран информации о человеке, номер телефона которого введен с клавиатуры;

- если такого нет, выдать на дисплей  соответствующее сообщение.

Содержание проекта:

  1.  Постановка задачи и метод решения.
  2.  Алгоритм модулей и главной функции.
  3.  Листинг программы.
  4.  Результаты тестирования программы.
  5.  Таблица переменных, задействованных в программе.
  6.  Список использованных источников.

Дата выдачи «____»    сентября 2012 г.

Дата сдачи «____»    декабря 2012г.

Задание выдал                                                                    доц. Шишкин А.Д.

Задание получил                                                               студент Абрамов В.А.

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

На рис. 1 представлен алгоритм функции vvod  для записи данных в структуру типа NOTE

Начало

i=0;i<3

 Ввод

BNOTE[i].NAME BNOTE[i].TELE

Ввод     

BNOTE[i],BDAY

Конец цикла

Конец

i – индекс человека

ввод имени и номера телефона

ввод дня, месяца и года

Рис. 1

На рис. 2 представлен алгоритм функции sortirovka, предназначенной для сортировки  по дате рождения

Начало

j=0; j<8-1

BNOTE[i].BDAY[0]> BNOTE[j].BDAY[0]

да

нет

индекс дней рождения

сортировка

Конец цикла

 Конец цикла

Конец

T=BNOTE[j];

BNOTE[j]= BNOTE[j+1];

BNOTE[j+1]=T;

На рис. 3 представлен алгоритм функции vivod, предназначенной для вывода данных

индекс человека

Начало

 i=0;i<8

BNOTE[i].NAME, BNOTE[i].TELE, BNOTE[i].BDAY

   Конец цикла

Конец

                                                    Рис. 3

На рис. 4 представлен алгоритм функции poisk, предназначенной для вывода на экран информации о человеке, чей номер введен с клавиатуры

Начало

strcmp(Number,BNOTE[i].TELE))

 i=0;i<8

BNOTE[i].NAME,BNOTE[i].TELE,

BNOTE[i].BDAY

     j=1

да

нет

 Конец цикла

j=0

Вывод «Нет человека, чей телефон введен»

Конец

да

нет

j– переменная счётчик

Рис. 4

На рис. 4 представлен алгоритм основной программы, которая вызывает функции vvod, vivod, sortirovka и poisk

Начало

vvod()

vivod()

poisk()

Конец

sortirovka()

Рис. 4

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

//Автор программы Абрамов В.А. ИБ-240.

#include <conio.h>

#include <stdio.h>

#include <string.h>

struct NOTE

{

char NAME[20],TELE[15],BDAY[3];

}

BNOTE[8],T;

int i,j;

char Number[15];

void vvod()

{

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

{

printf("\nImya? ");

gets(BNOTE[i].NAME);

if(strlen(BNOTE[i].NAME)==0)break;

printf("Telefon? ");

gets(BNOTE[i].TELE);

printf("Denb Pozhdeniya (YYYY MM DD)? ");

scanf("%d %d %d",& BNOTE [i]. BDAY [0],& BNOTE [i]. BDAY [1],& BNOTE [i]. BDAY [2]);

gets(Number);;

};

}

void sortirovka(){

for(j=0;j<8-1;j++)

if((long)1000*BNOTE[j].BDAY[0]+50*BNOTE[j].BDAY[1]+BNOTE[j].BDAY[2]>

(long)1000*BNOTE[j+1].BDAY[0]+50*BNOTE[j+1].BDAY[1]+BNOTE[j+1].BDAY[2])

{T=BNOTE[j];

BNOTE[j]=BNOTE[j+1];

BNOTE[j+1]=T;}

}

void vivod()

{

printf("VbIvod dannyx:");

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

{

printf("\nImya: %s \n Telefon: %s \n Denb Pozhdeniya: %u %u %u\n\n",

BNOTE[i].NAME, BNOTE[i].TELE, BNOTE[i].BDAY[0],BNOTE[i].BDAY[1],BNOTE[i].BDAY[2]);

};

}

void poisk(){

printf("\nTelefon dlya poiska? ");

gets(Number);

j=0;

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

if(!strcmp(Number,BNOTE[i].TELE))

{

printf("\nImya: %s \n Telefon: %s \n Denb Pozhdeniya: %u %u %u\n\n",

BNOTE[i].NAME, BNOTE[i].TELE,

BNOTE[i].BDAY[0],BNOTE[i].BDAY[1],BNOTE[i].BDAY[2]);j=1;

};

if(j==0)

printf("Net cheloveka, y kotorogo takoy telefon!\n\n");

}

void main(void)

{

vvod();

sortirovka();

vivod();

poisk();

getch();

}

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

Таблица переменных:

Переменные

Тип

Кол-во в байтах

name

char

15

Note

struct

448

i

int

2

j

2

T

2

Всего выделено памяти

479

Список используемой литературы:

Шишкин, А. Д. Программирование на языке СИ [Текст]: Учебное пособие – Спб.: РГГМУ, 2003. – 103 с.


 

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

44735. Present Participle. Continuous Tenses (Active, Passive). Quantifiers: some, any, no, much, many, little, a little, few, a few 82 KB
  Prctice reding the following wordcombintions: Tken into ccount for exmple in order to in fct in the lnguge of science in everydy life connected with the ide of time stte of rest stte of motion from motion to rest in scientific sense of the word the force is pplied to result in no work the mount of performed work the product of the force by the distnce the bility to work different kinds of energy ll moving bodies to drive the wterwheels of turbines. TEXT 3 FORCE WORK ENERGY ND POWER In the lnguge of science few words...
44736. Perfect Tenses (Active, Passive). Numerals. Cleft sentences: it is (was)…that (who) 66.5 KB
  In our scientific ge there is generl belief tht ll science s it grows to perfection becomes mthemticl in its ides. It is generlly true tht in the development of lgebr three stges hve been pssed successively: verbl bbrevited nd symbolic. Verbl lgebr is chrcterized by the complete bsence of ny symbols except of course tht the words themselves re used in their symbolic sense.
44737. Роль мультимедиа в повышении эффективности процесса обучения экономике 136.5 KB
  Практические аспекты использования мультимедиа в процессе обучения экономике. Особенности проведения медиа-урока: доходы и расходы семьи. Сравнительный анализ традиционного и нетрадиционного (с использованием мультимедиа) урока...
44738. РАЗВИТИЕ БАНКОВСКИХ ПРОДУКТОВ И УСЛУГ 459 KB
  Изучить основные направления в части оценки состояния номенклатуры и ассортимента продуктов и услуг российских банков, предоставляемых клиентам. Оценить эффективность приоритетов развития и перспектив внедрения новых продуктов и услуг, путей и способов реализации. Разработать рекомендации по внедрению новых продуктов и услуг в банковской среде, предоставляемых клиентам.
44739. Основы психологии и педагогики 615 KB
  Основной целью изучения учебной дисциплины «Основы психологии и педагогики» является формирование у будущих специалистов универсальных психолого-педагогических компетенций, обеспечивающих эффективное решение широкого круга социально-личностных и профессиональных задач в сфере любой профессии.
44740. Горная выработка. Проведение горных выработок 446.5 KB
  Горнодобывающая промышленность является одной из отраслей экономики России, на основе которой развиваются металлургия, химическая промышленность, машиностроение, электродобывающая и другие отрасли.
44741. Минимизация и факторизация булевой функции 896.5 KB
  При переходе от кубической записи булевой функции к функциональной схеме переменные одного куба объединяются знаком конъюнкции, т.е. являются входами одной схемы И, все кубы объединяются друг с другом знаком дизъюнкции
44742. Экранирование магнитного поля 119 KB
  Конструкторно-технологические мероприятия по локализации возможности образования условий возникновения каналов утечки информации за счет побочных электромагнитных излучений и наводок в технических средствах обработки и передачи информации сводятся к рациональным конструкторно-технологическим решениям
44743. Cинус, косинус и тангенс острого угла прямоугольного треугольника 1.24 MB
  Цели урока: Образовательные: Проверить знания умения и навыки учащихся по темам Применение теории подобия треугольников при решении задач и Соотношение между сторонами и углами прямоугольного треугольника.