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

23.Структура программы в языке с

Прога на яз. С состоит из ф-ий, описаний, директив препроцессора. 1 из ф-ий должна иметь имя main? Выполнение проги начинается с 1 оператора этой ф-ии.

Пример: директивы препроцессора

Глобальные описания

Int func 1 ()

{

Локальные описания ,исполняемые операторы ф-ии func 1

}

Short func 2 ()

{

Локальные описания ,исполняемые операторы ф-ии func 2

}

Void main ( )

{

Локальные описания ,исполняемые оператором главной ф-ии

}

Обычно ф-ия используется для вычисления некоторого значения, поэтому перед именем ф-ии указывается его тип (если ф-ия не должна показывать результат вычисления указывается тип void ). Тело ф-ии явл.блоком (состовным оператором и следовательно заключается в фигурные скобки). Ф-ии не могут быть вложенными, т.е.в теле одной ф-ии нельзя описать другую. Если какая-то ф-ия уже описана, то её, а также любые ф-ии описанные в стандартных библиотеках яз С можно использовать в теле другой ф-ии, описанной ниже.

Пример: задаются координаты (х, у), точки принадлежащие окружности с центром в начале координат. Найти площадь круга, ограниченного этой окружностью.

# include < stdio.h >

# include < math.h >

Void main ()

{

Float x, y;

Printf (“введите х и у : \ n”);

Scanf (“% f % f” , & x, &y);

Printf (“ площадь =% f\n”, 3.14*pow |sqrt| pow(x, 2)+pow (y,2)),2);

}

24.Базовые конструкции структурного программирования

В th программирования доказано, что прогу для решения задачи любой сложности можно составить только из 3 структур наз.: следованием, ветвлением, и циклом. Их называют базовыми конструкциями структурного программирования. Следованием наз.конструкция, к-я представляет собой последовательное выполнение 2 или более операторов (простых или составных). Ветвление задаёт выполнение либо первого либо второго оператора в зависимости от выполнения какого-либо условия. Цикл задаёт многократное выполнение оператора.

С

Оператор 1

ледование: Ветвление: Цикл:

Оператор 2

Опер 1

Опер 2

оператор

Особенностью базовых конструкций явл .то, что каждая из ни х имеет только 1 вход и 1 выход, поэтому конструкции могут вкладываться друг в друга произвольным образом. Например цикл может содержать следование из 2 ветвлений, каждый из к-ых включает вложенный цикл. Целью использования базовых конструкций явл. Получение программ простой структуры, такую прогу легко читать и модифицировать. В языке С сущ.несколько реализаций базовых конструкций, в частности есть 3 вида циклов и 2 вида ветвлений. Они введены для удобства программирования и в каждом конкретном случае нужно выбирать наиболее подходящее средство.

26.Операторы ветвления. Оператор switch

Оператор switch – переключатель предназначен для разветвления процесса вычисления на несколько направлений. Формат оператора switch:

Switch (выражение)

{

Case константа выражения 1[оператор 1]

Case константа выражения 2[оператор 2]

Case константа выражения 3[оператор 3]

Case константа выражения N[оператор N]

[ default : оператор N+1]

}

Где [ ] обозначают, что их содержимое может отсутствовать. Операторы могут быть как простыми, так и составными, но фигурные скобки не ставятся, следовательно, всё зависит от конкретного оператора. Если оператор составной, то нужно в фигурные скобки.

Структурная схема оператора switch :

Константа выраж. 1

константа выраж.2

К онстанта выраж.3

Константа выраж. N

Комментарии: выполнение оператора начинается с вычисления выражения, к-е должно иметь целочисленный тип. Затем начинается последовательный анализ константных выражений, и управление передается тому оператору, для которого константное выражение совпадает с их вычислением. После этого анализ продолжается, если в итоге ни одного совпадения не произойдёт, то выполняется оператор расположенный после слова default , следовательно, при его отсутствии ничего не делается. Все константные выражения должны иметь разные значения, но быть одного и того же целочисленного типа. Для немедленного выхода из переключателя необходимо после соответствия оператора вставлять слово break, следовательно, этот оператор рекомендуется ставить после каждого водящего в переключатель оператора.

Пример: необходимо вывести название дня недели по его номеру.

# include <stdio.h>

Void main ( )

{

2 вариант :

# include <stdio.h>

Void main ( )

{

Int number;

Scanf (“%d”, & number);

Switch (number)

{

Case 1: case 2: case 3: case 4: case 5;

Printf (“учимся \n”);

Case 6: case 7;

Printf (“отдыхаем \n”); break;

Default: printf (‘ошибка ввода \n”);

}

}

Int number;

Scanf (“%d”, & number);

Switch (number)

{

Case 1: printf (“ понедельник \n”); break;

Case 2: printf (“ вторник \n”); break;

. . . . .

Case 7: printf (“ воскресенье \n”); break;

Default: printf (‘ошибка ввода \n”);

}

}