Оператор безумовного переходу
Найпростішим з операторів переходів, звичайно, є оператор безумовного переходу, котрий записується так:
goto <мітка>;
де мітка - це довільний ідентифікатор. Оператор goto вказує, що наступним в програмі повинен виконуватись оператор, перед котрим записана вказана мітка. Мітка і оператор повинні розділятись двокрапкою (:). Мітку можна поставити перед довільною конструкцією в тілі тієї функції, в котрій записано оператор goto.
Приклад:Ввести декілька наборів коефіцієнтів квадратного рівняння ах2+bx+c=0 і вивести повідомлення: матиме рівняння дійсні корені чи ні.
// Програма квадратне рівняння
#include <stdio.h>
#include <math.h>
void main()
{
float a,b,c,d;
vvid:printf("\n Уведіть коефіцієнт рівняння \n");
scanf("a,b,c");
if (a= =0) goto finich; //Якщо а=0, то перейти до позначки finich
d=pow(b,2)-4*a*c; //Інакше обчислити дискримінант
if (d>=0) printf(" \n Це рівняння має корені \n");
else //Якщо дискримінант від’ємний, то
{
printf("\n Дані введено неправильно \n"); //виводимо відповідні
printf("\n Рівння дійсних розв’язків не має \n"); // повідомлення
goto vvid; //перейти до позначки vvid
}
finich:
}
4. Порожній оператор
Порожній оператор складається тільки з крапки з комою. При виконанні цього оператора нічого не відбувається. Він зазвичай використовується в наступних випадках:
§ у операторах do, for, while, if в рядках, коли місце оператора не потрібне, але по синтаксису потрібний хоч би один оператор;
§ при необхідності помітити фігурну дужку.
Синтаксис мови СІ вимагає, щоб після мітки обов'язково був оператор. Фігурна ж дужка оператором не є. Тому, якщо треба передати управління на фігурну дужку, необхідно використовувати порожнього оператора.
Приклад:
int main ( )
{
:
{ if (...) goto a; /* переход на дужку */
{ ...
}
a:; }
return 0;
}
Дата добавления: 2015-08-26; просмотров: 695;