Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 30.03.2010, 14:08   #1
Link12
Пользователь
 
Регистрация: 23.03.2010
Сообщений: 12
По умолчанию не выполняется условие

Код:
main()
{
  char title[14];
  int i;
  cout<<"vvedite name"<<endl;
     for (i=0 ; i<=13 && title[i] != '\n' ; i++ )
       cin>>title[i];
     title[i]=NULL;   
  cout<<"your name:"<<title;
  getch();        
}
Нужно чтобы пользователь ввёл своё имя, нажал на Enter и программа вывела введёное имя на монитор. Ввожу имя(например из 5 символов), нажимаю Enter, но программа не выводит имя. Вввожу ещё символов (до 14) программа выводит имя.
Тоесть получается, что почему то не выполняется данное условие title[i] != '\n'. В чём может быть проблема?

Последний раз редактировалось Stilet; 30.03.2010 в 14:54.
Link12 вне форума Ответить с цитированием
Старый 30.03.2010, 14:55   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

А обычным Scanf уже не модно?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 30.03.2010, 15:08   #3
Vago
Форумчанин
 
Регистрация: 15.01.2010
Сообщений: 948
По умолчанию

Цитата:
Сообщение от Link12 Посмотреть сообщение
Код:
     for (i=0 ; i<=13 && title[i] != '\n' ; i++ )
       cin>>title[i];
У Вас эта проверка выполняется до того, как в title[i] заносится значение.
Vago вне форума Ответить с цитированием
Старый 30.03.2010, 15:12   #4
Link12
Пользователь
 
Регистрация: 23.03.2010
Сообщений: 12
По умолчанию

Цитата:
А обычным Scanf уже не модно?
можно и через scanf, только от этого программа не заработает так как нужно.

Последний раз редактировалось Link12; 30.03.2010 в 15:15.
Link12 вне форума Ответить с цитированием
Старый 30.03.2010, 15:58   #5
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

Цитата:
только от этого программа не заработает так как нужно.
Ну дык это уже ложится на твои плечи чтоб она заработала как положенно.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 30.03.2010, 19:09   #6
atenon
Форумчанин
 
Регистрация: 05.12.2009
Сообщений: 253
По умолчанию

Цитата:
for (i=0 ; i<=13 && title[i] != '\n' ; i++ )
&& title[i] != '\n' Зачем это условие если массив по определению пустой, так что переберать элементы не равные окончанию строки не имеет смысла.



Цитата:
cin>>title[i];
После каждой введенной буквы нужно нажимать ентерь иначе ошибка, массив то символьный и больше одной буквы в одну ячейку как не засовывай не поместится.

А чем вот так не нравится?
Код:
char title[14];
  cout<<"vvedite name"<<endl;
   cin>>title;
   cout<<"your name:"<<title;
   return 0;
Приходится бежать со всех ног, чтобы только остаться на том же месте! Если хочешь попасть в другое место, тогда нужно бежать по меньшей мере вдвое быстрее! Льюис Кэрол

Последний раз редактировалось atenon; 30.03.2010 в 19:21.
atenon вне форума Ответить с цитированием
Старый 30.03.2010, 19:36   #7
Link12
Пользователь
 
Регистрация: 23.03.2010
Сообщений: 12
По умолчанию

Цитата:
Сообщение от atenon Посмотреть сообщение
А чем вот так не нравится?
Код:
char title[14];
  cout<<"vvedite name"<<endl;
   cin>>title;
   cout<<"your name:"<<title;
   return 0;
Просто хотел через цикл сделать Ошибку понял после 3 поста.
Тема закрыта.
Link12 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Определить сумму элементов массива, кратных трем (Не выполняется условие) Skrip Общие вопросы C/C++ 8 04.06.2009 13:56
не выполняется второе условие if Division Общие вопросы C/C++ 5 24.12.2008 03:16
Найти первый из номеров K, для которых выполняется условие |AK AK–1| < D Jereme Паскаль, Turbo Pascal, PascalABC.NET 2 21.12.2008 12:54
Почему выполняется ложное условие? AND Помощь студентам 8 16.11.2007 16:30