close

Вход

Забыли?

вход по аккаунту

?

лаб8 (2)

код для вставкиСкачать
ФБГОУ ВПО "Чувашский государственный университет им. Ульянова"
Кафедра вычислительной техники
Факультет информатики и вычислительной техники
Лабораторная работа №8 по программированию
Тема: Файлы в языке СИ++.
Вариант 3 Выполнил: студент гр. ИВТ 41-12
Ефремов Евгений
Принял: доц. Симаков А.Л.
Чебоксары, 2013
Цель работы: Получение практических навыков по разработке программ обработки текстовых файлов на языке СИ++ с использованием потоков ввода-вывода.
Индивидуальное задание: Сконструировать программу обработки текстового файла и записи файла с использованием традиционных функций либо потоков в соответствии с номером студента по списку в журнале преподавателя с учетом заданных ограничений.
Вариант обработки файла: Объединение с предыдущей строкой каждой строки, содержащей заданный символ, если новая строка по длине не будет превышать заданную величину.
Листинг программы
#include <iostream.h> //cout,cin
#include <fstream.h> //ifstream
#include <conio.h> //getch,clrscr
ifstream IN;
ofstream OUT("out.txt");
int i=0;
char nextchar,f;
char str[80];
using namespace std;
int main()
{
clrscr();
int len;
char a,sym;
char nameIn[20], stroka[80];
// int dlina=0;
// bool b=0;
cout<<"Enter input filename: ";
cin>>nameIn;
cout<<"Enter max length of line: ";
cin>>len;
cout<<"Enter symbol: ";
cin>>sym;
//______________________
IN.open(nameIn);
if (IN)
{
i=0;
while (!IN.eof())
{
IN.getline(stroka,sizeof(stroka)) ;
i++;
cout<<i<<": "<<stroka<<endl;
if (i==20)
{
getch();
i=0;
}
}
}
else cout<<"error:unknown file";
IN.close();
//________________________
bool findSym=0;
int leng=0,lengTemp=0;
char temp[80];
ifstream IN;
IN.open(nameIn);
if (IN)
{
while (!IN.eof())
{
findSym=0;
IN.getline(stroka,sizeof(stroka)) ;
cout<<"In:"<<stroka;
leng=strlen(stroka);
if (leng<len)
{
for (i=0; i<leng; i++)
{
if (stroka[i]==sym)
findSym=1;
}
lengTemp=strlen(temp);
if ((findSym) && (lengTemp+leng<=len) )
{cout<<"\nVyh!:"<<stroka<<temp<<endl;
OUT<<stroka<<temp<<endl;}
else
{cout<<"\nVyh:"<<stroka<<endl;
OUT<<stroka<<endl;}
}
else
{cout<<"\nVyh:"<<stroka<<endl;
OUT<<stroka<<endl;}
for (i=0; i<=len; i++)
temp[i]=stroka[i];
//cout<<":"<<leng;
getch();
}
}
else cout<<"error: unknown file";
IN.close();
getch();
return 0;
}
Результат и входные данные
Документ
Категория
Рефераты
Просмотров
22
Размер файла
235 Кб
Теги
лаб8
1/--страниц
Пожаловаться на содержимое документа