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

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

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

При вводе имени сообщить, что есть такое имя - C++

07.03.2012, 23:50. Просмотров 377. Ответов 4
Метки нет (Все метки)

Хочу написать программу, при вводе имени(например Katy), должно вывестись что есть такое имя. Что не так?
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
#include <iostream>
using namespace std;
int main()
{
    setlocale (0,"Russian");
    char x;
    cout<<"Введите имя:"<<endl;
    cin>>x;
    if (x=='Katy')
        {
            cout<<"Есть такое имя"<<x<<endl;
        }
        else 
            if(x!='Katy')
            {
                cout<<"ошбика"<<endl;
            }
    system ("pause");
    return 0;
}
 Комментарий модератора 
Один вопрос — одна тема
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.03.2012, 23:50
Здравствуйте! Я подобрал для вас темы с ответами на вопрос При вводе имени сообщить, что есть такое имя (C++):

Что такое файловый буфер? Что такое режим (модификатор) доступа, при работе с файлами? - C++
Что такое файловый буфер? Что такое режим (модификатор) доступа, при работе с файлами?

Что такое указатель и с чем его есть - C++
Я уже не знаю что делать, но в книжке очень непонятно написано про указатели. Не могли бы вы объяснить что такое указатели и зачем они. И...

При вводе имени абонента или его номера выводить его фамилию, номер телефона и адрес. - C++
Создать телефонный справочник на 10 имен, адресов и номеров. При вводе имени абонента или его номера выводить его фамилию, номер телефона и...

Назначение flag, то есть что это вообще такое - C++
обьясните мне

std::map что такое и с чем это есть - C++
попытался найти док-ию по map, но так и не нащёл. есть у кого ли нормальная док-ия по Map?

Почему при вводе числа программа работает нормально, а при вводе буквы уходит в бесконечный цикл? - C++
void mainmenu() { cout &lt;&lt; &quot;Введи число&quot; &lt;&lt; endl; cin &gt;&gt; choice; if (choice == 1) { cout &lt;&lt; &quot;Hello&quot; &lt;&lt; endl; } ...

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Oleg_Brovko
8 / 8 / 1
Регистрация: 07.03.2012
Сообщений: 57
08.03.2012, 02:23 #2
Вот как вариант:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
#include <stdio.h>
#include <iostream>
#include <string>
 
using namespace std;
 
int main()
{
    setlocale (0,"Russian");
    string s1,s2;
    s2="Katy";
    cin>>s1;
 
    if(s1==s2)
    
        cout<<"Есть такое имя \n";
    else
        cout<<"Такого имени нет \n ";
 
    return 0;
}
0
easybudda
Модератор
Эксперт CЭксперт С++
9632 / 5580 / 948
Регистрация: 25.07.2009
Сообщений: 10,714
08.03.2012, 07:07 #3
Да кто же вас так учил С-строки сравнивать?
C++
1
2
3
4
#include <cstring>
//...
if ( ! strcmp(x, "Katy") )
  // Нашлась Катюха...
strcmp
Цитата Сообщение от Scaletta Посмотреть сообщение
char x;
Да и имя из одной буквы - это редкость...
А вообще, если на С++ пишете, то постом выше правильный пример.
1
Scaletta
0 / 0 / 0
Регистрация: 06.03.2012
Сообщений: 29
08.03.2012, 12:04  [ТС] #4
Да и имя из одной буквы - это редкость...
А вообще, если на С++ пишете, то постом выше правильный пример.
Вообще я хотел присвоить x="Katy", но получалось зацикливание и если даже я неправильное имя вводил, выводило что правильно и шло зацикливание.
А вот теперь вопрос возник, если имя введено неправильно, но я хочу чтобы оно вводилось до тех пор пока не будет верным. Для этого мне нужно будет использовать return s1; как это должно примерно выглядеть?
0
easybudda
Модератор
Эксперт CЭксперт С++
9632 / 5580 / 948
Регистрация: 25.07.2009
Сообщений: 10,714
08.03.2012, 13:43 #5
C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#include <stdio.h>
#include <string.h>
 
int main(void){
    char name[256];
    
    do {
        printf("Name: ");
        scanf("%255s", name);
    } while ( strcmp(name, "Katy") && printf("Wrong answer, try one more time...\n") );
    
    printf("Hello, Katy!\nGoodbye, Katy!\n");
    
    return 0;
}
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
08.03.2012, 13:43
Привет! Вот еще темы с ответами:

С++ Builder Циклы с условием (при вводе адреса цвета (например, 0 255 0) выдавать имя цвета) - C++
Help, не могу решить задачку ЛБ: нужно написать программу, при вводе адреса цвета (на пример 0 255 0 выдавал имя цвета). ...

Что такое рекурсивный тип данных? Что такое конструкция рекурсивного типа? - C++
Что такое рекурсивный тип данных? Что такое конструкция рекурсивного типа?

Что такое хэндлер файла? Что такое файловый указатель? - C++
Что такое хэндлер файла? Что такое файловый указатель?

при вводе четного числа. все операции необходимые выполняются, но потом переходит на нечетные.есть код. помогите, пожалуйста - C++
вот при вводе нечетного числа, все идет хорошо. а как введу четное, то при выполнении операций, программа переходит дальше по тексту, будто...


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

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

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