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

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

Войти
Регистрация
Восстановить пароль
 
Luxmunx
2 / 2 / 0
Регистрация: 05.11.2012
Сообщений: 86
#1

Не выполняется условие или почему данные все равно переползают в S2? - C++

12.12.2013, 17:08. Просмотров 207. Ответов 1
Метки нет (Все метки)

Всем привет!
Почему в строке S2 тоже заносятся пятерки, когда их туда не должно пускать условие? И что перед пятерками накалякано тут?
Условие такое задачи: Если в строке встречается a или z, то их записать в строку S2, остальное все игнорировать.

И в конце в самом еще фигня вылазит, которая под консолью. ЧТо я не так делаю, объясните новичку плиз)

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
#include <string.h>
#include <iostream>
using namespace std;
 
int main(int argc, char* argv[])
{
char S1[5];
char S2[5];
cin»S1;
cout«"Len: "«strlen(S1)«endl;
int j=0;
for (unsigned int i = 0; i < strlen(S1); i++)
{
if ((S1[i]=='a')||(S1[i]=='z'))
{
S2[j]=S1[i]; j++;
}
 
};
 
//strcpy(S1, S2);
cout«"S1="«S1;
cout«"\nS2="«S2«endl;
 
system("pause");
return 0; 
}
Миниатюры
Не выполняется условие или почему данные все равно переползают в S2?  
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
12.12.2013, 17:08     Не выполняется условие или почему данные все равно переползают в S2?
Посмотрите здесь:

Почему всегда выполняется условие? - C++
Здравствуйте, имеется код int main(int argc,char *argv) { clrscr(); if(argv != &quot;aaa&quot;) { printf(&quot;Error 2&quot;); ...

Почему при вводе в массив числа отличного от 1 и 2 все равно происходит начисление К+1 - C++
K=0; for (i=1;i&lt;=4;i++){ cout&lt;&lt;&quot;Vvedite otvet:&quot;; cin&gt;&gt;one; if ((one=1)||(one=2)) K=K+1; }

Не выполняется условие! - C++
Здравствуйте! подскажите пожалуйста по какой причине у меня может не выполняться условие проверки страны? void country(TEda * Start){ ...

Не выполняется условие if - C++
Нужна помощь не работает 13-я строка. #include &lt;iostream&gt; #include &lt;stdafx.h&gt; double f(double ** a1, int l, int m) { int...

Не выполняется условие - C++
При вводе единицы должно вывестись сообщение на экран, однако этого не происходит. MS Visual Studio #include &lt;cstdlib&gt; #include...

Не выполняется условие - C++
Если ввести в консольном приложении строку Terminator, то должно выполниться условие и выведется текст That's Right. Но оно почему-то не...

Не выполняется условие в цикле for - C++
Доброго времени суток. Почему не выполняется код в цикле for? #include &lt;iostream&gt; using namespace std; int main(){ for (int...

Динамический массив. Не выполняется условие - C++
Почему не выполняется условие массива А? #include &lt;iostream&gt; #include &lt;conio.h&gt; #include &lt;math.h&gt; #include &lt;ctime&gt; #include...

Не выполняется условие. Причина не ясна - C++
Вот код /* Расчет количества и веса арматуры */ #include &lt;stdio.h&gt; ...

оооочень странно не выполняется условие - C++
bool c = true; if(c == true) { cout &lt;&lt; &quot;w&quot; &lt;&lt; endl; loading(); c = false; } этот код должен выполнятся вроде бы 1...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
User409368
191 / 168 / 6
Регистрация: 09.09.2013
Сообщений: 524
12.12.2013, 17:44     Не выполняется условие или почему данные все равно переползают в S2? #2
потому что в S2 находится мусор.

когда печатается эта строка
Цитата Сообщение от Luxmunx Посмотреть сообщение
cout«"\nS2="«S2«endl;
то выводится символ за символом пока не встретиться '\0'
Ответ Создать тему
Опции темы

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