Операторы прерывания выполнения блока break, continue
В теле любого цикла можно использовать операторы break и continue. Оператор break позволяет выйти из цикла, не завершая его. Оператор continue позволяет пропустить часть операторов тела цикла и начать новую итерацию. Пример. Вывести числа от 0 до 99 ниже главной диагонали. for(i=0; i<10; i++) { for(j=0; j<10; j++) { if(j>i) break; printf("%2d ",i*10+j); } printf("\n"); } Пример: Вывести числа от 0 до 99 исключая числа, оканчивающиеся на 5 или 8. for(i=0; i<10; i++) { for(j=0; j<10; j++) { if((j==8) || (j==5))) continue; printf("%2d ",i*10+j); } printf("\n"); } При вложенных циклах действия операторов break и continue распространяется только на саму внутреннюю структуру, в которой они содержатся. Оператор return. По окончании выполнения вызываемой функции осуществляется возврат значения в точку ее вызова. Это значение присваивается переменной, тип которой должен соответствовать типу возвращаемого значения функции. Функция может передать в вызывающую программу только одно значение. Для передачи возвращаемого значения в вызывающую функцию используется оператор return в форме return(ВозвращаемоеЗначение); Действие оператора следующее: значение выражения, заключенного в скобки, вычисляется и передается в вызывающую функцию. Возвращаемое значение может использоваться в вызывающей программе как часть некоторого выражения. Оператор return также завершает выполнение функции и передает управление следующему оператору в вызывающей функции. Оператор return не обязательно должен находиться в конце тела функции. Функции могут и не возвращать значения, а просто выполнять некоторые вычисления. В этом случае указывается пустой тип возвращаемого значения void, а оператор return может либо отсутствовать, либо не возвращать никакое значение: return (0); Функции. Прототип функции. Определение функции. Вызов функции. Функция — это самостоятельная единица программы, которая спроектирована для реализации конкретной подзадачи. Функция является подпрограммой, которая может содержаться в основной программе, а может быть создана отдельно (в библиотеке). Каждая функция выполняет в программе определенные действия. Прототип функции. Прототипом функции в языке Си называется объявление функции, не содержащее тела функции, но указывающее имя функции, типы аргументов и возвращаемый тип данных. В то время как определение функции описывает, что именно делает функция, прототип функции может восприниматься как описание её интерфейса. В общем виде прототип функции должен выглядеть таким образом: тип имя_функции(тип имя_парам1, тип имя_парам2, ..., имя_парамN); Использование имен параметров не обязательно. Однако они дают возможность компилятору при наличии ошибки указать имена, для которых обнаружено несоответствие типов. пример объявления функции: / / Объявление прототипа функции с двумя целыми параметрами / / функция принимает два аргумента и возвращает их сумму int sum(int num1, int num2); В языках C, функции должны быть объявлены до момента их вызова. Вы можете объявить функцию, при этом функция может возвращать значение или — нет, имя функции присваивает программист, типы данных параметров указываются в соответствии с передаваемыми в функцию значениями. Имена аргументов, при объявления прототипов являются необязательными: int sum(int , int ); // тот же прототип функции Определение функции. Определение функций returnDataType functionName( dataType argName1, dataType argName2, ..., dataType argNameN) { // тело функции } Рассмотрим определение функции на примере функции sum. // определение функции, которая суммирует два целых числа и возвращает их сумму int sum(int num1, int num2) { return (num1 + num2); } В языке C , функции не должны быть определены до момента их использования, но они должны быть ранее объявлены. Но даже после всего этого, в конце концов, эта функция должна быть определена. После этого прототип функции и ее определение связываются, и эта функция может быть использована. Если функция ранее была объявлена, она должна быть определена с тем же возвращаемым значением и типами данных, в противном случае, будет создана новая, перегруженная функция. Заметьте, что имена параметров функции не должны быть одинаковыми. // объявление функции суммирования int sum(int, int); // определение функции суммирования int sum(int num1, int num2) { return (num1 + num2); } Вызов Функции. После того, как функция была объявлена и определена, её можно использовать, для этого её нужно вызвать. Вызов функции выполняется следующим образом: funcName( arg1, arg2, ... ); где, funcName — имя функции; arg1..2 — аргументы функции (значения или переменные) Примечание: функции могут не иметь параметров, тогда в круглых скобочках ничего писать не надо. пример: // вызов функции синуса sin( 60 ); Вызов функции выполняется записью её имени, а затем круглых скобочек (). Если функция принимает аргументы, то в круглых скобках передаются аргументы, в порядке, указанном в объявлении функции. Массивы. Массив – совокупность данных одного типа имеющих одно и то же имя, расположенных в памяти последовательно один за другим и пронумерованных целыми числами (индексами). Объявляются: int a[10]; Элементы нумеруются начиная с нуля. Возможно объявление двумерных массивов: Float b[5][2]; a[5]=16; Вывести на экран: printf(«%d»,a[5]); Инициализация массивов. Int a[4]={ 0,5,10,0}; a[0]=0; a[1]=5; a[2]=10; a[3]=0; int b[100]={0}; Имя массива без индекса является адресом первого элемента массива. Char a[5]=”524m”; Обнулить строковой массив: Char b[5]=” ”; Тип данных Указатель. Предназначен для работы с адресами переменных и других объектов, в частности для передачи адресов переменных в функции. Указатель является переменной в которой содержится адрес. Указатель на данные. Int *p – объявление указателя на данные типа integer. Int a; P=&a; - занесение в указатель p адреса переменной a Void *pv; - для адресации любого объекта Int *p; Float *pf; Pv=pf; Char *pc; Pc=(char*)pf; Указатель на функцию. Int_(*f1)(int,float); где int – Тип возвращаемого значения, (*f1) – указатель на функцию, (int,float) – тип передаваемого в функцию параметра. Int sum_i_f(int,float); - прототип функции на которую может указывать указатель f1 F1=sum_i_f; - занесение в указатель f1 адреса функции sum_i_f Имя функции без круглых скобок и параметров – адрес функции Вызов функции по указателю (*f1)(10,3,14);
Популярное: Почему стероиды повышают давление?: Основных причин три... Как выбрать специалиста по управлению гостиницей: Понятно, что управление гостиницей невозможно без специальных знаний. Соответственно, важна квалификация... Почему человек чувствует себя несчастным?: Для начала определим, что такое несчастье. Несчастьем мы будем считать психологическое состояние... ©2015-2024 megaobuchalka.ru Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. (676)
|
Почему 1285321 студент выбрали МегаОбучалку... Система поиска информации Мобильная версия сайта Удобная навигация Нет шокирующей рекламы |