Будь умным!


У вас вопросы?
У нас ответы:) SamZan.net

Робота з текстовими файлами

Работа добавлена на сайт samzan.net:

Поможем написать учебную работу

Если у вас возникли сложности с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой - мы готовы помочь.

Предоплата всего

от 25%

Подписываем

договор

Выберите тип работы:

Скидка 25% при заказе до 9.11.2024

PAGE 3

МІНІСТЕРСТВО ОСВІТИ І НАУКИ, молоді та спорту УКРАЇНИ

Національний аерокосмічний університет ім. М.Є. Жуковського

“Харківський авіаційний  інститут”

Кафедра комп’ютерних систем та мереж

Титульный лист заполняется на украинском языке 

Остальная часть отчета может быть как на украинском, так и на русском 

Домашнє завдання №1

з дисципліни “Обчислювальна техніка та програмування”

Робота з текстовими файлами

ХАІ.503.516БУКВА_ГРУППЫ.13В. 050102,НОМЕР_ЗАЧЕТКИ ПЗ

Виконав студент гр. 516Б   Момот О. О.Фамилия И.О. 

(№ групи) (П.І.Б.)

 

(підпис, дата)

Перевірив ст. викладач каф. 503

(науковий ступінь, вчене звання, посада)

    Дужа В. В.

(підпис, дата) (П.І.Б.)

2013

Вариант 11

  1.  Задание №1

Дана последовательность прописных (больших) латинских букв.

После каждой буквы вставить последнюю букву.

1.2  Алгоритм программы

1.3  Тестовые наборы

№ теста

Строка в файле №1

Ожидаемый результат в файле №2

1

ARMY

AYRYMYYY

2

THE CAPRAL IN THE ARMY

TEHEEE CLALPLRLALLL INNN TEHEEE AYRYMYYY

3

THE COMPUTER IS THE LENOVO

TEHEEE CRORMRPRURTRERRR ISSS TEHEEE LONOOOVOOO

1.4  Код программы

#include <stdio.h>

#include <string.h>

#include <Windows.h>

#include <locale.h>

#define MAX 255

int main()

{

setlocale(LC_CTYPE, "rus");

 char st[MAX], s[MAX];

 char *pw = st, *ps = st;

 char sym, symb;

symb = ' ';

 int n, k = 1, a = 0;

 FILE *fd, *fu;

 char fname1[50];

 char fname2[50];

printf("Введите имя файла для считывания: ");

gets(fname1);

fd=fopen(fname1,"rt");

 if (fd==NULL)

{

 printf("Ошибка в имени файла - %s\n",fname1);

 system("pause");

 return 0;

}

fgets(st, MAX, fd);

printf("Введите имя файла для создания: ");

gets(fname2);

fu=fopen(fname2,"wt");

 if (fu==NULL)

{

 printf("Ошибка в имени файла - %s\n",fname2);

 system("pause");

 return 0;

}

 for (int i = 0; i < strlen(st); i++)

 if (st[i] == symb) k++;

 do

{

 if (*ps != ' ')

 {

  ps++;

 }

 else

 {

  *ps = '\0';

  if ((n = strlen(pw)) > 1)

   sym = pw[n - 1];

  for (int i = 0; i < strlen(pw); i++)

  {

   if(pw[i] != ' ')

   {

    putc (pw[i],fu);

    putc (sym,fu);

   }

   else

    putc (' ',fu);

  }

  pw = ++ps;

  putc (' ',fu);

  a++;

 }

}

 while (k != a);

fclose(fu);

fclose(fd);

system("pause");

 return 0;

}

1.5 Результат работы программы

№ теста

Строка в файле №1

Результат в файле №2

Вывод

1

ARMY

AYRYMYYY

Тест пройден

2

THE CAPRAL IN THE ARMY

TEHEEE CLALPLRLALLL INNN TEHEEE AYRYMYYY

Тест пройден

3

THE COMPUTER IS THE LENOVO

TEHEEE CRORMRPRURTRERRR ISSS TEHEEE LONOOOVOOO

Тест пройден

1.6  Вывод о работоспособности программы

 Программа прошла тестирование: в результате выполнения тестов программа выдала ожидаемые результаты. Программа – работоспособна.

2.1  Задание №2

Даны строки S и S0. Найти количество вхождений строки S0 в строку S.

 2.2 Алгоритм программы

2.3  Тестовые наборы

№ теста

Строка в файле №1

Ввод строки S0

Ожидаемый результат

1

mama mula ramy mama mula ramy mama mula ramy

mama mula

3

2

1114 5556 1114 7777

1114

2

3

est west norse est west west

est

5

2.4  Код программы

#include <string.h>

#include <locale.h>

#include <stdio.h> 

#include <Windows.h>

#define MAX 255

int main()

{

setlocale(LC_CTYPE,"rus");

 FILE *fd, *fu;

 char fname1[50];

 char fname2[50];

   int k, cnt = 0;                 

 char S[MAX];

 char S0[MAX];

printf("Введите имя файла для считывания S: ");

gets(fname1);

fd=fopen(fname1,"rt+");

 if (fd==NULL)

{

 printf("Ошибка в имени файла - %s\n",fname1);

 system("pause");

 return 0;

}

fgets(S, MAX, fd);

printf("Введите имя файла для создания: ");

gets(fname2);

fu=fopen(fname2,"wt+");

 if (fu==NULL)

{

 printf("Ошибка в имени файла - %s\n",fname2);

 system("pause");

 return 0;

}

   puts("Введите строку S0:");         

   gets (S0);  

 int const la = strlen(S);

 for(int i = 0 ; i < la; i++)

{

 char tmp[MAX] = "";

 if(S[i] == S0[0])

 {

  int j = i;

  k = 0;

  while(S[j] == S0[k])

  {

   tmp[k] = S[j];

   j++;

   k++;

  }

  if(!(strcmp(S0,tmp)))

   cnt++;

  if(S0[0] == S0[1])

   i += strlen(S0) - 1;

 }

}

fprintf(fu,"S0 входит в S %i раз(а).", cnt);

fclose(fu);

fclose(fd);

   system ("pause");                    

   return 0;                    

}

2.5 Результат работы программы

№ теста

Ввод строки S

Ввод строки S0

Результат в файле №2

Вывод

1

mama mula ramy mama mula ramy mama mula ramy

mama mula

3

Тест пройден

2

1114 5556 1114 7777

1114

2

Тест пройден

3

est west norse est west west

est

5

Тест пройден

2.6  Вывод о работоспособности программы

Программа прошла тестирование: в результате выполнения тестов программа выдала ожидаемые результаты. Программа – работоспособна.




1. ТЕМА 4. ТЕОРІЯ ВАРТОСТІ ГРОШЕЙ 3
2. ВВЕДЕНИЕ В течение многих веков существования человеческого общества земля являлась первоначальным ист
3. варианты квазисубъектов либо расщепления классических субъектов
4.  Право власності на землю на сучасному етапі розвитку суспільства не є абсолютним
5. Управленческая мотивация и стимулирование труда
6. За гениальность мастер сложных переживаний и нестандартного синтаксиса хорошо известный нашему читателю
7. Метод анализа иерархий Т Саати
8. По принципу действия наиболее часто встречающиеся в промышленности насосы можно разделить на четыре группы
9. Прокатный завод [0.html
10.  высоко активен и инициативен при решении группой основных задач; 2 способен оказывать влияние на других
11. Продолжительность работы- 2 часа
12. РАЗВИТИЕ ПРЕДПРИНИМАТЕЛЬСТВА В XVII в
13. реферат дисертації на здобуття наукового ступеня кандидата біологічних наук Льв
14. Лекции по дисциплине Рисунок Раздел 1
15. Технология программирования
16. Бухгалтерский учет финансовых результатов предприятия
17. Реформы Петра1
18. тема правильной политики а то что может из себя представлять политика как призвание
19. тематизированы все важные нормативные документы высших органов законодательной и исполнительной власти.1
20. тема ЕМС 53 Жилые здания по числу этажей малоэтажные средней этажности многоэтажные повышенной этаж