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

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

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

Не работает свитч. Не найду решение никак - C++

09.12.2012, 15:42. Просмотров 293. Ответов 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
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
// 11.cpp : Defines the entry point for the console application.
//
 
#include "stdafx.h"
#include <iostream>
#include <conio.h>
#include <string.h>
using namespace std;
 
class People
{ 
public: 
   People(char *, char *,char *, float); 
   void Show_People(void); 
private: 
   char name [50];
   char sername[50];
   char family_status[64]; 
   float financ; 
};
 
People::People(char *name, char *sername,char *family_status,float financ)
{ 
   strcpy(People::name, name); 
   strcpy(People::sername,sername); 
   strcpy(People::family_status,family_status); 
   People::financ=financ; 
}
void People::Show_People(void)
 
{ 
   cout<<"Имя :"<< name <<endl;
   cout<<"Фамилия :"<<sername<<endl;
   cout <<"Семейный статус :"<<family_status<<endl; 
   cout << "Деньги :" <<financ<< endl; 
}
class Programmer: public People
{ 
public: 
   Programmer(char *, char *, char *, char *,char *, float, int);
   void Show_Programmer(void); 
private: 
   char company[50];
   char lang[50];
   int oput_in_years;
   
};
 
Programmer::Programmer(char *name, char *sername,char *family_status, char *company,char *lang, float financ, int oput_in_years) :People(name,sername,family_status,financ)
{  strcpy(Programmer::company,company) ; 
   strcpy(Programmer::lang,lang) ; 
   Programmer::oput_in_years=oput_in_years;
  
}
 
void Programmer::Show_Programmer(void)
 
{ 
   Show_People(); 
   cout << "Фирма :" << company<< endl; 
   cout << "Язык программирования:" <<lang<< endl; 
   cout <<"Опыт работы  :" <<oput_in_years<< endl; 
}
 
int main()
{setlocale(0,"rus");
 People man("Вася ", "Петренко", "Женат" ,3500); 
 Programmer woman("Анна", "Анникова","Замужем", "К_компания", "С++", 10000, 5); 
int komanda;
cout<<"1.Узнать информацию о человеке "<<endl;
cout<<"2.Узнать информация о программисте "<<endl;
cout<<"Введите команду :";
cin>>komanda;
switch(komanda)
{
case '1':
man.Show_People();
break;
case '2':
woman.Show_Programmer();
break;
default:
cout<<"Вы выбрали некоректную команду"<<endl;
}
getch();
return 0;
}
Всё компилируется , но когда ввожу например 1 или 2 , выбивает то , что указано в default, а вместо это должны работать функции man.Show_People(); или woman.Show_Programmer();

Не знаю , как исправить это , помогите пожалуйста)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
09.12.2012, 15:42     Не работает свитч. Не найду решение никак
Посмотрите здесь:

C++ Ну никак не компилится.
C++ Решение квадратных уравнений, почему не работает?
C++ определение неотрицательных элементов и их индексов в одномерном массиве(не найду ошибку)
C++ свитч
читаю читаю не найду C++
Подскажите ,пожалуйста,как отобразить схему алгоритма оператора свитч в с++? нигде не могу найти корректного ответа( C++
Не найду ошибку (функция, которая ищет максимальный элемент, который встречается больше 1 раза) C++
Структура свитч-кейс C++
Найти ошибку в программе со Свитч C++
C++ Динамический свитч?
Компактнее уже никак? C++
Вот у меня код с массивами, но никак не работает C++

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
v.a.l.i.d
412 / 377 / 10
Регистрация: 21.09.2012
Сообщений: 913
09.12.2012, 15:47     Не работает свитч. Не найду решение никак #2
Цитата Сообщение от Anastasia777 Посмотреть сообщение
switch(komanda)
{
case '1':
C++
1
2
3
switch(komanda)
{
   case 1: ...
Denno
51 / 51 / 6
Регистрация: 21.10.2012
Сообщений: 187
Завершенные тесты: 3
09.12.2012, 15:49     Не работает свитч. Не найду решение никак #3
int komanda;
замени на :
char komanda;
Anastasia777
1 / 1 / 0
Регистрация: 23.09.2012
Сообщений: 59
09.12.2012, 15:55  [ТС]     Не работает свитч. Не найду решение никак #4
Цитата Сообщение от v.a.l.i.d Посмотреть сообщение
C++
1
2
3
switch(komanda)
{
   case 1: ...
Спасибо большое ! Всё работает ) Хотя в книге с кавычками написано было ..странно)
v.a.l.i.d
412 / 377 / 10
Регистрация: 21.09.2012
Сообщений: 913
09.12.2012, 15:58     Не работает свитч. Не найду решение никак #5
Цитата Сообщение от Anastasia777 Посмотреть сообщение
Хотя в книге с кавычками написано было ..странно)
Значит переменная komanda в книге другого типа, char а не int
'1' == 49
'2' == 50
Yandex
Объявления
09.12.2012, 15:58     Не работает свитч. Не найду решение никак
Ответ Создать тему
Опции темы

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