- •Конспект лекций по дисциплине "Программирование"(іі часть)
- •123 "Компьютерная инженерия"
- •1 Функции 6
- •1 Функции
- •1.1 Определение, описание, вызов функции
- •Void prn1(int X)
- •Void prn2()
- •Void main()
- •Void main()
- •Void main()
- •1.2 Передача параметров в функции по значению и по указателю
- •Void func(int intg,float fltp)
- •Void main()
- •Void main()
- •1.3 Функции и массивы
- •Int func1(int arr[]) {...}
- •Void main()
- •Void main()
- •Void main()
- •1.4 Функции с умалчиваемыми значениями параметров
- •Void main()
- •Void main()
- •1.5 Функции с переменным числом параметров
- •Void main()
- •Void main()
- •1.6 Передача параметров в функцию main()
- •Int main(int argc,char**argv,char**envp)
- •Int main(int argc,char **argv)
- •1.7 Рекурсивные и подставляемые функции
- •Void main()
- •Void main()
- •1.8 Функции, возвращающие указатель
- •Void main()
- •1.9 Функции и структуры
- •Void f1(stud a)
- •Void f3(stud *p)
- •Void main()
- •1.10 Перегрузка функций
- •Void main()
- •Void main()
- •Int mul(double X,double y)
- •Int sum(int X) {return 2*X;}
- •Void main()
- •1.11 Шаблоны функций
- •Int main()
- •Void func(a);
- •Int main()
- •1.12 Указатели на функции
- •Void main()
- •Int f2(int X){return X*X;};
- •Void main()
- •Void main()
- •2 Работа с файлами
- •2.1 Потоковый ввод-вывод
- •2.2 Открытие и закрытие потока
- •Int fclose(file *имя);
- •Int main()
- •Void perror(const char *str);
- •2.3 Посимвольный ввод-вывод
- •Int fputc(int ch, file *fp);
- •Int fgetc(file *fp);
- •2.4 Построчный ввод-вывод
- •Int fputs(char*string, file *fp);
- •2.5 Форматированный ввод-вывод
- •Int fprintf(file *fp, char *format [,аргумент]…);
- •Int fscanf(file *fp, char *format [,указатель]…);
- •2.6 Форматированные вывод в строку и ввод из строки
- •Int a2; long b2;
- •2.7 Блоковый ввод-вывод
- •Int fwrite(void *ptr, int size, int n, file *fp);
- •Int fread(void *ptr,int size,int n,file *fp);
- •2.8 Произвольный доступ к файлу
- •Int fseek(file *fp, long offset, int from_where);
- •Int main()
- •3 Многофайловая компиляция
- •Void main()
- •Void main()
- •4 Объекты и их атрибуты
- •Void main()
- •5 Ссылки
- •Int &хref; // ошибка!!
- •Int f2_ptr(int *a, int *b) {return *a-*b;}
- •Int f4_ref(const int&a, int &b)
- •Void main()
- •Литература
Int f2_ptr(int *a, int *b) {return *a-*b;}
int f3_ref(int &a, int &b) {a=100;return a+b;}
Int f4_ref(const int&a, int &b)
{//a=100;// недопустимо
b=10; ;// допустимо
return a+b;}
Void main()
{int x=20,y=5,res1,res2,res3,res4;
res1=f1_ref(x,y);//х=20 y=5, обращение через ссылку
res2=f2_ptr(&x,&y); //х=20 y=5, обращение через указатель,
res3=f3_ref(x,y); //х=20 y=5, обращение через ссылку,
// затем х=100
res4=f4_ref(x,y); //х=100 y=5, обращение через ссылку,
//x нельзя изменить, y=10, res4=110
printf(“res1=%d res2=%d ”, res1,res2);
printf(“res3=%d res4=%d\n”, res3,res4);
}
В результате работы программы на экран выведется:
res1=25 res2=15 res3=105 res4=110
Литература
Подбельский В.В. Язык Си++: Учеб. пособие. – 5-е изд. – М.: Финансы и статистика, 2000. – 560 с.
Подбельский В.В. Практикум по программированию на языке Си: Учебн. пособие. – М.: Финансы и статистика, 2004. – 576 с.
Подбельский В.В., Фомин С.С. Программирование на языке Си: Учебн. пособие. – 2-е изд.,– М.: Финансы и статистика, 2002. – 600с.
Павловская Т.А. С/С++. Программирование на языке высокого уровня. СПб: Питер, 2003. – 461 с.
Касаткин А.И., Вальвачев А.Н. Профессиональное программирование на языке Си: От Turbo C Borland C++. – Мн.: Выш. Шк., 1992. – 240 с.
Березин Б.И., Березин С.Б. Начальный курс С и С++. – М.: ДИАЛОГ-МИФИ, 2002. – 288 с.
Фридман А.П. Основы объектно-ориентированного программирования на языке Си++. – М: Горячая линия. – Телеком. Радио и связь, 1999. – 208 с.
Уильям Топп, Уильям Форд. Структуры данных в С++. / Пер. с англ. – М.: ЗАО “Издательство БИНОМ”, 1999. – 816с.: ил.
Крячков А.В., Сухинина И.В., Томшин В.К. Программирование на С и С++. Практикум: Учебное пособие для вузов / А.В. Крячков, И.В. Сухинина, В.К. Томшин. – 2-е изд., исправ. – М.: Гарячая линия.-Телеком, 2000. – 344с.
Крупник А. Изучаем Си. – СПб.: Питер, – 2001. – 256с.
С/С++. Структурное программирование. Практикум / Т.А. Павловская, Ю.А. Щупак. – СПб.: Питер, 2002. – 240с.
Культин Н.Б. С /С++ в задачах и примерах.- СПб.: БХВ: Петербург, 2001. – 288с.
Х.М. Дейтел, П.Дж. Дейтел. Как программировать на С++. – 5-е изд. / Пер. с англ. – М.: ООО "Бином-Пресс", 2008.– 1456 с.
Шилдт, Герберт. Полный справочник по С++. – 4-е изд. / Пер. с англ. – М.: Вильямс, 2008. – 800 с.
