- •1. Обобщенная схема компьютера.
- •2. Понятие информации и алгоритма. Формы представления алгоритма.
- •3. Блок-схемы разветвляющихся алгоритмов.
- •4. Блок-схемы циклических алгоритмов.
- •6. Операция присваивания. Особенности выполнения.
- •Int I, j; float X, y;
- •8. Потоковый ввод-вывод
- •9. Форматированный ввод-вывод.
- •10. Использование манипуляторов при вводе выводе данных.
- •11. Строковый и символьный ввод-вывод информации.
- •Int letter;
- •12. Условные операторы. Условия операции “?:”. Примеры использования. Условный оператор if
- •13. Особенности синтаксиса и выполнения операторов перехода continue, break
- •Void main()
- •14. Оператор перехода goto. Оператор return.
- •15. Переключатель switch. Примеры использования.
- •16. Организация циклов с помощью while, do while. Примеры.
- •17. Организация циклов с помощью for. Примеры.
- •Void main()
- •18. Простанство имён. Ключевое слово using как директива.
- •19. Средства отладки программ в ms vs.
- •19. Выполнение приложения с использованием средств интерактивной отладки.
- •20. Выполнение приложения с использование средств планируемой отладки
- •21. Создание исполняемого файла.
- •26. Побитовые логические операции (конъюнкция &, дизъюнкция |, сдвиги, инвертирование).
- •Void main()
- •27. Символы, строки (примеры объявления инициализация).
- •28. Алгоритмы работы со строками (подсчет длины строки, объединение строк, удаление заданного символа).
- •Void main()
- •Void main()
- •29. Стандартные функции работы со строками. Примеры использования.
- •Void main()
- •Int result;
- •Void main()
- •30. Логические переменные и примеры их использования в программах.
- •Логические операции
- •31. Понятие указателя. Операции над указателями.
- •32. Одномерные массивы и указатели. Понятие индекса. Инициализация. Доступ к компонентам.
- •33. Указатели и строки. Примеры (объединения строк, поиск заданного символа).
- •34. Матрицы. Инициализация, ввод, вывод.
- •35. Связь между указателями и элементами матриц. Поиск минимума и суммы элементов матрицы через указатели.
- •36. Указатели на указатели. Примеры использования.
- •37. Функция работы с динамическими массивами на языке с.
- •39. Объявление и определение функции пользователя.
- •Int main(void)
- •43. Указатели как формальные параметры и как результат функции.
- •Int main()
- •Void swap(int *X, int *y)
- •Void func1(int val, int& ref)
- •Void main()
- •Void main()
- •Int& preinc(int& X)
- •Void main(void)
- •Void main( )
Int main(void)
{ int max (int n1, int n2) }
Вся информация, имевшаяся в прототипе функции, повторяется в её определении, поэтому если функция определена до её первого вызова, то отдельно прототип указывать не обязательно.
Формальные параметры задаются в прототипе и в определении функции. Они задаются уникальными именами и внутри функции доступны как локальные переменные.
Фактические параметры задаются в основной программе. В момент вызова функции значения фактических параметров присваиваются формальным. Соответственно, имена формальных и фактических параметров могут совпадать, это не вызовет конфликта.
3. Вызов функций
адресное-выражение ([список-выражений])
Список-выражений представляет собой список фактических параметров, передаваемых в функцию. Этот список может быть и пустым, но наличие круглых скобок обязательно.
void ff()
{ int i = 10; cout<<"Функция - i="<<i<<endl; }
void main() { int i = 1; ff(); cout<<"i="<<i<<endl; }
Пример. Формирование динамической матрицы 5х5 из случайных чисел.
40. Вызов и использование функции.
адресное-выражение ([список-выражений])
Список-выражений представляет собой список фактических параметров, передаваемых в функцию. Этот список может быть и пустым, но наличие круглых скобок обязательно.
void ff()
{ int i = 10;
cout<<"Функция - i="<<i<<endl;
}
void main()
{ int i = 1;
ff();
cout<<"i="<<i<<endl;
}
41. Способы передачи аргументов в функции. Использование указателей.
Передача массива по указателю. Вызов функции прежний.
int sum(int *x)
{ int res = 0;
for(int i = 0; i < 5; i++)
res += *x++; // можно res += x[i]
return res;
}
int main()
{ int mas[3][5], i, j;
for(i = 0; i <3; i++)
{ for(j = 0; j < 5; j++)
{ mas[i][j] = i * j;
cout << mas[i][j] << ' ';
}
cout<< endl;
}
for(i = 0; i < 3; i++)
cout << "result=" << sum(mas[i]) << endl;
}
42. Массивы и строки как параметры функций.
Если в качестве параметра функции используется обозначение массива, то на самом деле в функцию передается адрес первого элемента массива.
В функцию можно передавать массивы. Имя массива - это указатель, копия указателя на начало массива передается в функцию.
Пример. Определить максимальные элементы строк матрицы B(2, 4)
Элементы массива могут быть изменены внутри функции.
43. Указатели как формальные параметры и как результат функции.
Формальные параметры функции представляют собой локальные переменные, которым в момент вызова присваиваются значения фактических параметров.
Формальные параметры внутри функции могут как угодно изменяться - это не затрагивает соответствующих фактических параметров в основной программе.
Если фактический параметр должен быть изменен в подпрограмме-функции, то формальный параметр надо определить как указатель.
Тогда фактический параметр должен быть передан с использованием операции &.
Пример, в котором происходит обмен значениями переменных:
void swap(int *, int *); // прототип