давно
Старший Модератор
17042
808
25.08.2008, 07:56
общий
это ответ
Здравствуйте, Tribak!
goto обусловливает безусловный переход во время выполнения программы в то место, которое обозначено меткой. Синтаксис метки Имя_метки - двоеточие - фигурные скобки, внутри которых содержатся операторы. Основное отличие метки от функций (помимо синтаксиса):
1. Функция объявляется и вызывается в любом месте программы (объявляться может как вне, так и внутри главной функции main), в то время как метка - только в пределах главной функции main.
2. Операторы метки выполняются последовательно, один за другим, также как и прочие операторы программы, просто при использовании goto (переходе к метке) выполнение программы начинается заново с этого места.
Пример использования goto (на C++) см. в приложении.
Для считывания единичного символа в C++ используется объект cin, в чистом Си - функция getchar()
Приложение:
#include <iostream.h>
//-------------------------------------------------------
int main()
{
int x, y, s;
char a;
// Begin - метка суммирования
Begin:
{
cout << "x: ";
cin >> x;
cout << "y: ";
cin >> y;
s = x + y;
cout << "sum: " << s << endl;
}
cout << "Хотите продолжить? Введите ответ буквой (y / n): ";
cin >> a;
if(a == 'y') goto Begin;
return 0;
}