Разделы презентаций


Основы алгоритмизации и программирования

Содержание

ЛитератураВ.А.Цикоза, Т.Г.Чурина. Методическое пособие к курсу “Методы программирования” (часть первая). Новосибирск: ВКИ НГУ, 1999.Т.В. Нестеренко. Методическое пособие к курсу «Методы программирования» (часть 1) Лабораторные работы. Новосибриск, 2008Вирт Н. Алгоритмы и структуры

Слайды и текст этой презентации

Слайд 1Основы алгоритмизации и программирования

Основы алгоритмизации и программирования

Слайд 2Литература
В.А.Цикоза, Т.Г.Чурина. Методическое пособие к курсу “Методы программирования” (часть первая).

Новосибирск: ВКИ НГУ, 1999.
Т.В. Нестеренко. Методическое пособие к курсу «Методы

программирования» (часть 1) Лабораторные работы. Новосибриск, 2008
Вирт Н. Алгоритмы и структуры данных. М.: Мир, 1989.–360с.
А.Ахо, Д.Хопкрофт, Д. Ульман. Структуры данных и алгоритмы. М.: Издательский дом “Вильямс”, 2000 – 384 с..
Хэзфилд Р., Кирби Л. Искусство программирования на C: Фундаментальные алгоритмы, структуры данных и примеры приложений (пер. с англ.) {Энциклопедия программиста} К: ДиаСофт`01- 736 с.
Подбельский В.В., Фомин С.С. Программирование на языке Си: учеб.пособие. –М.: Финансы и статистика, 2007.-600с.
Павловская Т.А. С/С++. Программирование на языке высокого уровня – СПб.: Питер, 2005.- 461 с.
ЛитератураВ.А.Цикоза, Т.Г.Чурина. Методическое пособие к курсу “Методы программирования” (часть первая). Новосибирск: ВКИ НГУ, 1999.Т.В. Нестеренко. Методическое пособие

Слайд 3 Лекция 1
Введение в язык Си


Лекция 1 Введение в язык Си

Слайд 4ANSI C
— стандарт языка Си, опубликованный Американским национальным институтом стандартов

(ANSI).
Следование этому стандарту помогает создавать легко портируемые программы.

ANSI C— стандарт языка Си, опубликованный Американским национальным институтом стандартов (ANSI). Следование этому стандарту помогает создавать легко

Слайд 5Тип данных
Тип данных определяет
множество значений,
набор операций, которые можно

применять к таким значениям,
возможно, способ реализации хранения значений и

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

Слайд 6Типы данных: простые и структурированные.
Простые - это целые и

вещественные числа, символы (относятся к целым), перечислимые и
указатели (адреса

объектов в памяти).
Целые, символы и перечислимые – порядковые типы.

Структурированные данные  это массивы и структуры.
Типы данных: простые и структурированные. Простые - это целые и вещественные числа, символы (относятся к целым), перечислимые

Слайд 7В языке Cи различают понятия "тип данных" и "модификатор типа"

(со знаком или без знака).

Целое со знаком будет

иметь как положительные, так и отрицательные значения, а целое без знака  только положительные значения.
В языке Cи различают понятия

Слайд 8Переменные
Все переменные до их использования должны быть определены (объявлены). При

этом задается тип, а затем идет список из одной или

более переменных этого типа, разделенных запятыми.
Например:
int a, b, c;
char x, y;
ПеременныеВсе переменные до их использования должны быть определены (объявлены). При этом задается тип, а затем идет список

Слайд 9Базовые типы в Си
В языке Си можно выделить пять базовых

типов, которые задаются следующими ключевыми словами:
int - целый;
char

- символьный;

float - вещественный;
double – вещ. двойной точности;

void  не имеющий значения.


целые

вещественные

Базовые типы в СиВ языке Си можно выделить пять базовых типов, которые задаются следующими ключевыми словами: int

Слайд 10Характеристика базовых типов
Переменная типа char обычно имеет размер 1 байт,

ее значениями являются различные символы из кодовой таблицы, например: 'ф',

':', 'j' (при записи в программе они заключаются в одинарные кавычки).
Размер переменной типа int в стандарте языка Си не определен. В большинстве систем программирования размер переменной типа int соответствует размеру целого машинного слова. Например, в компиляторах для 16-разрядных процессоров переменная типа int имеет размер 2 байта. В этом случае знаковые значения этой переменной могут лежать в диапазоне от -32768 до 32767. В современных компьютерах – 4 и 8 байт.





Характеристика базовых типовПеременная типа char обычно имеет размер 1 байт, ее значениями являются различные символы из кодовой

Слайд 11Ключевое слово float позволяет определить переменные вещественного типа. Их значения

имеют дробную часть, отделяемую точкой, например: -5.6, 31.28 и т.п.


Вещественные числа могут быть записаны также в форме с плавающей точкой, например: 1.09e+4.
Число перед символом "е" называется мантиссой, а после "е"  порядком или экспонентой. Переменная типа float занимает в памяти 4 байта. Она может принимать значения в диапазоне
от 3.4е-38 до 3.4e+38.

Ключевое слово float позволяет определить переменные вещественного типа. Их значения имеют дробную часть, отделяемую точкой, например: -5.6,

Слайд 12Ключевое слово double позволяет определить вещественную переменную двойной точности. Она

занимает в памяти в два раза больше места, чем переменная

типа float. Переменная типа double может принимать значения в диапазоне от 1.7e-308 до 1.7e+308.
Ключевое слово enum позволяет определить переменную перечислимого типа.

Ключевое слово void используется для нейтрализации значения объекта, например, для объявления функции, не возвращающей никаких значений.

Ключевое слово double позволяет определить вещественную переменную двойной точности. Она занимает в памяти в два раза больше

Слайд 13Перечислимый тип
Перечислимый тип определяется как набор идентификаторов, с
точки зрения языка

играющих ту же роль, что и обычные
именованные константы, но связанные

с этим типом. Переменная,
которая может принимать значение из некоторого списка значений,
называется переменной перечислимого типа или перечислением.
enum week {
Monday, /* 0 (= 6)*/
Tuesday, /* 1 */
Wednesday, /* 2 */
Thursday,
Friday,
Saturday,
Sunday
} rab_ned ;
rab_ned = Sunday;
Перечислимый типПеречислимый тип определяется как набор идентификаторов, сточки зрения языка играющих ту же роль, что и обычныеименованные

Слайд 14Модификаторы
Объект некоторого базового типа может быть модифицирован. С этой целью

используются специальные ключевые слова, называемые модификаторами. В стандарте ANSI языка

Си имеются следующие модификаторы типа:
unsigned
signed
short (обычно 2 байта ≤ размер int)
long (≥ размер int)

МодификаторыОбъект некоторого базового типа может быть модифицирован. С этой целью используются специальные ключевые слова, называемые модификаторами. В

Слайд 15Модификаторы записываются перед спецификаторами типа, например:
unsigned char. Если после

модификатора опущен спецификатор, то компилятор предполагает, что этим спецификатором является

int.
Таким образом, следующие строки:
long а;
long int а;
являются идентичными и определяют объект а как длинный целый.
Модификаторы записываются перед спецификаторами типа, например:	 unsigned char. Если после модификатора опущен спецификатор, то компилятор предполагает, что

Слайд 16Инициализация переменных
Переменные в языке Си могут быть инициализированы при их

определении:
int a = 25, h = 6;


char g = 'Q', k = 'm';
float r = 1.89;
long double n = r*123;

Инициализация переменныхПеременные в языке Си могут быть инициализированы при их определении: int a = 25, h =

Слайд 17Константы
вещественные, например 123.456, 5.61е-4. Они могут снабжаться суффиксом F или

f, например 123.456F, 5.61e-4f;
целые, например 125;
короткие целые, в

конце записи которых добавляется суффикс H или h, например 275h, 344H;
длинные целые, в конце записи которых добавляется суффикс L или l, например 361327L;
беззнаковые, в конце записи которых добавляется суффикс U или u, например 62125U;
восьмеричные, в которых перед первой значащей цифрой записывается 0, например 071;
шестнадцатеричные, в которых перед первой значащей цифрой записывается два символа 0x, например 0x5F;

Константывещественные, например 123.456, 5.61е-4. Они могут снабжаться суффиксом F или f, например 123.456F, 5.61e-4f; целые, например 125;

Слайд 18символьные - единственный символ, заключенный в одинарные кавычки, например 'О',

'2', '.' и т.п. Символы, не имеющие графического представления, можно

записывать, используя специальные комбинации, например \n (код 10), \0 (код 0). Допускается и шестнадцатеричное задание кодов символов, которое представляется в виде: '\х2В', '\хЗ6' и т.п.;
строковые - последовательность из нуля символов и более, заключенная в двойные кавычки, например: "Это строковая константа". Кавычки не входят в строку, а лишь ограничивают ее. Строка представляет собой массив из перечисленных элементов, в конце которого помещается байт с символом '\0'. Таким образом, число байтов, необходимых для хранения строки, на единицу превышает число символов между двойными кавычками;
константное выражение, состоящее из одних констант, которое вычисляется во время трансляции (например: а = 60 + 301);
типа long double, в конце записи которых добавляется буква L или l, например: 1234567.89L.

символьные - единственный символ, заключенный в одинарные кавычки, например 'О', '2', '.' и т.п. Символы, не имеющие

Слайд 19Примеры
const long int k = 25;
const m = -50;

/* подразумевается const int m = -50 */
const n

= 100000; /*подразумевается const long int n = 100000 */

Примерыconst long int k = 25; const m = -50; /* подразумевается const 				int m = -50

Слайд 20Преобразование типов
Если в выражении появляются операнды различных типов, то они

преобразуются к некоторому общему типу, при этом к каждому арифметическому

операнду применяется такая последовательность правил:
Если один из операндов в выражении имеет тип long double, то остальные тоже преобразуются к типу long double.
В противном случае, если один из операндов в выражении имеет тип double, то остальные тоже преобразуются к типу double.
В противном случае, если один из операндов в выражении имеет тип float, то остальные тоже преобразуются к типу float.


Преобразование типов Если в выражении появляются операнды различных типов, то они преобразуются к некоторому общему типу, при

Слайд 21В противном случае, если один из операндов в выражении имеет

тип unsigned long, то остальные тоже преобразуются к типу unsigned

long.
В противном случае, если один из операндов в выражении имеет тип long, то остальные тоже преобразуются к типу long.
В противном случае все операнды преобразуются к типу int.
При этом тип char преобразуется в int со знаком; тип unsigned char в int, у которого старший байт всегда нулевой;
тип signed char в int, у которого в знаковый разряд передается знак из сhar;
тип short в int (знаковый или беззнаковый).

В противном случае, если один из операндов в выражении имеет тип unsigned long, то остальные тоже преобразуются

Слайд 22Приведение типа

В языке Си можно явно указать тип любого выражения.

Для этого используется операция преобразования ("приведения") типа. Она применяется следующим

образом:
(тип) выражение
здесь можно указать любой допустимый в языке Си тип.
Пример:
int a = 30000; float b;
........
b = (float) a/17;


Приведение типаВ языке Си можно явно указать тип любого выражения. Для этого используется операция преобразования (

Слайд 23Приоритеты операций и порядок вычислений
В языке Си операции с высшими

приоритетами вычисляются первыми.
Операции с одинаковым приоритетом выполняются слева направо

в порядке следования.
Приоритеты операций и  порядок вычислений В языке Си операции с высшими приоритетами вычисляются первыми. Операции с

Слайд 24Операции и приоритеты

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

Слайд 26Примеры
b += a; // эквивалентно b = b + a
a

/= b+1; // эквивалентно a = a/(b+1)
f++; // эквивалентно f

= f + 1
max = (d <= b) ? b : d;

а=1;
v = ++a;
// v=2

а=1;
v = a++;
// v=1


Примерыb += a;	// эквивалентно b = b + a a /= b+1; // эквивалентно a = a/(b+1)f++;

Слайд 27Условный оператор
if (Условие)
Действие



if (Условие)
Действие 1
else
Действие 2
Условие
Действие 1
Действие 2
+

Условие
Действие
+

Условный операторif (Условие)	Действиеif (Условие)	Действие 1else 	Действие 2УсловиеДействие 1Действие 2+УсловиеДействие +

Слайд 28Условный оператор, примеры
if (i != n  1)
i++;

if (x >

y)
x = y--;
else
{
y += x;
x = 1;
}

if (!a)
{
x = 1;
y

= 2;
}
else
a = x + y;



Условный оператор, примерыif (i != n  1)	i++;if (x > y)	x = y--;else{	y += x;	x = 1;}if

Слайд 29Операторы цикла
Три вида циклов:

Цикл while (с предусловием)
Цикл do while (с

постусловием)
Цикл for (параметрический)

Операторы циклаТри вида циклов:Цикл while (с предусловием)Цикл do while (с постусловием)Цикл for (параметрический)

Слайд 30Цикл while (с предусловием)
Пример: вычисление 5!

int i, n=5, s=1;
i =

1;
while (i

цикла

+


while (Условие)
Тело цикла

Цикл while (с предусловием)Пример: вычисление 5!int i, n=5, s=1;i = 1;while (i

Слайд 31Цикл do while (с постусловием)
Пример: вычисление 5!

int i, n=5, s=1;
i

= 1;
do
{
s *= i;
i++;
}
while (i

результат

Условие

Тело цикла

+


do
Тело цикла
while (Условие)

Цикл do while (с постусловием)Пример: вычисление 5!int i, n=5, s=1;i = 1;do{	s *= i;	i++;}while (i

Слайд 32Цикл for (параметрический)
Пример: вычисление 5!

int i, n=5, s=1;

for (i =

1;i

цикла

+


for (Выражение_1;Условие; Выражение_2)
Тело цикла

Выражение_1

Выражение_2

Цикл for (параметрический)Пример: вычисление 5!int i, n=5, s=1;for (i = 1;i

Слайд 33Операторы прерывания исполнения цикла
Оператор break прекращает выполнение оператора цикла и

передает управление следующему за этим циклом оператору.
Наиболее естественна следующая форма

тела цикла:
{
операторы
break;
операторы
}

Оператор continue позволяет в любой точке тела цикла прервать текущую итерацию и перейти к проверке условия выполнения следующей итерации.
Операторы прерывания исполнения циклаОператор break прекращает выполнение оператора цикла и передает управление следующему за этим циклом оператору.Наиболее

Слайд 34Схемы работы операторов break и continue
Условие
Тело цикла

break;

continue;

+

Условие
Тело цикла

break;

continue;

+

Схемы работы операторов break и continueУсловиеТело цикла…break;…continue;… +УсловиеТело цикла …break;…continue;…+

Слайд 35Схемы работы операторов break и continue
Условие
Тело цикла

break;

continue;

+

Выражение_1
Выражение_2

Схемы работы операторов break и continueУсловиеТело цикла…break;…continue;… +Выражение_1Выражение_2

Слайд 36Общий вид программы на си
директивы препроцессора
описание глобальных переменных и функций
int

main ()
{
описание объектов
исполняемые операторы
return 0;
}

Общий вид программы на сидирективы препроцессораописание глобальных переменных и функцийint main (){	описание объектов	исполняемые операторы	return 0;}

Слайд 37Пример
#include
int main()
{
int a, b;
float c = 0.0;

scanf(“%d%d”,&a, &b);
if (b!=0)
c

= a / b;
printf(“c = %f”, c);
return 0;
}

Пример#include int main(){	int a, b;	float c = 0.0;	scanf(“%d%d”,&a, &b);	if (b!=0)		c = a / b;	printf(“c = %f”, c);	return

Обратная связь

Если не удалось найти и скачать доклад-презентацию, Вы можете заказать его на нашем сайте. Мы постараемся найти нужный Вам материал и отправим по электронной почте. Не стесняйтесь обращаться к нам, если у вас возникли вопросы или пожелания:

Email: Нажмите что бы посмотреть 

Что такое TheSlide.ru?

Это сайт презентации, докладов, проектов в PowerPoint. Здесь удобно  хранить и делиться своими презентациями с другими пользователями.


Для правообладателей

Яндекс.Метрика