Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
SHPORY DLYA TEL.doc
Скачиваний:
41
Добавлен:
30.04.2015
Размер:
462.34 Кб
Скачать

15 Организация циклов в программе.Си

Оператор for - это наиболее общий способ организации цикла. Он имеет следующий формат: for( выражение 1 ; выражение 2 ; выражение 3 ) тело

Выражение 1 обычно используется для установления начального значения переменных, управляющих циклом.

Выражение 2 - это выражение, определяющее условие, при котором тело цикла будет выполняться.

Выражение 3 определяет изменение переменных, управляющих циклом после каждого выполнения тела цикла.

Схема выполнения оператора for:

1. Вычисляется выражение 1.

2. Вычисляется выражение 2.

3. Если значения выражения 2 отлично от нуля (истина), выполняется тело цикла, вычисляется выражение 3 и осуществляется переход к пункту 2, если выражение 2 равно нулю (ложь), то управление передается на оператор, следующий за оператором for.

Пример: int main() { inti,b; for (i=1; i<10; i++) b=i*i; return 0; }

В этом примере вычисляются квадраты чисел от 1 до 9.

Оператор цикла while называется циклом с предусловием.

Формат: while (выражение) тело;

В качестве выражения допускается использовать любое выражение языка Си, а в качестве тела любой оператор, в том числе пустой или составной. Схема выполнения оператора while следующая: 1. Вычисляется выражение. 2. Если выражение ложно, то выполнение оператора while заканчивается и выполняется следующий по порядку оператор. Если выражение истинно, то выполняется тело оператора while. 3. Процесс повторяется с пункта 1.

Так же как и при выполнении оператора for, в операторе while вначале происходит проверка условия. Поэтому оператор while удобно использовать в ситуациях, когда тело оператора не всегда нужно выполнять.

Оператор цикла dowhile называется оператором цикла с постусловием и используется в тех случаях, когда необходимо выполнить тело цикла хотя бы один раз. Формат оператора имеет следующий вид: do тело while (выражение).

Схема выполнения оператора dowhile: 1. Выполняется тело цикла (которое может быть составным оператором). 2. Вычисляется выражение. 3. Если выражение ложно, то выполнение оператора dowhile заканчивается и выполняется следующий по порядку оператор. Если выражение истинно, то выполнение оператора продолжается с пункта 1. Чтобы прервать выполнение цикла до того, как условие станет ложным, можно использовать оператор break.

Операторы while и dowhile могут быть вложенными.

Пример:

inti,j,k;

...i=0; j=0; k=0;

do { i++; j--;

while (a[k] <i) k++; while (i<30 && j<-30);

16 Функция пользователя СИ – группа команд, имеющая уникальное имя, объявлена в заголовке файлов или в основной программе, а так же описанная в модуле или в основной программе.

Перед вызовом функции её нужно объявить, для этого:

<тип функции><название функции> (<список формальных параметров>);

Тип функции – тип возвращаемого значения, если функция не возвращает результат, то она объявляется типом void .

В списке формальных параметров для каждой переменной нужно отдельно указывать тип. Указывать имена переменных не обязательно (например, (float, float, int);). Переменным при их перечислении можно сразу присваивать исходные значения.

Описание функции пользователя

<тип функции><название функции>(<список формальных параметров>)

{

<тело функции>;

Return (<название переменной, значение которой нужно вернуть>):

}

Функцию можно описать и до основной функции, тогда объявлять ее не обязательно

Вызов функции

<название функции>(<список фактических параметров>);

Типы фактических переменных должны совпадать с типами формальных переменных.

Прототипы функции

Так же можно использовать прототип функции, это объявление функции без их определения. Т.е. перед главной функцией идет объявление функции, в главной функции ее использование, а после главной функции само описание.

17 Файл СИ – совокупность данных, которые размещены на внешнем носителе.

Функции, которые используются для работы с файлом находятся в библиотеке fstream.h. Для обработки файла нужно его открыть, выполнить необходимые действия и закрыть.

Считывание данных из файла. Существует два способа:

Ifstream <название файловой переменной>(<внешнее название>, признак 1|признак 2);

<название файловой переменной>.open (<внешнее название>);

Или

Ifstream <название файловой переменной>;

<название файловой переменной>.open (<внешнее название>);

Если признаки не будут задаваться, то различий нет.

Данная команда подключает поток выведения данных из файла и устанавливает связь между файловой переменной и файлом. Название файла нужно записывать в кавычках .

Выведение данных из файла осуществляется командой

<название файловой переменной> >> <переменная> ;

Данная команда выведен данные до конца строки либо до первого пробела, что бы вывести больше данных нужно повторить данную команду нужное количество раз.

После обработки файл нужно закрыть, это делает следующая команда:

<название файловой переменной>.close ()

Определить конец файла можно командой – eof(). Записывается : <название файловой переменной>.eof ()

Запись данных в файл

Открыть файл для записи можно так:

Ofstream <название файловой переменной> (<внешнее название>, признак 1 |признак 2 );

<название файловой переменной>.open (<внешнее название>);

Или

Ofstream <название файловой переменной>;

<название файловой переменной>.open (<внешнее название>);

Действие команды – подключаем поток введения в файл и настройка связи между файловой переменной и файлом.

Что бы занести данные в файл выполнить команду:

<название файловой переменной> << <переменная>

Если требуется занести несколько переменных, то нужно повторить команду.

Признаки, использующиеся для изменения прав доступа к файлу:

Ios::in открывает файл для чтения из него информации, содержание сохраняется

Ios::out открывает файл для записи информации, если файла нет, то будет создан новый файл

Ios::app открывает файл для дозаписи информации, данные будут добавлены в конец файла

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]