Как вывести значение локальной переменной из цикла? с++

Есть данный фрагмент кода. Если среди оценок есть "2", то выводит данные об ученике. Задача: сделать так, чтобы при отсутствии таковых учеников выводилось соответствующее сообщение. Проблема: не знание/ не понимание. Что пробовал: пытался добавить счетчик в цикл (if (k == 0) cout "Таких учеников нет"), но как вы знаете значение локальных переменных после цикла не сохраняется и соответственно k=0 всегда вне цикла. Пытался также как-то записать значения счетчика в глобальную переменную через указатели, но ничего не вышло. Гуглить - тоже не получилось.

void vivod()
{
    cout << "Студенты, имеющие оценку 2: \n\n";
    for (i = 0; i < 10; i++)
    {
        s1 = string(stud1[i].ses, 5);
        pos = s1.find("2");
        if (pos != -1)
        {
            cout << "Студент: " << stud1[i].name << "\n";
            cout << "Группа: " << stud1[i].group << "\n";
            cout << "Оценки:  " << s1 << "\n\n\n";
        }
    }
}

Ответы (1 шт):

Автор решения: Harry

Что-то типа

void vivod()
{
    cout << "Студенты, имеющие оценку 2: \n\n";
    bool is = false;
    for (i = 0; i < 10; i++)
    {
        s1 = string(stud1[i].ses, 5);
        pos = s1.find("2");
        if (pos != -1)
        {
            cout << "Студент: " << stud1[i].name << "\n";
            cout << "Группа: " << stud1[i].group << "\n";
            cout << "Оценки:  " << s1 << "\n\n\n";
            is = true;
        }
    }
    if (!is) { cout << "Таких студентов нет\n\n"; }
}
→ Ссылка