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

Оператор switch C++ - C++

Восстановить пароль Регистрация
 
aimbat
0 / 0 / 0
Регистрация: 07.10.2013
Сообщений: 81
07.10.2013, 01:56     Оператор switch C++ #1
Вместо вывода на экран отрицательных значений, работает default. Так же при вводе двухзначного числа выводит первую цифру этого же числа. Прошу помочь)
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
#include <stdio.h>
#include <conio.h>
void main()
{
    int k;
    puts("Input number:");
    switch (k)
    {
    case '1':
        puts("Positive one");
        break;
    case '2':
        puts("Positive two");
        break;
    case '3':
        puts("positive three");
        break;
    case '4':
        puts("positive four");
        break;
    case '5':
        puts("positive five");
        break;
    case '6':
        puts("positive six");
        break;
    case '7':
        puts("positive seven");
        break;
    case '8':
        puts("positive eight");
        break;
    case '9':
        puts("positive nine");
        break;
    case '0':
        puts("zero");
        break;
    case '-1':
        puts("negative one");
        break;
    case '-2':
        puts("negative two");
        break;;
    case '-3':
        puts("negative three");
        break;
    case '-4':
        puts("negative four");
        break;
    case '-5':
        puts("negative five");
        break;
    case '-6':
        puts("negative six");
        break;
    case '-7':
        puts("negative seven");
        break;
    case '-8':
        puts("negative eight");
        break;
    case '-9'
        puts("negative nine");
        break;
    default
        puts("no way");
    }
    getch()
}
Миниатюры
Оператор switch C++   Оператор switch C++  
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.10.2013, 01:56     Оператор switch C++
Посмотрите здесь:

Cи++. Оператор switch. C++
C++ оператор switch
C++ Оператор switch
C++ Оператор switch
C++ Оператор switch
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Croessmah
Модератор
Эксперт С++
 Аватар для Croessmah
11815 / 6794 / 769
Регистрация: 27.09.2012
Сообщений: 16,867
Записей в блоге: 2
Завершенные тесты: 1
07.10.2013, 02:21     Оператор switch C++ #2
1) Чему равно k, по Вашему?
2) case '1' - сравниваете с кодом символа
3) case '-1' - а тут вообще два символа
aimbat
0 / 0 / 0
Регистрация: 07.10.2013
Сообщений: 81
07.10.2013, 02:40  [ТС]     Оператор switch C++ #3
Цитата Сообщение от Croessmah Посмотреть сообщение
1) Чему равно k, по Вашему?
2) case '1' - сравниваете с кодом символа
3) case '-1' - а тут вообще два символа
Я скинул скрин с условием. Гляньте,пожалуйста)
Миниатюры
Оператор switch C++  
ArmanPrestige
 Аватар для ArmanPrestige
219 / 210 / 50
Регистрация: 15.01.2013
Сообщений: 787
07.10.2013, 02:46     Оператор switch C++ #4
Перед switch добавляешь
C++
1
scanf("%d", &k);
и case надо ставить без кавычек, т.е.
C++
1
case 1:
и так далее
alsav22
5282 / 4801 / 442
Регистрация: 04.06.2011
Сообщений: 13,587
07.10.2013, 03:13     Оператор switch C++ #5
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <stdio.h>
#include <conio.h>
 
char* number[] = {"zero", "one", "two", "three", "four", "five", "six", "seven", "eight", "nine"};
char *sign[]   = {"positive", "negative"};
 
int main()
{
    int k;
    puts("Input number:");
    if (!scanf("%d", &k)) printf("%s\n", "Error!");
    else if (k == 0) 
        printf(number[k]);
    else if (k > 0 && k < 10)
        printf("%s %s\n", sign[0], number[k]);
    else if (k < 0 && k > -10)
        printf("%s %s\n", sign[1], number[-k]);
    else printf("%s\n", "Error!");
 
    getch();
 
    return 0;
}
VEINHORN
542 / 91 / 22
Регистрация: 16.12.2011
Сообщений: 317
07.10.2013, 12:56     Оператор switch C++ #6
Вы k не ввели, а только напечатали в консоли предложение о вводе. Поубирайте у себя одинарные кавычки, они проверяют символ, а не целочисленное значение.

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
#include <stdio.h>
#include <conio.h>
#include<iostream>
using namespace std;
 
void main()
{
    int k;
    puts("Input number:");
    cin >> k;
    switch (k)
    {
    case 1:
        puts("Positive one");
        break;
    case 2:
        puts("Positive two");
        break;
    case 3:
        puts("positive three");
        break;
    case 4:
        puts("positive four");
        break;
    case 5:
        puts("positive five");
        break;
    case 6:
        puts("positive six");
        break;
    case 7:
        puts("positive seven");
        break;
    case 8:
        puts("positive eight");
        break;
    case 9:
        puts("positive nine");
        break;
    case 0:
        puts("zero");
        break;
    case -1:
        puts("negative one");
        break;
    case -2:
        puts("negative two");
        break;;
    case -3:
        puts("negative three");
        break;
    case -4:
        puts("negative four");
        break;
    case -5:
        puts("negative five");
        break;
    case -6:
        puts("negative six");
        break;
    case -7:
        puts("negative seven");
        break;
    case -8:
        puts("negative eight");
        break;
    case -9:
        puts("negative nine");
        break;
    default :
        puts("no way");
    }
    getch();
}
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
07.10.2013, 14:15     Оператор switch C++
Еще ссылки по теме:

оператор switch C++
Оператор switch C++
Оператор switch и while C++

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

Или воспользуйтесь поиском по форуму:
Tulosba
:)
Эксперт C++
4378 / 3221 / 297
Регистрация: 19.02.2013
Сообщений: 9,044
07.10.2013, 14:15     Оператор switch C++ #7
А что такой свитч-то коротенький?
Yandex
Объявления
07.10.2013, 14:15     Оператор switch C++
Ответ Создать тему
Опции темы

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