50178

Программирование задач с использованием структур

Лабораторная работа

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

Создать и ввести массив из структур типа student размер массива произвольный и выполнить задание согласно варианту: Распечатать анкетные данные студентов отличников. Распечатать анкетные данные студентов успевающих на 4 и 5. Распечатать анкетные данные студентов имеющих одну 3. Распечатать анкетные данные студентов имеющих двойки.

Русский

2014-01-17

38 KB

15 чел.

Лабораторная Работа № 15

Тема: Программирование задач с использованием  структур.

Цель: Овладение навыками алгоритмизации и программирования задач с использованием структур.

Теоретические сведения:

  •  Структурой называется переменная, представляющая собой множество других переменных, которые могут относиться к различным типам.
  •  Переменные, которые объединены структурой, называются членами, элементами или полями структуры.
  •  Объявление структуры является оператором, и поэтому в конце должна стоять точка с запятой:

struct student{

char name[30];

int kurs;

char grup[3];

int stip;

}; // пока никакая структурная переменная не объявлена

  •  Для того, чтобы объявить конкретные переменные типа struct student, можно записать  struct student st1,st2; При такой записи компилятор автоматически выделит место в памяти компьютера. Причем, задание шаблона структуры и объявление переменных может производиться и в одном операторе.
  •  Доступ к конкретному элементу структуры осуществляется с помощью оператора «точка». Например, strcpy(st1.name, “Иванов М.С.”);
  •  Структуры, как и переменные другого типа, могут объединяться в массивы структур. Чтобы объявить массив структур, надо сначала задать шаблон структуры, а затем объявить массив: struct student studkurs[200];
  •  Для доступа к полю i-го элемента массива используем studkyrs[i].kurs;
  •  Если объявлены две переменные с одним шаблоном, то возможно присваивание st1=st2; при этом произойдет побитовое копирование каждого поля одной переменной в соответствующее поле другой структуры.
  •  Переменная типа структуры может быть глобальной, локальной переменной и формальным параметром.

Пример: Оформить данные о семье в виде массива структур. Выдать на экран данные о самом старшем члене семьи.

#includ<stdio.h>

#includ<conio.h>

struct chlens{

char fio[30];

float god;

}sem[5]; // массив структур из пяти элементов объявлен как глобальное данное

void main()

{

 int g[5],i,k,max;

 puts(”Вводите сведения о члене семьи”);

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

{  

puts(“Введите Ф.И.О.”);

gets(sem[i].fio);

puts(“Введите год рождения”);

scanf(“%f”,&sem[i].god);

g[i]=2008-sem[i].god;

}// for для ввода данных

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

{

if(g[i]>-1000)

             {  max=g[i];

                 k=i;

               }

}// нахождение максимального возраста и его номера

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

{

If(i==k)

printf(“Ф.И.О. самого старшего члена семьи:%30s”,sem[i].fio);

}

}//main

Варианты заданий: имеется структура типа student с полями: ФИО, год рождения, год поступления, оценки за 1, 2, и 3 экзамен (предметы любые). Создать и ввести массив из структур типа student (размер массива произвольный) и выполнить задание согласно варианту:

  1.   Распечатать анкетные данные студентов отличников.
  2.   Распечатать анкетные данные студентов, успевающих на 4 и 5.
  3.   Распечатать анкетные данные студентов, имеющих одну 3.
  4.   Распечатать анкетные данные студентов, имеющих двойки.
  5.   Распечатать анкетные данные студентов получивших одну 5.
  6.   Распечатать анкетные данные студентов получивших две 4.
  7.   Распечатать студентов , фамилия которых начинается с буквы А и их оценки.
  8.   Распечатать студентов , фамилия которых начинается с буквы Б и родившихся после определенного месяца.
  9.   Распечатать оценки студентов, фамилии которых начинаются с буквы В и Г.
  10.  Распечатать фамилии и даты рождения студентов, не получивших ни одной тройки и поступивших после 2003 года.
  11.  Вывести список студентов, упорядочив его по возрастанию среднего балла.
  12.  Вычислить средний балл всех студентов и распечатать список студентов, имеющих средний балл выше  общего среднего балла.
  13.  Вычислить средний балл всех студентов и распечатать список студентов, имеющих средний балл ниже  общего среднего балла.
  14.  Вычислить средний балл всех студентов и распечатать список студентов, имеющих средний балл равный  общему среднему баллу.
  15.  Распечатать фамилии и даты поступления студентов, не получивших ни одной 5 и родившихся после 1987 года.

Контрольные вопросы:

  1.  Как описываются переменные типа структура?
  2.  В каких случаях целесообразно использовать переменные типа структура?
  3.  Из каких компонентов состоит переменная типа структура?
  4.  Какие операции допустимы над полями структур?
  5.  Зачем используются массивы из структур?

Содержание отчета:

  1.  Краткие теоретические сведения.
  2.  Схемы алгоритмов.
  3.  Тексты составленных программ.
  4.  Протоколы к составленным программам.
  5.  Вывод о проделанной работе.


 

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

1840. ПОВЫШЕНИЕ ЭФФЕКТИВНОСТИ СИСТЕМЫ УПРАВЛЕНИЯ ЗАПАСАМИ НА ОСНОВЕ ПРИМЕНЕНИЯ МЕТОДОВ ИНФОРМАЦИОННОЙ ПОДДЕРЖИ ПРИНЯТИЯ РЕШЕНИЙ 1.29 MB
  Анализ состояния и пути повышения эффективности систем управления запасами на машиностроительных предприятиях. Структуризация процессов управления и производственного процесса. Методика определения оптимального графика поступлений запасов. Применение разработанных методик и оценка эффективности их использования.
1841. ПРОИЗВОДСТВО И ВОСПРОИЗВОДСТВО ЗНАНИЯ: КОГНИТИВНО-АНТРОПОЛОГИЧЕСКИЙ АСПЕКТ 1.29 MB
  Производство и воспроизводство знания: когнитивно-антропологическая модель. Когнитивно-антропологические основания познания. Познание как проблема современной философии. Образование с позиций когнитивно-антропологического подхода.
1842. КОНЦЕПТОСФЕРА ВНУТРИСЕМЕЙНЫХ РОДОСЛОВНЫХ 1.29 MB
  Жанровая и языковая специфика внутрисемейных родословных. Художественные и публицистические реминисценции в языке внутрисемейных родословных. Специфика интертекстуальности. Система концептов, регулирующих жанр внутрисемейных родословных, и их лексическая объективация. Методика исследования частотности языковой объективации концептов и межконцептных связей. Математическое моделирование концептосферы внутрисемейных родословных. Результаты исследования.
1843. Основы маркетинга и современная маркетинговая концепция 1.4 MB
  Основные понятия маркетинга. Маркетинговая концепция. Используемые в маркетинге термины. Уровни маркетинга. Концепции маркетинговой деятельности организаций. Управленческий маркетинг должен показать свою рентабельность. Рыночные факторы, определяющие содержание маркетинг-микса. Основные продуктивные информационные легенды, используемые при проведении исследований конкурентов.
1844. УСЛОВИЯ ПОВЫШЕНИЯ ЭФФЕКТИВНОСТИ ФУНКЦИОНИРОВАНИЯ МЕТОДИЧЕСКОЙ СЛУЖБЫ В СИСТЕМЕ ПОВЫШЕНИЯ КВАЛИФИКАЦИИ РАБОТНИКОВ ОБРАЗОВАНИЯ 1.27 MB
  Деятельность методической службы системы повышения квалификации работников образования как педагогическая проблема. Организационно-педагогические условия повышения эффективности функционирования методической службы в структуре региональной системы повышения квалификации работников образования. Комплекс условий, обеспечивающих эффективность функционирования методической службы.
1845. СТАНОВЛЕНИЕ ПРОФЕССИОНАЛЬНОГО САМОСОЗНАНИЯ КЛИНИЧЕСКИХ ПСИХОЛОГОВ 1.27 MB
  Профессиональное самосознание и проблема становления личности профессионала. Основные подходы к решению проблемы становления личности профессионала. Модель личности клинического психолога абитуриентов факультета психологии. Модель личности специалиста и особенности профессиональной составляющей самосознания студентов других специализаций. Особенности становления представлений о профессиональной идентичности клинических психологов.
1846. Особенности химического состава бариевых звезд 1.27 MB
  Сравнительный анализ наблюдательного материала, методика определения химического состава атмосфер исследуемых звезд, ошибки, обусловленные неточностью принятых значений параметров модели звездной атмосферы. Исследование умеренных бариевых звезд и нормальных красных гигантов.
1847. Мотивационный менеджмент 1.26 MB
  Сущность и содержание мотивационного менеджмента, понятие мотивации и ее необходимость в управлении. Сложность управления мотивацией, стимулы и стимулирование. Теория существования, связи и роста К. Альдерфера. Содержание работы и мотивация.
1848. CCNP SWITCH 642-813 Quick Reference 1.56 MB
  Campus Network Design. VLAN Implementation. Implementing High Availability. Campus Network Security. Wireless LANs in a Campus Network. Voice and Video in a Campus Network.