АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

Операторы языка Си

Читайте также:
  1. XIV. ОПЕРАТОРЫ ЯЗЫКА ПАСКАЛЬ
  2. Алфавит языка Паскаль
  3. АНГЛИЙСКОГО ЯЗЫКА
  4. Арифметические операции языка С
  5. Базовые понятия языка Пролог
  6. Билет 20. Пушкинская реформа языка художественной литературы.
  7. Богатство языка
  8. В прошлом году российские операторы сотовой связи получили лицензии на предоставление услуг связи третьего поколения. Но это- лишь первый шаг к построению мобильной сети 3G.
  9. Возможности языка JavaScript
  10. Возникновение, эволюция и развитие языка
  11. Вычислительные операторы
  12. Г) ИСПОЛЬЗОВАНИЕ МОРФОЛОГИЧЕСКИХ СРЕДСТВ ЯЗЫКА

Оператор присваивания имеет вид: V=A;

y=5*x+sqrt(7*x+3);

Любой оператор присваивания, заключенный в круглые скобки, является выражением с определенным значением, которое получается в результате этого присваивания.

Например: выражение вида ((S=13+12)<=30) будет иметь значение истина.

2. Составные операторы (блоки). Составные операторы представляют собой два или более операторов, объединенных с помощью фигурных скобок; он называется также ''блоком''. Составные операторы используются в условном операторе, операторах цикла.

Основная литература: 1осн[63-77], 2осн[23-133]

Дополнительная литература: 6доп[84-106 ], 7доп[4-7 ]

Контрольные вопросы:

1. Назовите тип данных для работы с беззнаковыми целыми числами?

2. Какие существуют формы записи операций увеличения и уменьшения и чем они отличаются?

3. Назовите директиву препроцессора для определения символьных и строковых констант?

4. Какие спецификации формата являются эквивалентными при их использовании в функции scanf?

5. В каком случае происходит «повышение» типа?

 

Тема 2. Управляющие структуры. Выбор вариантов. Структура выбора If, If – Else, логические операции, операция условия, множественный выбор.

Язык Си предоставляет три типа структур выбора. В структуре выбора if некоторое действие либо выполняется (выбирается), если условие истинно, либо пропускается, если это условие ложно. В структуре выбора if/else некоторое действие выполняется, если условие истинно, и выполняется другое действие, если это условие ложно. В структуре выбора switch выполняется одно из набора действий в зависимости от значения некоторого выражения.

Структура if называется структурой с единичным выбором, поскольку в ней выбирается или игнорируется одно действие. Структура if/else называется структурой с двойным выбором, поскольку в ней выбор происходит между двумя альтернативными действиями. Структура switch называется структурой с множественным выбором, поскольку в ней выбор происходит из нескольких различных действиями.

Общий вид структуры выбора if:

if (выражение) оператор1;

Общий вид структуры выбора if/else:

if (выражение) оператор1;

else оператор2;

Если выражение истинно (отлично от нуля), то выполняется оператор 1, в противном случае оператор 2.

В языке Си предусмотрена условная операция (?:), которая тесно связана со структурой if/else. Для нее необходимо три операнда. Операнды вместе с условной операцией образуют условное выражение. Первый операнд является условием, второй операнд значением для всего условного выражения, если условие истинно, и третий операнд значением для всего условного выражения, если условие ложно. Например,

x>y? printf(“max=%d\n”, x): printf(“max=%d\n”, y);

Вложенные структуры if/else служат для проверки составных условий, при этом одни структуры if/else помещаются внутри других структур if/else.

Приведем следующую форму записи:

if (выраж. 1)

оператор 1;

else if (выраж. 2)

оператор 2;

else

оператор 3

Если выражение 1 истинно, выполняется оператор 1. Если выражение 1 ложно, но выражение 2 истинно, выполняется оператор 2. В случае, когда оба выражения ложны, выполняется оператор 3.

Логические операции. При объединении двух или более условных выражений используются логические операции. В языке Си имеются три логические операции: & & (и),!! (или),! (не).

1. fl1 && fl2 истинно в том и только в том случае, когда оба выражения fl1 или fl2 истинны.

2. fl1 || fl2 истинно в том и только в том случае, когда оба выражения fl1 или fl2 истинно или оба истинны.

3.!fl1 истинно, если выражение fl1 ложно, и наоборот.

Пример: 15>12 && 8>10 - ложно (истинно таким образом одно подвыражение)

15>12 | | 8>10 – истинно (по крайней мере одно подвыражение истинно)

! (8>10) истинно

Операция! имеет очень высокий приоритет, только круглые скобки имеют более высокий приоритет. Приоритет операции && выше, чем операции ||, а обе эти операции имеют более низкий приоритет, чем операция присваивания.

При использовании операции && и || необходимо отметить следующее: выполнение этих операций прекращается, как только становится ясно, будет ли результат иметь значение истина или ложь. Предположим, что имеется выражение вида: fl1 && fl2.

Если fl1 – ложь, значит и все выражение ложь, таким образом, fl2 не будет вычисляться.

Аналогично, если мы имеем выражение вида fl1 || fl2,

То fl2 не будет вычисляться, если fl1 – верно.

В следующей программе показан пример использования структуры выбора if/else с двойным выбором.

// Вычисление стоимости покупки с учетом скидки

#include <stdio.h>

#include <conio.h>

void main()

{

float sum; /* сумма покупки */

printf(“\nВычисление стоимости покупки с учетом ”);

printf(“скидки\n”);

printf(“Введите стоимость покупки ->”);

scanf(“%f”, &sum);

if (sum<1000) printf(“Скидка не предоставляется.\n”);

else { printf(“Вам предоставляется скидка ”);

if (sum>3000) { printf(“5%\n”);

sum = 0.95 * sum; }

else { printf(“3%\n”);

sum = 0.97 * sum; };

printf(“Сумма с учетом скидки %.2f тг\n”, sum); }

printf(“\nДля завершения нажмите <Enter>”);

getch(); }

Результат программы:

Вычисление стоимости покупки с учетом скидки

Введите стоимость покупки -> 2250

Вам предоставляется скидка 3%.

Стоимость покупки с учетом скидки: 2182.50 тг.


1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 |

Поиск по сайту:



Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.007 сек.)