Организация стока поверхностных вод: Наибольшее количество влаги на земном шаре испаряется с поверхности морей и океанов (88‰)...
Состав сооружений: решетки и песколовки: Решетки – это первое устройство в схеме очистных сооружений. Они представляют...
Топ:
Процедура выполнения команд. Рабочий цикл процессора: Функционирование процессора в основном состоит из повторяющихся рабочих циклов, каждый из которых соответствует...
Техника безопасности при работе на пароконвектомате: К обслуживанию пароконвектомата допускаются лица, прошедшие технический минимум по эксплуатации оборудования...
Проблема типологии научных революций: Глобальные научные революции и типы научной рациональности...
Интересное:
Лечение прогрессирующих форм рака: Одним из наиболее важных достижений экспериментальной химиотерапии опухолей, начатой в 60-х и реализованной в 70-х годах, является...
Распространение рака на другие отдаленные от желудка органы: Характерных симптомов рака желудка не существует. Выраженные симптомы появляются, когда опухоль...
Искусственное повышение поверхности территории: Варианты искусственного повышения поверхности территории необходимо выбирать на основе анализа следующих характеристик защищаемой территории...
Дисциплины:
2017-06-19 | 274 |
5.00
из
|
Заказать работу |
|
|
Их можно производить с любыми целыми числами, переменными и константами. Их нельзя использовать с переменными типа float, double, long double.Поразрядными операциями являются:
& AND (и),
| OR (или),
^ XOR,
~ NOT (не),
<< сдвиг влево,
>> сдвиг вправо.
Операции AND, OR, NOT, XOR полностью соответствуют аналогичным логическим операциям. Поразрядные операции позволяют, в частности, обеспечить доступ к любому биту информации. Часто эти операции используют в драйверах устройств, программах, связанных с принтером, модемом и другими устройствами.
При выполнении поразрядной операции над двумя переменными, например типа char, операция производится над каждой парой соответствующих разрядов. Отличие поразрядных операций от логических и операций отношения состоит в том, что логическая операция и операция отношения всегда дают в результате 0 или 1. Для поразрядных операций это не так.
Приведем следующий пример:
Если надо установить значение старшего разряда переменной типа char равным нулю, то удобно применить операцию &(and).
ch = ch & 127;
Пусть ch = ’A’
‘A’ в двоичном коде: 11000001;
127 в двоичном коде: 01111111
‘A’ & 127: 01000001.
Если мы хотим установить для старшего разряда 1, удобна операция OR (или)
ch = ch | 128
‘A’ 11000001
127 10000000
‘A’ | 128 11000001.
Поразрядные операции удобны для хранения в сжатом виде информации о состоянии on/off (вкл/выкл). В одном байте можно хранить 8 таких флагов.
Операция сдвига. Форма представления:
value >> число позиций; value<< число позиций.
Пример. Двоичное представление числа х = 9: 00001001.
Тогда x = 9<<3: 01001000,
x = 9>>3: 00000001.
Пример. Пусть unsigned char x = 255 в двоичном виде 11111111.
Значения выражения сдвига будут иметь вид:
Х = х<<3: 11111000
Х = х>>3: 00011111
|
X = x>>5: 00000111.
Управляющие конструкции языка Си
Организация ветвящихся процессов: оператор if
Программа - это описание средствами языка программирования алгоритма решения задачи. Любой алгоритм можно разделить на следования, ветвления и циклы. В простейшем случае имеют место только следования.
Если имеет место проверка условий и выбор одного из возможных направлений продолжения вычислений, то имеет место ветвление (Рис.2.1).
Да Нет
Рис.3.1
Ветвления в программах осуществляются с помощью оператора условия if. Этот оператор используется в двух формах:
а) в полной форме:
if (выражение) (if - если, else - иначе)
оператор_1;
Else
оператор_2;
Правило выполнения: если выражение в скобках (здесь некоторое условие) не равно нулю, т.е. “истина”, то выполняется оператор_1. В противном случае выполняется оператор_2.
б) в сокращенной форме:
if (выражение)
оператор_1;
Если выражение в скобках (…) не равно нулю, то выполняется оператор_1, в противном случае управление передается следующему оператору программы.
Операторы_1 и _2 могут быть как простыми, так и составными. В последнем случае группа операторов должна заключаться в фигурные скобки:
{
оператор_1;
оператор_2;
…………
оператор_n;
}.
Каждый оператор внутри скобок должен заканчиваться “;”.
Пример 3.1:
# include <conio.h>
void main (void)
{
clrscr ();
float a, b, rez;
printf (“Введите значение а и b: “);
scanf (“%f %f “, &a, &b);
if (b= =0)
printf (“Отношение a / b не определено \n “);
Else
{
rez = a / b;
printf (“Отношение a / b равно %6, 3f\n”, rez);
}
getch();
}
Еще один фрагмент:
.........
if ((ch = getch())= =’g’)
puts (“Конец работы \n”);
Else
puts (“Работа продолжается \n”);
Выражение после слова if может состоять из нескольких операций присваивания, разделяемых запятыми. Значение всего выражения будет определяться последним присваиванием. Это справедливо для любого составного выражения. Например:
|
if (с=сh,ch=getch()).
|
|
Общие условия выбора системы дренажа: Система дренажа выбирается в зависимости от характера защищаемого...
Адаптации растений и животных к жизни в горах: Большое значение для жизни организмов в горах имеют степень расчленения, крутизна и экспозиционные различия склонов...
Двойное оплодотворение у цветковых растений: Оплодотворение - это процесс слияния мужской и женской половых клеток с образованием зиготы...
Опора деревянной одностоечной и способы укрепление угловых опор: Опоры ВЛ - конструкции, предназначенные для поддерживания проводов на необходимой высоте над землей, водой...
© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!