Форум программистов, компьютерный форум CyberForum.ru
Наши страницы

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Dionisius
0 / 0 / 0
Регистрация: 19.10.2013
Сообщений: 137
#1

Создать структуру "Пациент". Реализовать функцию, которая вычисляет количество визитов пациента с заданной фамилией в период лет - C++

16.03.2014, 19:26. Просмотров 406. Ответов 6
Метки нет (Все метки)

Создать структуру "Пациент", имеющую поля - "Единый регистрационный номер" (длинное целое), "Фамилия", "Год посещения", "Количество визитов". Реализовать функцию, которая вычисляет количество визитов пациента с заданной фамилией в период с 1986 по 2001 год. Фамилия пациента задается пользователем.

Что-то у меня получилось, а что-то нет.
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#include <stdio.h>
#include <conio.h>
#include <stdlib.h>
#include <string.h>
int main()
{
    struct patient
    {
    long int ERN;
    char surname;
    int year;
    int visits;
};
struct patient p[k];
scanf("Number of patients: %d", &k);
int total=0;
for (int n=0; n<k; k++)
{
printf("Input ERN: \n");
scanf("&ld \n", &p[n].ERN]);
printf("Input surname: \n");
scanf ("%s \n", &p[n].surname);
printf ("Input year: \n");
scanf("%d \n", &p[n].year);
for (year=1986; year<=2001; year++)
{
    scanf("%d", visits[year]);
    total=visits[year-1]+visits[year];
}
 
printf("Number of visits from 1986 to 2001: %d", total);
getch();
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
16.03.2014, 19:26
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Создать структуру "Пациент". Реализовать функцию, которая вычисляет количество визитов пациента с заданной фамилией в период лет (C++):

Реализовать структуру "Анкета" с полями "Фамилия", "Пол" и "Адрес" - C++
Здравствуйте. Проходим тему Структуры, не могу понять, как определить количество, само задание: #include &lt;iostream&gt; #include...

Вывести на экран фразу "Мне n лет", учитывая что при некоторых значениях n слово "лет" надо заменить на "год" - C++
дано натуральное число n. Вывести на экран фразу &quot;Мне n лет&quot;, учитывая что при некоторых значениях n слово &quot;лет&quot; надо заменить на &quot;год&quot; или...

Реализовать функцию, которая вычисляет общее количество требуемых элементов - C++
Подскажите пожалуйста, как реализовать функцию, которая вычисляет общее количество требуемых элементов.

Создать класс "Книга" с полями "название книги", "количество страниц", "год издания" - C++
Создать класс Книга поля: название книги,количество страниц,год издания методы: вычислить сколько лет книге и количество дней прошедших...

Создать классы "Computer", "Software", "User" и реализовать взаимодействие объектов этих типов между собой - C++
Помогите решить задачку,нужна в инст на экзамен. Составить программу реализующую: 1)классы,которые могут содержать...

Структура "Сотрудник": удалить элемент с заданной фамилией, добавить элемент после заданного элемента - C++
Структура &quot;Сотрудник&quot;: - фамилия, имя, отчество; - должность - год рождения; - заработная плата. Удалить элемент с указанной...

6
AGS17
7 / 5 / 1
Регистрация: 03.11.2012
Сообщений: 74
16.03.2014, 20:13 #2
Цитата Сообщение от Dionisius Посмотреть сообщение
char surname;
слёту скажу, что здесь ошибка, тк char - это ОДИН символ. Если требуется динамическая строка, то пиши
C++
1
char* surname;
либо статическая строка:
C++
1
char surname[кол-во символов];
0
Dionisius
0 / 0 / 0
Регистрация: 19.10.2013
Сообщений: 137
16.03.2014, 23:42  [ТС] #3
еще недоработки найдёте?
0
AGS17
7 / 5 / 1
Регистрация: 03.11.2012
Сообщений: 74
17.03.2014, 01:40 #4
C++
1
2
3
4
5
for (year=1986; year<=2001; year++)
{
    scanf("%d", visits[year]);
    total=visits[year-1]+visits[year];
}
Что тут происходит?
0
Dionisius
0 / 0 / 0
Регистрация: 19.10.2013
Сообщений: 137
29.03.2014, 23:10  [ТС] #5
Так вы ошибку и не исправили:

Компилятор все равно выдаёт:
26`year' undeclared (first use this function)
(Each undeclared identifier is reported only once for each function it appears in.)
28 `visits' undeclared (first use this function)
0
zss
Модератор
Эксперт С++
6475 / 6038 / 1980
Регистрация: 18.12.2011
Сообщений: 15,637
Завершенные тесты: 1
29.03.2014, 23:13 #6
C++
1
scanf("%d", &visits[year]);
Надо передавать адрес (&visits[year]).
0
Dionisius
0 / 0 / 0
Регистрация: 19.10.2013
Сообщений: 137
29.03.2014, 23:16  [ТС] #7
а как устранить ошибки в компиляторе?
0
29.03.2014, 23:16
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.03.2014, 23:16
Привет! Вот еще темы с ответами:

Реализовать классы "Воин", "Пехотинец", "Винтовка", "Матрос", "Кортик" (наследование) - C++
Разработать программу с использованием наследования классов, реализующую классы: − воин; − пехотинец(винтовка); − матрос(кортик). ...

Вывести на экран монитора число с наименованием "год","года", "лет" - C++
Прошу прогу в С++. Дано натуральное число n (n&lt;=100), определяющее в годах возраст человека. Составить программу, по которой на экран...

Чтения структуры из файла (описать структуру с именем "ORDER": "счет плательщика"; "счет получателя"; "сумма, переводится банковской операцией") - C++
Описать структуру с именем &quot;ORDER&quot;, содержащий следующие поля: &quot;Счет плательщика&quot;; &quot;Счет получателя&quot;; &quot;Сумма, переводится банковской...

Добавить к возрасту человека указание "год", "года", "лет" - C++
Дано натуральное число n (n&lt;=100), определяющее возраст человека (в годах). Дать для этого числа наименования год, года, лет: например, 1...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru