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

Контрольная работа по КПиЯП ч1

.doc
Скачиваний:
6
Добавлен:
01.04.2014
Размер:
129.54 Кб
Скачать

БЕЛОРУССКИЙ ГОСУДАРСТВЕННЫЙ УНИВЕРСИТЕТ

ИНФОРМАТИКИ И РАДИОЭЛЕКТРОНИКИ

Кафедра программного обеспечения информационных технологий

Факультет ЗВиДО

Специальность ПОИТ

Контрольная работа № 2

по дисциплине «Конструирование программ и языки программирования»

часть 1

Вариант № 27

Выполнил студент: Голубев А.В.

группа 801021

Зачетная книжка № 801021с-03

Минск 2009

Условие:

Дан текстовый файл А. Исключить пробелы, стоящие в концах его строк. Результат поместить в файл А1.

Программа на С

#include <stdlib.h>

#include <string.h>

#include <stdio.h>

#include <iostream.h>

#include <fstream.h>

#include <fcntl.h>

#include <io.h>

#include <conio.h>

int main (int argc, char **argv)

{

long i,j,k;

int count,A,A1;

char ch,str[1000];

clrscr();//Очистка экрана

printf("Программа открывает текстовый файл А, удаляет пробелы\n");

printf("в конце строк и записывает результат в текстовый файл А1 \n\n");

if ((A=open("A",O_RDONLY|O_TEXT))==-1)//открытие файла для чтения в текстовом режиме

{

cerr<< " Файл A не может быть открыт \n";//вывод сообщения в случае ошибки

exit(1);

};

printf("Файл А открыт \n");

if ((A1=open("A1",O_WRONLY|O_CREAT|O_TEXT))==-1)//открытие файла для записи

{

cerr<< " Файл A1 не может быть открыт \n";//вывод сообщения в случае ошибки

close(A); //закрытие файла А

printf("Файл А закрыт \n");

exit(1);

};

printf("Файл А1 открыт \n");

printf("Содержание информации исходного файл A \n");

count=filelength(A);//определение длины файла для чтения

j=0;//счетчик прочитанных байтов

for(i=0;i<count;i++)

{

read(A,&ch,1);//чтение байта

if (ch=='\n') //проверка на достижение конца строки

{

str[j]='\0';//занесение в строку нуль-терминатора

cout<<str<<"\n";//вывод прочитанной строки на экран

while ((str[j-1]==' ') && (j>0)) j--; //определение длины строки без последних пробелов

str[j]='\0';//изменение длины строки

write(A1,str,j);//вывод строки без пробелов в файл А1

write(A1,"\n",1); //вывод в файл А1 конца строки

j=0; //сброс счетчика длины строки

i++; //увеличение счетчика прочитанных байтов

}

else str[j++]=ch;//занесение очередного прочитанного символа в сроку

};

close(A); //закрытие файла А

printf("Файл А закрыт \n");

close(A1); //закрытие файла А1

printf("Файл А1 закрыт \n");

printf("Результат работы смотрите в файле А1 \n");

return 0;

}

Исходные данные файл А в текстовом и шестнадцатеричном представлениях

Копия экрана

Результирующий файл А1 в шестнадцатеричном представлении