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

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

Войти
Регистрация
Восстановить пароль
 
avatar1870
2 / 2 / 0
Регистрация: 28.09.2013
Сообщений: 407
#1

Описать структуру с именем ZNAK - C++

21.03.2014, 19:41. Просмотров 1196. Ответов 14
Метки нет (Все метки)

Добрый вечер. Прошу помощи с программой:

Описать структуру с именем ZNAK, содержащую следующие поля:
NAME – фамилия, имя;
ZODIAC – знак Зодиака;
BDAY – день рождения (массив из трех чисел). Написать программу, выполняющую следующие действия:
Ввод с клавиатуры данных в массив BOOK, состоящий из восьми элементов типа ZNAK;
вывод на экран информации о человеке, чья фамилия введена с клавиатуры;
если такого нет, выдать на дисплей соответствующее сообщение.

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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
// lab_10_2.cpp: определяет точку входа для консольного приложения.
//
 
#include "stdafx.h"
 
 
int _tmain(int argc, _TCHAR* argv[])
{
    return 0;
}
 
#include <iostream>
#include <string.h>
#include <windows.h> 
#include <conio.h>
using namespace std;
 
char buf[256];
char *Rus(char *text) 
/*{CharToOem(text,buf); return buf;}*/
 
struct Znak 
{ 
    char Name[35]; 
    char Zodiac[20];
    char Bday[3];
};
 
void output_gai(Znak *,int ); void main(void)
{ 
int i,n; bool flag;
n=8;
Znak *Book = new Znak[n], temp; 
char m[20];
for(i=0;i<n;i++)
 
{ // Ввод данных
cout<<Rus("Введите фамилию  ")<<i+1; cin >> Book[i].Name; 
cout<<Rus("Введите знак зодиака ")<<i+1; cin >> Book[i].Zodiac; 
cout<<Rus("Введите день рождения ")<<i+1; cin >> Book[i].Bday;
}
 
cout << endl << Rus("Введите фамилию для поиска: "); cin >> m;
cout << endl << Rus("Информация") << endl; flag = true;
for(i=0;i<n;i++) if(!strcmp(m,Book[i].Name))
 
cout.setf(ios::left);
cout.width(15);
cout<<Book[i].Name;
cout.width(5); 
cout<<Book[i].Zodiac<<endl;
cout<<Book[i].Bday<<endl;
flag = false; } 
if(flag)
{
    cout<<Rus("\n Человека с фамилией ")<<m; 
cout<<Rus("нет в списках");
}
 
delete [] gai; 
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.03.2014, 19:41
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Описать структуру с именем ZNAK (C++):

Описать структуру с именем ZNAK - C++
описать структуру с именем ZNAK содержащие следующие поля фамилия,имя знак зодиака дата рождения Как сделать файл что бы не...

Описать структуру с именем ZNAK - C++
1. Описать структуру с именем ZNAK, содержащую следующие поля: • NAME — фамилия, имя; • ZODIAC — знак Зодиака; • BDAY — день...

Описать структуру с именем Znak - C++
1.Описать структуру с именем Znak,содержащую поля фамилия и имя знак зодиака день рождения(массив из 3х чисел) 2.Ввод с клавиатуры...

Описать структуру с именем ZNAK - C++
начала писать структуру, вторая часть не выходит. вот задание: 1.Описать структуру с именем ZNAK, содержащую поля: имя,знак...

Описать структуру с именем ZNAK - C++
Кто нибудь может написать такую задачу? Описать структуру с именем ZNAK, содержащую следующие поля: фамилия, имя; знак зодиака; дата...

Описать структуру с именем ZNAK - C++
Пожалуйста помогите!!!! Никак не получается,надо на С++ Описать структуру с именем ZNAK, содержащую следующие поля: • фамилия,...

14
just_freelance
61 / 37 / 9
Регистрация: 15.03.2014
Сообщений: 315
21.03.2014, 19:45 #2
Цитата Сообщение от avatar1870 Посмотреть сообщение
char Bday[3];
C++
1
int bday[3];
0
zss
Модератор
Эксперт С++
6578 / 6140 / 2022
Регистрация: 18.12.2011
Сообщений: 15,999
Завершенные тесты: 1
21.03.2014, 19:49 #3
1. Почему 2 точки входа в программу main и _tamain ?
2. Строка 19
C++
1
char *Rus(char *text)
Если это объявление функции, то нужна точка с запятой в конце.
3. Внутреннюю часть цикла строки 45 надо обрамить фигурными скобками
(сейчас в него попал только оператор на строке 47).
0
avatar1870
2 / 2 / 0
Регистрация: 28.09.2013
Сообщений: 407
21.03.2014, 20:27  [ТС] #4
Поправил, но что-то с вводом/выводом не так

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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
#include <iostream>
#include <string.h>
#include <windows.h> 
#include <conio.h>
using namespace std;
 
char buf[256];
char *Rus(char *text);
 
 
struct Znak 
{ 
    char Name[35]; 
    char Zodiac[20];
    int Bday[3];
};
 
void output_gai(Znak *,int ); 
void main(void)
{ 
int i,n; bool flag;
n=8;
Znak *Book = new Znak[n], temp; 
char m[20];
for(i=0;i<n;i++)
 
{ // Ввод данных
cout<<Rus("Введите фамилию  ")<<i+1; cin >> Book[i].Name; 
cout<<Rus("Введите знак зодиака ")<<i+1; cin >> Book[i].Zodiac; 
cout<<Rus("Введите день рождения ")<<i+1; cin >> Book[i].Bday;
}
 
cout << endl << Rus("Введите фамилию для поиска: "); cin >> m;
cout << endl << Rus("Информация") << endl; flag = true;
for(i=0;i<n;i++) 
    if(!strcmp(m,Book[i].Name))
    {
cout.setf(ios::left);
cout.width(15);
cout<<Book[i].Name;
cout.width(5); 
cout<<Book[i].Zodiac<<endl;
cout<<Book[i].Bday<<endl;
flag = false; } 
if(flag)
{
    cout<<Rus("\n Человека с фамилией ")<<m; 
cout<<Rus("нет в списках");
}
 
delete [] Book; 
}
0
just_freelance
61 / 37 / 9
Регистрация: 15.03.2014
Сообщений: 315
21.03.2014, 20:32 #5
avatar1870, нужно отдельно вводить каждое из трёх чисел даты.
0
avatar1870
2 / 2 / 0
Регистрация: 28.09.2013
Сообщений: 407
21.03.2014, 20:35  [ТС] #6
Программа не запускается(
0
Миниатюры
Описать структуру с именем ZNAK  
just_freelance
61 / 37 / 9
Регистрация: 15.03.2014
Сообщений: 315
21.03.2014, 20:39 #7
avatar1870, вам и я написал, и компилятор написал... Могу ещё более прямо:
C++
1
cout<<Rus("Введите день рождения ")<<i+1; cin >> Book[i].Bday[0] >> Book[i].Bday[1] >> Book[i].Bday[2];
0
zss
Модератор
Эксперт С++
6578 / 6140 / 2022
Регистрация: 18.12.2011
Сообщений: 15,999
Завершенные тесты: 1
21.03.2014, 22:51 #8
А для чего объявляется функция
C++
1
void output_gai(Znak *,int );
если она нигде не вызывается?
0
avatar1870
2 / 2 / 0
Регистрация: 28.09.2013
Сообщений: 407
22.03.2014, 09:14  [ТС] #9
Не хочет работать

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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
#include <iostream>
#include <string.h>
#include <windows.h> 
#include <conio.h>
using namespace std;
 
char buf[256];
char *Rus(char *text);
 
struct Znak 
{ 
    char Name[35]; 
    char Zodiac[20];
     int Bday[3];
};
 
void output_Book(Znak *,int );
void main(void)
{ 
int i,n; bool flag;
n=8;
Znak *Book = new Znak[n], temp; 
char m[20];
for(i=0;i<n;i++)
 
{ // Ввод данных
cout<<Rus("Введите фамилию  ")<<i+1; cin >> Book[i].Name; 
cout<<Rus("Введите знак зодиака ")<<i+1; cin >> Book[i].Zodiac; 
cout<<Rus("Введите день рождения ")<<i+1; cin >> Book[i].Bday;
}
 
cout << endl << Rus("Введите фамилию для поиска: "); cin >> m;
cout << endl << Rus("Информация") << endl; flag = true;
for(i=0;i<n;i++) 
    if(!strcmp(m,Book[i].Name))
    {
cout.setf(ios::left);
cout.width(15);
cout<<Book[i].Name;
cout.width(5); 
cout<<Book[i].Zodiac<<endl;
cout<<Book[i].Bday<<endl;
flag = false; } 
if(flag)
{
    cout<<Rus("\n Человека с фамилией ")<<m; 
cout<<Rus("нет в списках");
}
 
delete [] Book; 
}
0
Миниатюры
Описать структуру с именем ZNAK  
zss
Модератор
Эксперт С++
6578 / 6140 / 2022
Регистрация: 18.12.2011
Сообщений: 15,999
Завершенные тесты: 1
22.03.2014, 09:58 #10
Вы ведь так и не написали функцию
C++
1
char *Rus(char *text);
В самом первом Вашем посте был ее закомментированный код.
0
avatar1870
2 / 2 / 0
Регистрация: 28.09.2013
Сообщений: 407
22.03.2014, 17:26  [ТС] #11
Не могу понять(

Добавлено через 41 минуту
Поправил функцию, но не запускается

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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
#include "stdafx.h"
#include <iostream>
#include <string.h>
#include <windows.h> 
#include <conio.h>
using namespace std;
 
char buf[256];
char *Rus(char *text);
 
struct Znak 
{ 
    char Name[35]; 
    char Zodiac[20];
     int Bday[3];
};
 
void output_Book(Znak *,int );
void main(void)
{ 
int i,n; bool flag;
n=8;
Znak *Book = new Znak[n], temp; 
char m[20];
for(i=0;i<n;i++)
// Ввод данных
{ 
cout<<Rus("Введите фамилию  ")<<i+1; cin >> Book[i].Name; 
cout<<Rus("Введите знак зодиака ")<<i+1; cin >> Book[i].Zodiac; 
cout<<Rus("Введите день рождения ")<<i+1; cin >> Book[i].Bday;
}
 
cout << endl << Rus("Введите фамилию для поиска: "); cin >> m;
cout << endl << Rus("Информация: ") << endl; flag = true;
for(i=0;i<n;i++) 
    if(!strcmp(m,Book[i].Name))
    {
cout.setf(ios::left);
cout.width(15);
cout<<Book[i].Name;
cout.width(5); 
cout<<Book[i].Zodiac<<endl;
cout<<Book[i].Bday<<endl;
flag = false; } 
if(flag)
{
    cout<<Rus("\n Человека с фамилией ")<<m; 
cout<<Rus("нет в списках");
}
 
delete [] Book; 
}
0
zss
Модератор
Эксперт С++
6578 / 6140 / 2022
Регистрация: 18.12.2011
Сообщений: 15,999
Завершенные тесты: 1
22.03.2014, 17:43 #12
C++
1
2
3
4
5
char *Rus(char *text) 
{
     CharToOem(text,buf); 
     return buf;
}
Зачем Вы ее закомментировали?
И ввод дня рождения:
C++
1
2
cout<<Rus("Введите день рождения dd mm gggg ")<<i+1; 
cin >> Book[i].Bday[0]>> Book[i].Bday[1]>> Book[i].Bday[2];
0
avatar1870
2 / 2 / 0
Регистрация: 28.09.2013
Сообщений: 407
23.03.2014, 19:23  [ТС] #13
Ошибки непонятно откуда
0
Миниатюры
Описать структуру с именем ZNAK  
zss
Модератор
Эксперт С++
6578 / 6140 / 2022
Регистрация: 18.12.2011
Сообщений: 15,999
Завершенные тесты: 1
23.03.2014, 21:14 #14
Где-то вместо Book Вы написали Bool
0
avatar1870
2 / 2 / 0
Регистрация: 28.09.2013
Сообщений: 407
23.03.2014, 21:43  [ТС] #15
Проверил, нету
0
23.03.2014, 21:43
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.03.2014, 21:43
Привет! Вот еще темы с ответами:

Описать структуру с именем ZNAK - C++
Дорогие программисты здравствуйте ,я в отчаянии , который день я ломаю голову как же построить код этой программы :( Описать структуру с...

Описать структуру с именем ZNAK - C++
Описать структуру с именем ZNAK, содержащую следующие поля: фамилия, имя, знак зодиака, дата рождения (массив из трёх чисел). Написать...

Описать структуру с именем ZNAK - C++
Описать структуру с именем ZNAK, содержащую следующие поля: * фамилия, имя; * знак Зодиака; * дата рождения (массив из трех чисел). ...

Описать структуру с именем ZNAK - C++
Описать структуру с именем ZNAK, содержащую следущие поля:NAME - фамилия, имя; ZODIAC - знак зодиака;BDAY - день рождения(массив из трех...


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

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

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