Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву
Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Краткие теоретические сведенияСодержание книги
Поиск на нашем сайте Операторы циклов применяют, когда надо повторить некоторые действия (операторы и операции) несколько раз, и такие участки алгоритмов называют циклами.
Оператор цикла for Основная форма оператора цикла for имеет вид: for (выражение _1; выражение _2; выражение _3) оператор; где выражение _1 – начальное значения параметра цикла; выражение _2 – проверка условия на продолжение цикла; выражение _3 – изменение параметра цикла (коррекция); оператор – простой или составной оператор языка Си. Схема работы оператора следующая: только один раз вначале вычисляется выражение_1, затем проверяется выражение_2, и если оно - «истина», то выполняется циклический участок программы, затем производится коррекция параметра, и так до тех пор, пока выражение_2 не примет значение «ложь». Например: for (k=1; k<5; k++) printf(“\n %d”, k); в результате - печатаются в столбик цифры от 1 до 4. В качестве параметра цикла можно использовать переменную любого базового типа. Например, вывод на экран букв латинского алфавита: for(ch=’a’; ch<=’z’; ch++) printf(“ %c”,ch); Необходимо контролировать структуру циклов for, чтобы не получился бесконечный цикл (из которого нет выхода). Выйти из цикла досрочно можно следующими способами: - по дополнительному условию; - используя операторы: break; - выход из цикла, в котором он находится, управление передается на первый после цикла выполняемый оператор; exit (int Kod);- выход из программы; return; - выход из функции; - с помощью оператора безусловного перехода goto. Досрочное завершение текущего циклического шага возможно при помощи дополнительного условия или оператора continue, который прерывает выполнение текущего шага цикла, т.е. пропускает операторы оставшейся части цикла и передает управление в головной оператор цикла для коррекции параметра и проверки условия. Передавать управление извне внутрь цикла запрещается. Любое из выражений цикла for в круглых скобках может отсутствовать, но символ «;» опускать нельзя. Например: int i = 0; for(; i < 3; i++) puts(“ Hello!”);
Циклические операторы while и do–while Основная форма циклического оператора while: while (условие) оператор; где оператор – это простой, составной или пустой оператор. Цикл выполняется до тех пор, пока условие принимает значение «истина», т.е. выражение в скобках возвращает ненулевой результат. Это цикл с предусловием – сначала проверяется условие, затем выполняется оператор. Поэтому цикл while не выполнится ни разу, если изначально результат вычисления условия будет равен 0. Основная форма оператора do – while: Do оператор; while (условие); где оператор – это простой, составной или пустой оператор. Оператор do – while – оператор цикла с постусловием, т.е. сначала выполняется оператор, а затем проверяется условие на истинность. Так как в цикле do–while условие проверяется в конце цикла, то цикл будет выполнен хотя бы один раз. В циклах типа while и do–while допустимы те же способы досрочного выхода из цикла и досрочное завершение текущего шага цикла, как и в операторе for, но в последнем случае в отличие от цикла for управление передается на проверку условия. Для предотвращения бесконечного цикла (while и do–while) нужно предусмотреть изменение переменных, входящих в условие. Примеры бесконечных циклов: 1) for(;;) оператор; 2) while(любое_число_не_0) оператор; // Всегда истинно! 3) do оператор; while(любое_число_не_0); // Всегда истинно! Среди таких операторов цикла обязательно должно быть условие выхода. Вложенные циклы В случае вложенных циклов один цикл находится внутри другого, например: for(i = nn; i < nk; i++) for(j = mn; j < mk; j++) оператор; Внутренний цикл будет выполняться для каждого значения параметра i, удовлетворяющего условию внешнего цикла. Пример: int i,j; for(i=1;i<10;i++) { // Печать таблицы умножения for(j=1;j<4;j++) printf(“\n %d*%d=%2d”, i, j, i*j); printf(“\n”); }
Пример: вычислить #include <stdio.h> #include <conio.h> void main(void) { float s; int k,N; puts(“ Введите N”); scanf(“%d”,&N); for (s=0, k=1; k <= N; k++) { // В заголовке цикла можно выпол- // нять и двойное присваивание s += 1.0/k; printf(" \n k = %d s = %f ", k, s); } printf("\n ОТВЕТ: s = %f ",s); }
Варианты заданий Значение аргумента x изменяется от a до b с шагом h. Для каждого x найти значения функции Y(x), суммы S(x) и |Y(x)-S(x)| и вывести в виде таблицы. Значения a,b,h и n вводятся с клавиатуры. Так как значение S(x) является рядом разложения функции Y(x). Значения S и Y для данного аргумента x должны совпадать в целой части и в первых двух-четырех позициях после десятичной точки. Работу программы проверить для a=0,1; b=1,0; h=0,1; n выбрать максимально возможным! 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15.
Контрольные вопросы 1. Какой процесс называется “циклическим”? 2. Чем отличаются операторы while и do - while? 3. Объясните работу оператора for. 4. Поясните понятие “вложенный цикл”? 5. Какие переходы допустимы между вложенными циклами?
ЗАДАНИЕ 4. Функции пользователя
Цель работы: познакомиться с механизмом составления и организации взаимодействия пользовательских функций языка Си.
|
||
|
Последнее изменение этой страницы: 2020-11-28; просмотров: 147; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 216.73.216.236 (0.008 с.) |