49393

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

Курсовая

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

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

Русский

2013-12-26

231 KB

20 чел.

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

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

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

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

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

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

Крутилина А.С.

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

Шишкин А. Д.

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

Содержание

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

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

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

- фамилия и инициалы;

- номер группы;

- успеваемость (массив из пяти элементов);

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

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

- вывод на дисплей фамилий и номеров групп для всех студентов, имеющих хотя бы одну оценку 2;

- если таких студентов нет, вывести соответствующее сообщение.

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

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

Дата выдачи «____»    _________ 2012 г.

Дата сдачи   «____»     _________ 2012г.

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

Задание получил                                                               студент Крутилина А.С.

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

Алгоритм функции vvod  для записи данных в структуру типа  STUDENT

Рис.1

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

                                                        

Рис.2

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

Рис.3

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

Рис.4

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

Рис.5

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

//Автор работы  Крутилина Анастасия ИБ-239

#include <stdio.h>

#include <string.h>

#include <conio.h>

struct student {

char name[15]; /* family */

char in[3]; /* io */

int number; /* nomer group */

int marks[5]; /* marks */

} ms[10];

struct student x;

const int N=5;/*kol marks*/

int n,i,j,b;

void vvod(){

for (n=0; n<10; n++){

   printf("%d. Vvedute: Family, IO, nomer group, marks >>", n+1);

   scanf("%s",ms[n].name);

   if (!strcmp(ms[n].name,"***")) break;

   scanf("%s",&ms[n].in);

   scanf("%d",&ms[n].number);

   for(j=0;j<N;j++)

scanf("%d",&ms[n].marks[j]);

   }}

void sortirovka(){

{student m;

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

 {

  for(j=0; j<n; j++)

   {

    if(strcmp(ms[i].name,ms[j].name)<0)

     {

      m=ms[i];

      ms[i]=ms[j];

      ms[j]=m;

     }

   }

 }

}}

void vivod(){

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

   {printf("| %9s | %2s |  %3d ",ms[i].name,ms[i].in,ms[i].number);

   for(j=0;j<N;j++)

printf("| %2d ",ms[i].marks[j]);

   printf("\n");}}

void poisk(){

printf("\n Spisok student with mark 2 \n");

b=0;

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

   {

   for(j=0;j<N;j++)

if(ms[i].marks[j]==2)

{

printf("| %9s | %2s | %3d \n",ms[i].name,ms[i].in,ms[i].number);j=5;

}

else b++;

}

if(b>49){printf("Not found");}else;}

void main(void){

vvod();

sortirovka();

 vivod();

poisk();

getch();

}

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


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


Переменные

Тип

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

name

char

15

student

struct

448

i

int

2

j

2

m

2

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

479

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

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

PAGE   \* MERGEFORMAT 7

sortirovka()

Конец

poisk()

vivod()

vvod()

Начало