49392

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

Курсовая

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

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

Русский

2013-12-26

50.63 KB

100 чел.

 

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

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

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

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

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

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


 

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

521. Экономическая оценка инвестиций 200.5 KB
  Формирование оптимального инвестиционного портфеля. Заёмные и привлечённые бюджетные источники финансирования инвестиций. Средства выделяемые из бюджета развития. Учет инфляции при оценке эффективности инвестиций.
522. Оценка недвижимости как основной вид экономической экспертизы: назначение, основные методы, нормативно-правовое регулирование 187 KB
  Экономические теории, используемые в оценке недвижимости. Регулирование оценочной деятельности по затратам. Оценка недвижимости методом сравнения рыночных продаж и капитализация дохода.
523. 2-этажная торцевая блок-секция на 6 квартир 768.5 KB
  Объёмно–планировочное решение здания, технико-экономические показатели. Сведение о наружной и внутренней отделке. Технико-экономические обоснования двух вариантов конструкций. Спецификация к архитектурно-конструктивным чертежам. Определение размеров лестничной клетки.
524. Социальный конфликт: сущность, этапы развития, возможности разрешения 89 KB
  Конфликты между индивидами, сущность и проблемы социального конфликта. Пути и способы регулирования социальных конфликтов. Глубокие и сложные процессы в современном российском обществе социальный кризис, трансформация социальной структуры, политические и духовные изменения.
525. Чехословаччина - республіка двох соціалістичних держав 59.5 KB
  Складалася з двох соціалістичних республік — Чехії і Словаччини. Територія 127 896 км², населення — 15 420 000 (1983), столиця — Прага. ЧСР постала 28 жовтня 1918, в серпні 1992 було прийнято рішення про створення окремих Чеської і Словацької республік.
526. Параллельное хеширование на GPU в реальном времени 84 KB
  Эффективный алгоритм параллелизма данных для построения больших хеш-таблиц на миллионы элементов в режиме реального времени. Гибридная хеш-таблица основана на современных идеях из теории хеширования. Компромисс между сроками строительства, временем доступа и рационального использования пространства.
527. Тест стиральных Порошков-концентратов 83 KB
  Активную основу стирального порошка составляют поверхностноактивные вещества (сокращенно ПАВ), их доля – 1525%, самый простой пример ПАВ – мыло. Задача ПАВ состоит в смачивании загрязненной ткани моющим раствором и ослаблении связи загрязнения и ткани.
528. Деятельность отдела по подбору персонала ОАО Альфа-Банк 94 KB
  Во время прохождения практики у меня была возможность непосредственно ознакомиться со структурой реально работающей организации, специализацией отдела, где я работал, а также проявить себя как молодого специалиста. В данном отчете представлены различные аспекты моей практики и мои впечатления о ней.
529. Пунктуаційні норми в писемному мовленні фахівців технічної сфери 96.5 KB
  Система правил письмового оформлення структури пропозиції. Утворення логіко-граматичного каркасу письмового висловлювання і точне вираження складних думок, які можуть бути виражені засобами усного мовлення.