Главная » Просмотр файлов » Лекция 1. Основы алгоритмизации и программирования на Си

Лекция 1. Основы алгоритмизации и программирования на Си (1153708), страница 3

Файл №1153708 Лекция 1. Основы алгоритмизации и программирования на Си (Электронные лекции) 3 страницаЛекция 1. Основы алгоритмизации и программирования на Си (1153708) страница 32020-08-21СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 3)

В первую очередь выполняются операции ранга 1, во вторую ранга 2, и т. д. Операции одного ранга выполняются последовательно,направление выполнения операций (ассоциативность) - справа налево() или слева направо () - указано в третьем столбце. Если один итот же знак операции встречается в таблице дважды, то первое егопоявление (с меньшим рангом) соответствует унарной операции, авторое - бинарной.11Таблица 3. Операции Си.Ранг Обозначение Название операцииоперации1() []круглые и квадратные скобки->косвенный выбор компонентаструктурированного объектапрямой выбор компонента структу.рированного объекта (см. п.3.2)2!логическое отрицаниепоразрядное инвертирование внутреннего двоичного кодаунарный плюс и минус+ инкремент (увеличение на 1)++декремент (уменьшение на 1)-взятие адреса&взятие содержимого (см.

п.1.5.3)*приведение к типу(тип)определение размера в байтахsizeof3* /%4+ -5<< >>6< <= > >=7==!=Ассоциативностьарифметическое умножение и делениеполучение остатка от делениянацелоарифметические сложение и вычитаниепоразрядного сдвигаотношения (меньше, меньше илиравно и т. д.)отношения (равно, неравно)8&Поразрядная конъюнкция9^Поразрядное исключающее "или"10|Поразрядная дизъюнкция11&&конъюнкция (логическое "и")12Ранг Обозначение Название операцииоперации12||дизъюнкция (логическое "или")13?14=операция=15,Ассоциативностьусловная операцияприсваиваниесоставное присваиваниеоперация "запятая"Рассмотрим особенности некоторых операций.

Заметим, чтоскобки в языке Си в ряде случаев рассматриваются как бинарные операции. Так, например, например, квадратные скобки при указании индексов элемента массива и круглые скобки при обращении к функции(подробнее с этим можно ознакомиться в [2], с.42).Унарная операция инкремент (увеличение на единицу или автоувеличение) имеет две формы: префиксную (++имя_переменной) ипостфиксную (имя_переменной++). В случае префиксной формы увеличение значения операнда происходит до его использования, в случае постфиксной - после. Для лучшего понимания различия этих формполезно проанализировать 2 фрагмента программы:int i=1,c;1-й фрагмент2-й фрагментс=2*i++;/*”=” – знак присваивания*/с=2*++i;/*в результате i равно 2, с равно 2*//* i равно 2, с равно 4*/Аналогично существуют префиксная и постфиксная формы декремента.

Заметим, что операции инкремент и декремент могут использоваться не только в выражениях, но и как самостоятельный оператор, увеличивающий или уменьшающий переменную на единицу.Операция sizeof вычисляет размер в байтах для типа операнда.Она имеет две формы: sizeof (выражение) и sizeof (тип). Она использует в том случае, когда нужно построить алгоритм, обрабатывающийвыражения различных типов.Операция (тип) выражение осуществляет приведение выражения к типу, указанному в скобках.Заметим, что Си допускает использование в выражении операндов различных типов (в отличии, например, от Паскаля, где строго от-13слеживается соответствие типов операндов и операций). Однако, длятого, чтобы воспользоваться такой свободой, надо хорошо знать правила автоматического преобразования типов и иметь некоторый опытпрограммирования.

Начинающим программистам рекомендуется безкрайней необходимости не использовать операнды различных типов впределах одного выражения и использовать для явного преобразования типов операцию (тип).Если говорить о числовых типах, то в Си строго выдерживаетсяправило: если в выражении все операнды одного типа, то и результатимеет тот же тип. Поэтому при делении двух целых операндов получается целый результат. Например, значением выражения 5/2 будет 2 (ане 2.5). Для получения вещественного результата надо использоватьвещественные операнды (5.0/2.0).В Си в качестве знака присваивания используется символ "=".Этот символ часто называется простым присваиванием в отличие отприсваивания составного (см., например, [2]) Операция присваиванияимеетвид:имя переменной=выражение;Операция предполагает вычисление значения выражения, стоящего справа от знака присваивания, и запись его в ячейку, соответствующую переменной, имя которой стоит слева от этого знака.

Результатом операции присваивания считается новое значение переменной. Чаще всего операция присваивания используется как самостоятельный оператор, обеспечивающий запись в ячейку новогозначения. Именно как оператор (и только как оператор) присваиваниесуществует в большинстве алгоритмических языков.В Си, однако, присваивание является не только оператором, но иоперацией (см. таблицу 3, операции ранга 14). Рассмотрение его какоперации делает допустимой в отличии, например, от Паскаля цепочку: a=b=c=d=0, в результате которой все переменные, начиная с самойправой, получают значение 0 (или, конечно, любое другое значение).Заметим, что в Си значение локальной (т.е. описанной в некоторой функции, в том числе и main) переменной считается неопределенным (фактически в ней хранится некоторое "мусорное" значение), еслиэто значение не задано каким-либо способом (присваиванием, вводом,14или инициализацией при описании).

В Си существуют также статические переменные (см. п.2.4), значения которых при описании обнуляются (если, только, конечно, они не инициализируются другими значениями).1.3. Операторы преобразования данных1.3.1. Общие положенияК операторам преобразования данных относятся: оператор присваивания, с помощью которого осуществляются все преобразованиявнутренних данных, операторы ввода и вывода.Оператор присваивания был рассмотрен в п.1.2.5, когда рассматривали операцию присваивания.

В этой части пособия будут рассмотрены операторы вывода и ввода.Под вводом понимается процесс передачи данных с внешнихустройств в память компьютера, под выводом - передачи данных изпамяти компьютера на внешние устройства. Ввод и вывод являютсяважнейшими операторами, так как с их помощью осуществляется общение пользователя с программой. Без операторов вывода программавообще не имеет права на существование: если она ничего не сообщает пользователю, то зачем она нужна?Вводу подлежат исходные данные. Это переменные, начальныезначения которых меняются от одного выполнения алгоритма к другому. Выводятся, естественно, результаты программы. Соответствующие данные называются выходными данными.

Все остальные данныеназываются промежуточными. Разделение данных на исходные, выходные и промежуточные называется классификацией данных пофункциональному признаку. Определение, какие данные будут исходными, а какие выходными, является первым и важнейшим этапом разработки алгоритма и программы.В стандарте языка Си отсутствуют средства ввода-вывода. Этиоперации реализуются с помощью функций, находящихся в библиотеках языка Си, поставляемых в составе конкретной системы программирования. В примере рис. 1 инструкция #include <stdio.h> нужна дляподключения одной из библиотек ввода-вывода системы программирования Borland C++ 3.1.15Последовательность значений на входном (или выходном)устройстве в Си принято называть потоком.В этом разделе пособия мы рассмотрим только операторы вводас клавиатуры и вывода на экран.

Работа с внешней памятью (файламина магнитных дисках) будет рассмотрена в третьей части пособия. Извсего множества операторов ввода-вывода языка Си рассмотрим операторы форматного ввода-вывода.Начинающим с нуля, возможно, будет трудно воспринимать этотматериал. Тогда стоит воспользоваться более простыми5 операторамиввода-вывода, относящимися, однако, не к языку Си, а его расширению Си++. Чтобы использовать их, надо в начале программы поместить директиву препроцессора#include <iostream.h>Эти операторы в простейшем случае имеют вид:cin >> имя_переменной;cout << выражение;здесь cin - стандартный поток ввода (обычно ввод с клавиатурыкомпьютера), cout - стандартный поток вывода (обычно вывод наэкран монитора), >> и << - операции "взять из" и "передать в"; легковидеть, что направление стрелок указывает направление передачиданных.Применяя эти операторы, простейшую программу рис. 1 можнопереписать следующим образом:#include <iostream.h>void main(){int a,b,c;/*описание трех целых переменных*/cout << "Введите a и b\n"; /*приглашение к вводу a и b*//* \n - переход к следующей строке экрана - см.

Характеристики

Тип файла
PDF-файл
Размер
1002,91 Kb
Тип материала
Высшее учебное заведение

Список файлов лекций

Свежие статьи
Популярно сейчас
Зачем заказывать выполнение своего задания, если оно уже было выполнено много много раз? Его можно просто купить или даже скачать бесплатно на СтудИзбе. Найдите нужный учебный материал у нас!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6353
Авторов
на СтудИзбе
311
Средний доход
с одного платного файла
Обучение Подробнее