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

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

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 50, средняя оценка - 4.98
Фрэди Крюгер
0 / 0 / 0
Регистрация: 26.05.2009
Сообщений: 50
#1

Описать структуру STUDENT - C++

29.10.2009, 18:49. Просмотров 6294. Ответов 78

Помогите с программой плз
Не работает почему-то
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
 
//Описать структуру с именем SUDENT, содержащую в себе следующие поля:
//Фамилия и Инициалы
//Номер Группы
//Успеваемость(массив из 5 элементов)
// ИНДИВИДУАЛКА ПО ТЕМЕ СТРУКТУРЫ.cpp : main project file.
#include <iostream.h>
#include <string.h>
#include <stdlib.h>
#include <stdio.h>
char* Rus(char* text);//указатель на функцию
//-------------------------------------------------
//Главная функция
//-------------------------------------------------
int main()
{ 
 
struct STUDENT // описание структуры STUDENT содержащей следующие поля:
{
char s_name[20]; // Фамилия и инициалы
int yahr;//Номер группы
long int o;//Успеваемость
};
const int k=10;
STUDENT db[k],p;
char name[20],s[40];
int i; //количество записей в файле
//Заполнение массива структур
for (i=0; i<k; i++)
{ 
cout <<"\n"<<Rus("Фамилия и инициалы"); cin>>db[i].s_name;
cout <<"\n"<<Rus("Номер группы"); cin>>db[i].yahr;
cout <<"\n"<<Rus("Успеваемость"); cin>>db[i].o; 
 
}
cout <<"\n"<<Rus("Введите фамилию и инициалы студента для которого нужно вывести сведения:")<<"\t";
cin>>name;
//Поиск студента, фамилия и инициалы которого введены, вывод всех данных по нему
//Функция strcmp(s1,s2) сравнивает 2 строки 
// и возвращает |отриц число, если s1<s2 |положительное - если s1>s2 | 0, если s1=s2
bool flag=false;
for (i=0; i<k; i++)
{
if (strcmp(name, db[i].s_name)==0) 
{ 
cout <<"\n"<<Rus("Фамилия и инициалы")<< db[i].s_name;
cout <<"\n"<<Rus("Номер группы")<<db[i].yahr;
cout <<"\n"<<Rus("Успеваемость")<<db[i].o;
flag=true;
}
}
if (!flag) 
cout <<Rus("Такого студента нет");
cout <<endl;
 
 
cout <<endl;
return 0;
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
29.10.2009, 18:49
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Описать структуру STUDENT (C++):

Описать структуру STUDENT - C++
Прошу помощи, уважаемые программисты! Я гуманитарий, задание для меня, конечно, очень интересное, но и очень непонятное. Как в коде С++...

Описать структуру Student - C++
1.Описать структуру с именем STUDENT, содержащую следующие поля: Name - фамилия и имя. Number – номер зачётной книжки. Birth - Год...

Описать структуру Student - C++
#include &lt;iostream&gt; #include &lt;fstream&gt; #include&lt;limits&gt; #define DIM 10 #define NAME 70 using namespace std; struct...

Описать структуру STUDENT - C++
у меня такое задание: Описать структуру с именем STUDENT, содержащую следующие поля: • фамилия и инициалы; • номер группы; ...

Описать структуру Student - C++
Условие задачи: Описать структуру с именем STUDENT, содержащую следующие поля: NAME - фамилия GROUP - номер группы SES -...

Описать структуру Student - C++
Описать структуру Student, которая имеет следующие поля: фамилия,группа,средний бал успеваемости.Отсортировать студентов по алфавиту.

78
TanT
эволюционирую потихоньку
465 / 463 / 43
Регистрация: 30.06.2009
Сообщений: 1,399
29.10.2009, 19:59 #16
Цитата Сообщение от Фрэди Крюгер Посмотреть сообщение
блин я смотрю как вы быстро подбираете варианты исправленя ошибок и понимаю что я совсем не шарю в программировании=)
просто я много этих ошибок совершаю
0
AnonymC
1162 / 444 / 23
Регистрация: 23.06.2009
Сообщений: 6,279
Завершенные тесты: 1
29.10.2009, 20:00 #17
Цитата Сообщение от Фрэди Крюгер Посмотреть сообщение
блин я смотрю как вы быстро подбираете варианты исправленя ошибок и понимаю что я совсем не шарю в программировании=)
каждый теперешний продвинутый прогер когда то так говорил
0
Фрэди Крюгер
0 / 0 / 0
Регистрация: 26.05.2009
Сообщений: 50
29.10.2009, 20:09  [ТС] #18
так ради интереса вставил строку set locate
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
62
63
64
65
66
67
68
69
70
71
//Описать структуру с именем SUDENT, содержащую в себе следующие поля:
//Фамилия и Инициалы
//Номер Группы
//Успеваемость(массив из 5 элементов)
// ИНДИВИДУАЛКА ПО ТЕМЕ СТРУКТУРЫ.cpp : main project file.
#include "stdafx.h"
#include <iostream>
#include <string.h>
#include <stdlib.h>
#include <stdio.h>
#include <windows.h>
 
using namespace std;
char buf[256];
 set locate(LC_ALL, "Russian");
char* Rus(char* text)
{
        CharToOemA(text, buf);
        return buf;
}
struct STUDENT // описание структуры STUDENT содержащей следующие поля:
{
        char s_name[20]; // Фамилия и инициалы
        int yahr;//Номер группы
        long int o;//Успеваемость
};
const int k=2;
 
//-------------------------------------------------
//Главная функция
//-------------------------------------------------
int main()
{ 
 
 
        STUDENT db[k];
        char name[20];
        int i; //количество записей в файле
        //Заполнение массива структур
        for (i=0; i<k; i++)
        { 
                cout <<"\n"<<Rus("Фамилия и инициалы "); cin>>db[i].s_name;
                cout <<"\n"<<Rus("Номер группы "); cin>>db[i].yahr;
                cout <<"\n"<<Rus("Успеваемость "); cin>>db[i].o; 
 
        }
        cout <<"\n"<<Rus("Введите фамилию и инициалы студента для которого нужно вывести сведения:")<<"\t";
        cin>>name;
        //Поиск студента, фамилия и инициалы которого введены, вывод всех данных по нему
        //Функция strcmp(s1,s2) сравнивает 2 строки 
        // и возвращает |отриц число, если s1<s2 |положительное - если s1>s2 | 0, если s1=s2
        bool flag=false;
        for (i=0; i<k; i++)
        {
                if (strcmp(name, db[i].s_name)==0) 
                { 
                        cout <<"\n"<<Rus("Фамилия и инициалы ")<< db[i].s_name;
                        cout <<"\n"<<Rus("Номер группы ")<<db[i].yahr;
                        cout <<"\n"<<Rus("Успеваемость ")<<db[i].o;
                        flag=true;
                }
        }
        if (!flag) 
                cout <<Rus("Такого студента нет");
        cout <<endl;
 
 
        cout <<endl;
        system("PAUSE");
        return 0;
}
Получил:
1>.\123.cpp(15) : error C2146: syntax error : missing ';' before identifier 'locate'
1>.\123.cpp(15) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>.\123.cpp(15) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>.\123.cpp(15) : error C2078: too many initializers
1>.\123.cpp(15) : error C2440: 'initializing' : cannot convert from 'const char [8]' to 'int'
1> There is no context in which this conversion is possible
теперь то в чём дело?

Добавлено через 1 минуту
Цитата Сообщение от TanT Посмотреть сообщение
просто я много этих ошибок совершаю
Поверь мне я совершаю их гораздо больше=) причём не в силах понять откуда они

Добавлено через 1 минуту
Цитата Сообщение от МедведЪ Посмотреть сообщение
каждый теперешний продвинутый прогер когда то так говорил
недумаю что из менят продвинутый прогер получится с такими проблемами в ОАП=)
0
AnonymC
1162 / 444 / 23
Регистрация: 23.06.2009
Сообщений: 6,279
Завершенные тесты: 1
29.10.2009, 20:11 #19
Код
// установить вручную шрифт Lucida Console в свойствах окна консоли 
// и запомнить это для всех окон с этим именем
// записать в начале программы строку 
 #include <windows.h>
// записать в начале функции main ( после строки с символом { ) 
// две следующих строки 
 SetConsoleCP(1251);
 SetConsoleOutputCP(1251);
один из лучших методов,я так пользуюсь,никогда не подводил

Добавлено через 1 минуту
Цитата Сообщение от Фрэди Крюгер Посмотреть сообщение
недумаю что из менят продвинутый прогер получится с такими проблемами в ОАП=)
кто знает,может завтра училок рвать будешь
а для этого нужно каждую строчку,каждое слово,каждый символ книг тщательно понять
0
Фрэди Крюгер
0 / 0 / 0
Регистрация: 26.05.2009
Сообщений: 50
29.10.2009, 20:12  [ТС] #20
Цитата Сообщение от МедведЪ Посмотреть сообщение
// записать в начале программы строку #include <windows.h>
дык написанно в предидушем посте=)
0
AnonymC
1162 / 444 / 23
Регистрация: 23.06.2009
Сообщений: 6,279
Завершенные тесты: 1
29.10.2009, 20:13 #21
Фрэди Крюгер, знаю,я этот пост скопировал,из темы Русские буквы в консоли
0
Фрэди Крюгер
0 / 0 / 0
Регистрация: 26.05.2009
Сообщений: 50
29.10.2009, 20:14  [ТС] #22
так сейчас будет глупый вопрос=)
где настройки консоли?
0
AnonymC
1162 / 444 / 23
Регистрация: 23.06.2009
Сообщений: 6,279
Завершенные тесты: 1
29.10.2009, 20:17 #23
открой консоль,в верхнем левом углу где иконка консоли нажми,откроется меню-самое нижне
0
TanT
эволюционирую потихоньку
465 / 463 / 43
Регистрация: 30.06.2009
Сообщений: 1,399
29.10.2009, 20:18 #24
не заморачивайся на консоль, в крайнем случае у видешь кракозябры, сначала скомпили без ошибок. потом зайдёшь в свойства полученного экзешника и там настроишь шрифт
0
Фрэди Крюгер
0 / 0 / 0
Регистрация: 26.05.2009
Сообщений: 50
29.10.2009, 20:19  [ТС] #25
так ещё вопрос.. что делать если консоль открывается и тутже исчезает?
0
AnonymC
1162 / 444 / 23
Регистрация: 23.06.2009
Сообщений: 6,279
Завершенные тесты: 1
29.10.2009, 20:21 #26
Фрэди Крюгер, много способов есть
system("pause"); записать вконце программы
или же
Sleep(1000);1000=1сек
0
Фрэди Крюгер
0 / 0 / 0
Регистрация: 26.05.2009
Сообщений: 50
29.10.2009, 20:25  [ТС] #27
Цитата Сообщение от TanT Посмотреть сообщение
не заморачивайся на консоль, в крайнем случае у видешь кракозябры, сначала скомпили без ошибок. потом зайдёшь в свойства полученного экзешника и там настроишь шрифт
да не компилируется зараза чтобы не делал теперь пишет:
1>.\123.cpp(15) : error C2146: syntax error : missing ';' before identifier 'locate'
1>.\123.cpp(15) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>.\123.cpp(15) : error C4430: missing type specifier - int assumed. Note: C++ does not support default-int
1>.\123.cpp(15) : error C2078: too many initializers
1>.\123.cpp(15) : error C2440: 'initializing' : cannot convert from 'const char [8]' to 'int'


Добавлено через 3 минуты
А давайте я вам задачу дам можт у вас будет лучше решение=))
0
AnonymC
1162 / 444 / 23
Регистрация: 23.06.2009
Сообщений: 6,279
Завершенные тесты: 1
29.10.2009, 20:27 #28
Цитата Сообщение от Фрэди Крюгер Посмотреть сообщение
да не компилируется зараза чтобы не делал теперь пишет:
это на мой код?ОО

Цитата Сообщение от Фрэди Крюгер Посмотреть сообщение
давайте я вам задачу дам можт у вас будет лучше решение=))
лучше бы новую тему открой,там отвечу,если смогу
0
Фрэди Крюгер
0 / 0 / 0
Регистрация: 26.05.2009
Сообщений: 50
29.10.2009, 20:32  [ТС] #29
Описать структуру с именем SUDENT, содержащуюю следующие поля:
Фамилия и инициалы
№ группы
Успеваемость (массив из пяти элементов).
написать программу, выполняющую следующие действия:
ввод с клавиатуры данных в массив, сост из 10 структур типа STUDENT; записи должны быть упорядочены по алфавиту;
Вывод на дисплей фамилий и номеров студентов имеющих хотябы одну оценку 2;
Если таких студентов нет, вывести соответствуюшее сообшение
Вот=)

Добавлено через 1 минуту
Цитата Сообщение от МедведЪ Посмотреть сообщение
это на мой код?ОО
Ага на твой код у меня С++ ругаецца(
0
AnonymC
1162 / 444 / 23
Регистрация: 23.06.2009
Сообщений: 6,279
Завершенные тесты: 1
29.10.2009, 20:33 #30
не,н мое,я со структурами не знаком,...не учил...и поменяй шрифт!

Добавлено через 30 секунд
Цитата Сообщение от Фрэди Крюгер Посмотреть сообщение
Ага на твой код у меня С++ ругаецца(
выложи код
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
29.10.2009, 20:33
Привет! Вот еще темы с ответами:

Описать структуру с именем STUDENT - C++
1.Описать структуру с именем STUDENT, содержащую следующие поля: • NAME – фамилия и инициалы; • GROUP – номер группы; • SES -...

Описать структуру с именем STUDENT - C++
помогите,пожалуйста! написала прогу,она не работает(((( #include &quot;stdafx.h&quot; #include &lt;stdio.h&gt; #include&lt;conio.h&gt; ...

Описать структуру с именем Student - C++
Описать структуру с именем Student, содержащую следующие поля: имя, группа, успеваемость (массив из 4 элементов). Написать программу,...

Описать структуру с именем STUDENT - C++
Описать структуру с именем STUDENT, содержащую следующие поля:-фамилия и инициалы;-номер группы;-успеваемость (массив из пяти...


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

Или воспользуйтесь поиском по форуму:
30
Yandex
Объявления
29.10.2009, 20:33
Ответ Создать тему
Опции темы

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