Оператор цикла while
В общем виде цикл while записывается так:
while (<выражение>) <оператор>;
Цикл while является «условным» циклом, использующим предусловие (т.е. условие на входе). Он называется условным, потому что выполнение оператора зависит от истинности условия, описываемого с помощью выражения. .
Если выражение «истинно» (или в общем случае не равно нулю), то оператор, входящий в цикл while, выполняется один раз, а затем выражение проверяется снова. Эта последовательность действий, состоящая из проверки и выполнения оператора, периодически повторяется до тех пор, пока выражение не станет ложным (или в общем случае равным нулю). После этого управление передается оператору, следующему за оператором цикла while.
При построении цикла while необходимо включить в него какие-то конструкции, изменяющие величину проверяемого выражения так, чтобы в конце концов оно стало ложным. В противном случае выполнение цикла никогда не завершится.
Пример 1. Алгоритм Евклида.
Программа 91
#include<stdio.h>
main()
{
int x,y;
scanf("\n%d",&x); scanf("\n%d",&y) ;
while (x!=y)
{
if (x>y) x=x-y; else y=y-x;
)
printf("\n%d",x);
)
Пример 2. Проверить, содержит ли квадрат натурального числа n цифру 3.
Программа 92
#include<stdio.h>
main()
{
int i,n,a;
scanf("%d",&n); n=n*n; i=10000;
while(i>=l)
{
a=n/i; /* если результат целочисленного деления n/i
меньше 1,то а=0 */
n=n-a*i;
if(a==3) goto abc; else i=i/10;
)
printf("цифры 3 в числе n^2 нет");
goto cd;
abc: printf("цифра 3 в числе n^2 есть");
cd: ;
}
Дата добавления: 2015-10-13; просмотров: 660;