Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Programmirovanie_-_1_kurs / Лекции (опорный конспект)

.pdf
Скачиваний:
69
Добавлен:
09.06.2015
Размер:
2.39 Mб
Скачать

10.3.Библиотека conio.h (2)

1)puts("Выберите необходимое действие:"); puts(" 1 - Решить линейное уравнение");

puts(" 2 - Решить квадратное уравнение"); puts(" 3 - Решить систему линейных уравнений"); puts(" ESC - Выход");

while (true)

{

int decision = getch();

switch (decision)

2)

{

case '1':

 

solve1();

 

break;

 

case '2':

3)

solve2();

 

break;

 

case '3':

 

solve3();

 

break;

 

case 27:

 

return;

 

}

 

}

121

11.Файловый ввод-вывод

11.1.Файловые потоки

• Работа с файлами осуществляется через

• Файлы:

 

специальный потоковый указатель (FILE*)

Текстовые

Функция fopen открывает файловый поток

 

файлы

Функция fclose закрывает файловый поток

Двоичные файлы

r

Чтение

 

 

w

Запись в новый файл

 

 

a

Добавление данных в файл

 

 

122

11.2.Ввод-вывод символов и строк (1)

fputc – запись символа в файл

fgetc – чтение символа из файла

fputs – запись строки в файл

fgets – чтение строки из файла

fscanf – форматированный ввод из файла

fprintf – форматированный вывод в файл

feof – проверка достижения конца файла

123

11.2. Ввод-вывод символов и строк (2)

1)

 

2)

 

 

 

 

 

 

 

 

3)

124

11.2.Ввод-вывод символов и строк (3)

4)struct FIO

{

char name[25];

char patronymic[25]; char surname[25];

short age; } A[3];

strcpy(A[0].name, "Иван"); strcpy(A[0]. patronymic, "Иванович") ; strcpy(A[0].surname, "Иванов"); A[0].age = 25;

strcpy(A[1].name, "Петр"); strcpy(A[1].patronymic, "Петрович"); strcpy(A[1].surname, "Петров"); A[1].age = 32;

strcpy(A[2].name, "Андрей"); strcpy(A[2].patronymic, "Андреевич"); strcpy(A[2].surname, "Андреев"); A[2].age = 41;

125

11.2.Ввод-вывод символов и строк (4)

5)

126

11.3. Ввод-вывод двоичных данных (1)

• fread – чтение данных из потока

• fwrite – запись данных в поток

1) struct FIO

{

 

char

name[25];

char

patronymic[25];

char

surname[25];

short

age;

} A[3];

 

strcpy(A[0].name, "Иван"); strcpy(A[0].patronymic, "Иванович"); strcpy(A[0].surname, "Иванов"); A[0].age = 25;

strcpy(A[1].name, "Петр"); strcpy(A[1].patronymic, "Петрович"); strcpy(A[1].surname, "Петров"); A[1].age = 32;

127

11.3.Ввод-вывод двоичных данных (2)

2)

128

11.4.Позиционирование (1)

ftell – узнать позицию текущей записи в файле

fseek – перейти на заданную позицию в файле

rewind – перейти к началу файла

SEEK_SET (=0) – начало файла

SEEK_CUR (=1) – текущая позиция в файле

SEEK_END (=2) – конец файла

129

11.4. Позиционирование (2)

1)

130