Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.67/3: Рейтинг темы: голосов - 3, средняя оценка - 4.67
4 / 4 / 0
Регистрация: 18.10.2010
Сообщений: 27
1

Работа со строками - разобрать код

27.12.2010, 20:20. Показов 613. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
разбираю сейчас работу со строками и попался такой код программы:

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <stdio.h>
#include <string.h>
 
int main()
{
    char s[80], passw[]="kuku";
    int i, k=0;
    for (i=0; !k && i<3; i++)
    {
        printf ("\nvvedite password:\n");
        gets(s);
        if(strstr(s,passw)) k=1;
    }
    if(k) printf("\npassword prinyat");
    else printf ("\npassword neverniy");
    return 0;
}
Непонятно несколько вещей:
-строка if(strstr(s,passw)) k=1; для чего мы k приравниваем ко 1-му
-if(k) printf("\npassword prinyat"); что мы проверяем данным условием?
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
27.12.2010, 20:20
Ответы с готовыми решениями:

Работа со строками - прокомментировать код
На просторах интернета нарыл данную прогу : #include &quot;stdafx.h&quot; #include &lt;stdio.h&gt; #include...

Работа со строками. Переделать код из Delphi в C++.
procedure TForm1.Button1Click(Sender: TObject); var s, t, p: string; //буферы для Edit1, Label1,...

Кто может разобрать код? Завтра проверочная работа
Задали полностью разобрать код по каждой строке, помогите пожалуйста! &lt;?php header...

Работа со строками, прокомментируйте код
Добрый день!. Комментарии к коду, кто разбирается пожалуйста. #include &lt;stdio.h&gt; #include...

4
122 / 122 / 16
Регистрация: 18.09.2010
Сообщений: 212
27.12.2010, 20:33 2
Цитата Сообщение от fygaska Посмотреть сообщение
Непонятно несколько вещей:
-строка if(strstr(s,passw)) k=1; для чего мы k приравниваем ко 1-му
-if(k) printf("\npassword prinyat"); что мы проверяем данным условием?
k приравнивается к 1, когда пароль верный, иначе k=0
C
1
if(k)
это значит "если k не равно нулю (то есть истинно)",тогда печатаем "пароль принят", в противном случае печатаем "неверный пароль"
0
4 / 4 / 0
Регистрация: 18.10.2010
Сообщений: 27
27.12.2010, 22:36  [ТС] 3
Хорошо!
тогда это условие выхода из цикла будет выполнено, если k ложно: for (i=0; !k && i<3; i++)
но тогда этому противоречить условие в самом цикле: if(strstr(s,passw)) k=1; Здесь k присваиватся истинность. А условие выхода из цикла у нас "ложь". Как, объясните пожалуйста!!!
0
122 / 122 / 16
Регистрация: 18.09.2010
Сообщений: 212
27.12.2010, 23:15 4
Цитата Сообщение от fygaska Посмотреть сообщение
тогда это условие выхода из цикла будет выполнено, если k ложно: for (i=0; !k && i<3; i++)
Не совсем верно.. условие продолжения цикла - это "k=0 И i<3" ..то есть цикл прервется либо когда k перестанет быть нулем (что и происходит при правильном вводе пароля), либо когда i станет больше 3...почитайте про логические операции...
1
4 / 4 / 0
Регистрация: 18.10.2010
Сообщений: 27
28.12.2010, 00:41  [ТС] 5
про них то я знаю! Просто забыл про условие в цикле!!! Я думал что выражение(второе условие) в for - условие для останоки итерации, а это ведь условие для продолжения!
Спасибо!!!
0
28.12.2010, 00:41
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
28.12.2010, 00:41
Помогаю со студенческими работами здесь

Оцените код - работа со строками
public String cutString(Object a){ StringBuffer buff = new StringBuffer(new...

Переписать код с Pascal (работа со строками)
Function MaxBorder(S:String):Word; Var i, j, br, n:Word; Begin n:=Length(S);{Вычисляем длину...

Работа со строками в мемо (Код прилагается)
У меня выводит из файла сколько цех сделал деталей и сколько ему нужно было сделать Ниже есть...

Программа не правильно обрабатывает код (работа со строками)
Задание: Дана строка символов до точки. Группа символов в ней между пробелами считается словом...

Работа со строками, заполнить компоненты строками из файла
Привет! Нужна помощь в заполнении формы В общем, есть форма отправки письма. У нее есть 2 функции,...

Разобрать код и создать приложение использующее этот код
ПОМОГИТЕ ПОЖАЛУЙСТА Option Explicit Private Sub Form_DragDrop(Source As Control, x As Single,...


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

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru