Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Yazyki_programmirovania.docx
Скачиваний:
3
Добавлен:
10.07.2019
Размер:
107.5 Кб
Скачать

Void main ();

float F1 (float x);

//глобальное описание переменных, которые будут использованы во всей программе, если не будут переобъявлены.

Int n;

float A[10];

//задание (определение функции) программы

Voidmain ()

{………………}

float F1(float x);

{return 2*x;

}

Операторы управления вычислительным процессом

  1. Оператор – выражение (z=2*x+1, a++, y=F1(x), F2(x,y);

  2. Оператор без условного перехода (gotoметка) – переход на оператор с меткой.

  3. Оператор условного перехода if (выражение) {операторы1;} else {операторы2;}. Если результат выражения не равен нулю то выполняется оператор 1 иначе оператор 2

  4. Если в качестве операторы1 или операторы2 записывается один оператор, то фигурные скобки можно опустить. Можно использовать короткую запись без else. if (k) {z=1; w=F2(x,y);}

If (x>0 && y>0) W=x-y;

else if (x<0 && y<0) W=x+y;

elseW=10;

Информация о ЛР 1.

Вычисление Функции с использованием операции условия, использование тестовых возможностей. Использование форматного ввода-вывода.

<alt>+F9 – компиляция

<ctrl>+F9 – компиляция с выполнением

<alt>+F5 просмотр результата

Текстовые возможности C задаются функциями которые приведены в заголовочном файле conio.h

clrscr(); - очистка экрана

textbackground(цвет); - цвет фона

textcolor(цвет символа); - цвет текста

window(x1,y1,x2,y2); - размеры окна

cprintf(…);

cscanf(…);

#include <conio.h>

Void main ()

{floatx,w;

Window(1,1,80,25);

textbackground(3);

clrscr();

window(5,4,20,8);

textbackground(2);

textcolor(4);

clrscr();

cprintf(“\n Enter X= “);

cscanf(“%f”, &x);

w=x<1 ? (x<-2 ? 1 : 2) : (x>5 ? 4 : 3);

window(5,12,20,16);

textbackground(2);

clrscr();

cprintf(“\n w=%2.0f”, w);

getch(); //ожидает нажатия клавиши

}

if (x<1) { if (x<-2) w=1; else w=2; }

else { if (x>5) w=4l

else w=3;}

Форматный ввод-вывод

Вывод обеспечивается функцией printf(…)

Printf(“Управляющая строка”, список вывода);

Пример функции с переменным числом переменных

Где список вывода может состоять из имен переменных, констант и выражений. Управляющая строка для вывода содержит символы задающие поясняющий текст, управляющие символы и спецификаций преобразования. Каждая из которых определяет вывод на экран значения очередного аргумента из списка вывода. Спецификация преобразования начинается со знака % и оканчивается типом преобразования.

%[флаги][ширина][.точность][модификаторы]тип_преобразования

Где, флаги, если 0 стоит в качестве флага, то происходит печать не значащих нулей. Если – то производится выравнивание влево числа в своём поле вывода (по умолчанию принято выравнивание вправо). Если + то задаёт вывод знака числа. Если # вывод идентификатора системы счисления (если 0 то восьмеричная, если 0Х то шестнадцатиричная).

Ширина определяет минимальную ширину поля вывода, для размещения значения, если её не достаточно, то выводится столько цифр сколько есть. Если ширина поля больше чем нужно то лишние заполняются пробелами слева (без флага -).

Точность определяет количество знаков после точки для вещественных данных. Точность может быть равна 0.

Модификаторы используются для составных типов. L – longdouble, L – longint, h – short, Uunsigned.

%lud – long unsigned int

Типпреобразования.

cдляchar.

d, i – int.

eилиE, fилиF, gилиG – float, double.

Следующие типы преобразования

Oили oдля восьмеричных

X, x– для шестнадцатеричных

U,u – 10ричные

P,p – для вывода указателя

S – для строк

Для каждого элемента списка вывода нужна своя спецификация преобразования.

Ввод обеспечивается функцией scanf.

Имеет тип int.

Где управляющая строка для ввода не должна содержать поясняющего текста. Может содержать управляющие символы и спецификации преобразования. Список ввода представляет собой перечень имен переменных со знаком &.

intk;

floatx,y;

scanf(“%d %f %f”,&k,&x,&y);

Операторы цикла

  1. While (выражение) {тело цикла}. Выполнение пока выражение не равно 0 выполняется тело цикла, а когда станет равно нулю цикл завершится.

while (n<11)

{y+=(float) n/(n+1);

n++; }

  1. do while

do

{тело цикла}

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

Если выражение не равно 0, то повторяется выполнение тела цикла.

do

{y+=(float) n/(n+1);

n++; }

while (n<11)

  1. for

for (выражение1; выражение2; выражение3;)

{тело цикла}

Где выражение1 – определяет начальные значения переменных в т.ч. и переменные цикла. Задание начальных значений отделяется друг от друга запятой.

Выражрение2 определяет условие продолжение цикла.

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

Изменения перечисляются через точку с запятой.

Выполняется выражение 1 т.е. задаются начальные значения переменным.

Определяется значение выражения 2, если выражение 2 не равно 0 то выполняется тело цикла. Затем выполняется выражение 3 т.е. происходит изменение переменных. Затем опять вычисляется выражение 2, если оно не равно 0 то выполняется тело цикла и выражение 3 до тех пор пока выражение 2 не будет равно 0.

Тип управляющей переменной цикла может быть любой.

for (n=1; n<11; n++)

{y+=(float)n/(n+1);}

for (y=0, n=1; n<11; n++)

y+=(float)n/(n+1);

for (y=0, n=1; n<11; y+=(float)n/(n+1),n++);

Оператор forможет использоваться как первые три оператора.

Модификации оператора for:

for( ; ; )

{тело цикла} – бесконечный цикл.

for ( ; выражение2; выражение3)

{тело цикла}

for ( ; выражение2; );

{тело цикла}

Нарисовать блок схемы выполнения операторов цикла.

Информация к заданию ВП №1.

Для 4-х значного целого числа проверить больше ли сумма его цифр 10.

#include <stdio.h>

#include <conio.h>

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