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

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

Восстановить пароль Регистрация
 
avatar1870
2 / 2 / 0
Регистрация: 28.09.2013
Сообщений: 405
21.03.2014, 19:41     Описать структуру с именем ZNAK #1
Добрый вечер. Прошу помощи с программой:

Описать структуру с именем 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; 
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
21.03.2014, 19:41     Описать структуру с именем ZNAK
Посмотрите здесь:

C++ Описать структуру с именем ZNAK
C++ Описать структуру с именем ZNAK
Описать структуру с именем Znak C++
C++ Описать структуру с именем ZNAK
C++ Описать структуру с именем ZNAK
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
just_freelance
61 / 37 / 9
Регистрация: 15.03.2014
Сообщений: 315
21.03.2014, 19:45     Описать структуру с именем ZNAK #2
Цитата Сообщение от avatar1870 Посмотреть сообщение
char Bday[3];
C++
1
int bday[3];
zss
Модератор
Эксперт С++
 Аватар для zss
5950 / 5555 / 1786
Регистрация: 18.12.2011
Сообщений: 14,196
Завершенные тесты: 1
21.03.2014, 19:49     Описать структуру с именем ZNAK #3
1. Почему 2 точки входа в программу main и _tamain ?
2. Строка 19
C++
1
char *Rus(char *text)
Если это объявление функции, то нужна точка с запятой в конце.
3. Внутреннюю часть цикла строки 45 надо обрамить фигурными скобками
(сейчас в него попал только оператор на строке 47).
avatar1870
2 / 2 / 0
Регистрация: 28.09.2013
Сообщений: 405
21.03.2014, 20:27  [ТС]     Описать структуру с именем ZNAK #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; 
}
just_freelance
61 / 37 / 9
Регистрация: 15.03.2014
Сообщений: 315
21.03.2014, 20:32     Описать структуру с именем ZNAK #5
avatar1870, нужно отдельно вводить каждое из трёх чисел даты.
avatar1870
2 / 2 / 0
Регистрация: 28.09.2013
Сообщений: 405
21.03.2014, 20:35  [ТС]     Описать структуру с именем ZNAK #6
Программа не запускается(
Миниатюры
Описать структуру с именем ZNAK  
just_freelance
61 / 37 / 9
Регистрация: 15.03.2014
Сообщений: 315
21.03.2014, 20:39     Описать структуру с именем ZNAK #7
avatar1870, вам и я написал, и компилятор написал... Могу ещё более прямо:
C++
1
cout<<Rus("Введите день рождения ")<<i+1; cin >> Book[i].Bday[0] >> Book[i].Bday[1] >> Book[i].Bday[2];
zss
Модератор
Эксперт С++
 Аватар для zss
5950 / 5555 / 1786
Регистрация: 18.12.2011
Сообщений: 14,196
Завершенные тесты: 1
21.03.2014, 22:51     Описать структуру с именем ZNAK #8
А для чего объявляется функция
C++
1
void output_gai(Znak *,int );
если она нигде не вызывается?
avatar1870
2 / 2 / 0
Регистрация: 28.09.2013
Сообщений: 405
22.03.2014, 09:14  [ТС]     Описать структуру с именем ZNAK #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; 
}
Миниатюры
Описать структуру с именем ZNAK  
zss
Модератор
Эксперт С++
 Аватар для zss
5950 / 5555 / 1786
Регистрация: 18.12.2011
Сообщений: 14,196
Завершенные тесты: 1
22.03.2014, 09:58     Описать структуру с именем ZNAK #10
Вы ведь так и не написали функцию
C++
1
char *Rus(char *text);
В самом первом Вашем посте был ее закомментированный код.
avatar1870
2 / 2 / 0
Регистрация: 28.09.2013
Сообщений: 405
22.03.2014, 17:26  [ТС]     Описать структуру с именем ZNAK #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; 
}
zss
Модератор
Эксперт С++
 Аватар для zss
5950 / 5555 / 1786
Регистрация: 18.12.2011
Сообщений: 14,196
Завершенные тесты: 1
22.03.2014, 17:43     Описать структуру с именем ZNAK #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];
avatar1870
2 / 2 / 0
Регистрация: 28.09.2013
Сообщений: 405
23.03.2014, 19:23  [ТС]     Описать структуру с именем ZNAK #13
Ошибки непонятно откуда
Миниатюры
Описать структуру с именем ZNAK  
zss
Модератор
Эксперт С++
 Аватар для zss
5950 / 5555 / 1786
Регистрация: 18.12.2011
Сообщений: 14,196
Завершенные тесты: 1
23.03.2014, 21:14     Описать структуру с именем ZNAK #14
Где-то вместо Book Вы написали Bool
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
23.03.2014, 21:43     Описать структуру с именем ZNAK
Еще ссылки по теме:

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

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

Или воспользуйтесь поиском по форуму:
avatar1870
2 / 2 / 0
Регистрация: 28.09.2013
Сообщений: 405
23.03.2014, 21:43  [ТС]     Описать структуру с именем ZNAK #15
Проверил, нету
Yandex
Объявления
23.03.2014, 21:43     Описать структуру с именем ZNAK
Ответ Создать тему
Опции темы

Текущее время: 12:17. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru