Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Программирование алгоритмов сСодержание книги
Поиск на нашем сайте
Использованием переменной структура Цель работы – овладение навыками алгоритмизации и программирования алгоритмов с использованием переменной структура (запись), проектирование элементов структуры, выбор типов элементов структуры, доступ к элементам структуры, ввод и вывод значений элементов структуры.
Задания для самостоятельной подготовки: 1. Изучить: -основную терминологию, связанную с переменной структура: определение, элемент структуры; - организацию доступа к элементам структуры; - организацию ввода и вывода значений элементов структуры. 2. Разработать алгоритм решения в соответствии с заданием. 3. Составить программу решения задачи. 4. Подготовить тестовый вариант исходных данных. Выполнить на ЭВМ программу с тестовым вариантом.
Задание к работе: Задание. Написать программу, осуществляющую ввод информации о количестве изделий категории А, В, С, собранных рабочим за каждую неделю, количество недель не более 4: - фамилия сборщика, -наименование цеха, -количество изделий по категориям, собранных рабочим за каждую неделю. Вывести на экран информацию в виде таблицы и согласно варианту из таблицы 12. Таблица 9
Продолжение таблицы 9
Пример выполнения работы Задание. Написать программу, осуществляющую ввод информации о результатах сдачи студентами экзаменационных сессий, количество семестров не более 9, количество оценок в семестре не более 6: - фамилия студента; - группа; - оценки. Вывести на экран введенную информацию в виде таблицы и информацию о студентах, имеющих средний балл выше 3.
Программа решения задачи имеет вид:
#include<stdio.h> #include<conio.h>
void main() { struct student { char fio[25],gr[7]; // Ф.И.О. студента int mark[9][6],kurs,kol[9]; // оценки по семестрам, курс, сессии }st[250]; int m,kolst,i,j,l,k,n,p,o,q,s; float sr;
printf("\n Введите количество студентов:"); scanf("%d",&kolst);
for (i=0; i<kolst;i++) // ввод информации о студентах { printf("Введите фамилию:"); scanf("%s",&st[i].fio); printf("Введите группу:"); scanf("%s",&st[i].gr); printf("Введите курс:"); scanf("%d",&st[i].kurs); if (st[i].kurs==5) // это чтобы не было 10 сессии l=1; else l=0;
for (j=0;j<st[i].kurs*2-l;j++) { printf("Введите количество оценок в %d семестре:",j+1); scanf("%d",&st[i].kol[j]); printf("Введите оценки за %d семестр:",j+1);
for (k=0;k<st[i].kol[j];k++) scanf("%d",&st[i].mark[j][k]); } } printf("Информация о студентах \n"); printf("┌─────────┬────────┬───────┬────────┬───────────┐\n"); printf("│ФИО студента│ Группа │ Курс │ Семестр │ Оценки │\n"); printf("│ │ │ │ ├─┬─┬─┬─┬─┬─│\n"); printf("├─────────┼────────┼───────┼────────┼─┼─┼─┼─┼─┼─┤\n"); m=0; // кол-во студентов с баллом выше 3
for (i=0; i<kolst;i++) // цикл по студентам { sr=0; // средний балл n=0; // количество оценок if(st[i].kurs==5) l=1; else l=0;
for (j=0;j<st[i].kurs*2-l;j++) // цикл по семестру (сколько проучился) {
for (k=0;k<st[i].kol[j];k++) // цикл по оценкам в j-той сессии sr+=st[i].mark[j][k]; // k-тая оценка в j-той сессии n+=st[i].kol[j]; } sr/=n; \\средний балл
if (sr>=4) { printf("│ %-16s│ %-7s", st[i].fio,st[i].gr);
for (p=1;p<st[i].kurs+1;p++) // вывод курса { printf("│%-7d",p);
for (o=2*p-l-1;o<2*p-l+1;o++) // вывод o-того семестра { printf("│%-8d",o);
for (q=0;q<st[i].kol[o-1];q++) // вывод оценок в o-том семестре printf("│%-d",st[i].mark[o-1][q]);
if (q<6) // чтобы были пустые ячейки, если оценок меньше 6 for (s=0;s<6-q;s++) printf("│ "); printf("│\n"); // переход на следующую строку в таблице printf("│ │ │ "); } printf("│ │ │ │ │ │ │ │\n"); printf("│ │ "); } printf("│ │ │ │ │ │ │ │ │\n"); m++; } } printf("└─────────┴────────┴───────┴────────┴─┴─┴─┴─┴─┴─┘\n");
if (m= =0) printf("Студенты, имеющие средний балл, больший 3,отсутствуют\n"); getch(); return; }
Контрольные вопросы
Лабораторная работа №12
|
||||||||||||||||||||||||||||||||||||||
Последнее изменение этой страницы: 2017-02-19; просмотров: 203; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 18.223.209.114 (0.005 с.) |