Как написать программу для построчной обработки текста? - C (СИ)

  1. Вот задание.. Написать программу для построчной обработки текста. В главной функции программа должна запросить и ввести с клавиатуры имена исходного и результирующего файлов и при необходимости дополнительные данные. Затем эти данные через список аргументов передаются функции обработки текста. Она открывает файлы и, считывая текст из входного файла, построчно передает его функции из прошлого задания (для удобства в ее реализацию можно внести изменение), а результат выводит на экран и сохраняет в результирующий фай Выводить лишь измененные строки. После каждой строкой записывать номер строки в исходном тексте...\ Вот есть программный код..как его изменить для этого задания??C1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 #include <stdio.h> #include <conio.h>   int cnt, numz = 0;   void process(char *st1, int &num) {     while (st1[num] != '\0' )  {       if (st1[num] == ',') return;         num++;   }     if (st1[num] == '\0') num = -1; }   int WorkFile (char *fn1, char *fn2) {     char t1[255];   FILE *pf1, *pf2;       if ((pf1 = fopen (fn1,"r")) == NULL) {     printf("Невозможно открыть исходный файл для чтения!");     return -1;   }       if ((pf2 = fopen (fn2,"w")) == NULL) {     printf("Невозможно открыть файл для записи!");     return -1;   }       while (!feof (pf1))   {         fgets (t1, 255, pf1);         cnt = 0;           do {       process(t1, numz);           if (numz != -1) {     fprintf(pf2, "%d ", numz);     printf("%d ", numz);     cnt++;     numz++;       }         } while (numz != -1);       if (cnt == 0) {       fprintf(pf2, "В строке нет ни одной запятой\n");       printf("В строке нет ни одной запятой\n");     }     else {       fprintf(pf2, "\n");       printf("\n");     }   }       fclose (pf1); fclose (pf2);   return 0; }   char fname1[255], fname2[255];   void main() {   clrscr();     printf("Введите имя исходного файла:\n" );   gets(fname1);   printf("Введите имя файла для вывода:\n" );   gets(fname2);     WorkFile(fname1, fname2);     printf("\n-= Нажмите любую клавишу =-");   getch(); }Это кода на си ...что нужно изменить для выполнения моего задания? Заранее спасибоДобавлено через 1 час 19 минут поможет кто нибудь?Добавлено через 2 часа 2 минуты Помогите кто либо пожалуйста срочно нужно((


textual

Код:

#include <iostream>
#include <conio.h>
#include <stdio.h>
char t1[255],t2[255];
using namespace std;
int WorkF(char *fn1 ,char *fn2 ){
 char t1[255],t2[255];
 char *proc;
 int i=0;
 FILE  *pf1,*pf2;
 if ((pf1=fopen(fn1,"r"))==NULL){
                                 printf("Not read this file!");
                                 return -1;
                                 }  
 if((pf2=fopen(fn2,"w"))==NULL){
                                printf("Not write this file!");
                                return -1;
                                }
 while (!feof(pf1))  {                                                           
 
 fgets(t1,255,pf1);
 i++;
 //if(proc(t1,t2)==1){
                    //printf("String %d: %s",i,t2);
                    //fprintf(pf2,"String %d: %s",i,t2);
                    
 
                   // }
                    }
                    fclose(pf1);fclose(pf2);
                    return 0;
}
int Proc(char *main)
{
 
 
    int i;
    for(i=1;main[i]!=0;i++)
    {
        if(main[i-1]==' ' && (main[i]==' ' || i==1) )
        {
            for(int j=i-1;main[j]!=0;j++)
                main[j]=main[j+1];
            i--;
        }
    }
    if(main[i-1]==' ')main[i-1]=0;
    cout<<main;
    _getch();
    return 0;
}
char fname1[255],fname2[255];
int main(char arr[255])
{
puts("Enter input file:\n");
gets(fname1);
puts("Enter output file");
gets(fname2);
WorkF(fname1,fname2);
puts("Enter string:");
gets(arr); 
}


Похожие ответы
  1. Строка, содержащая произвольный текст, состоит не более чем из 255 символов. Написать, какие буквы и сколько раз встречаются в этом тексте. Ответ должен приводиться в грамматически правильной форме, например а — 25 раз, v — 3 раза и т. д

  1. Написать функцию md(x, y) для получения остатка от деления целочисленных операндов.

  1. Дан текст, содержит от 2 до 30 слов, в каждом из которых от 2 до 10 латинских букв; между соседними словами - не менее одного пробела. Написать все слова, отличные от последнего слова, предварительно преобразовав каждое из них по следующему правилу: 1) перенести первую букву в конец слова; 2) перенести последнюю букву в начало слова.

  1. Найти строку, содержащую наибольшее количество слов, и вывести ее на экран монитора. Количество строк 5, а максимальное число символов в строке - 80. Массив строк ввести с помощью инициализации Примечания: Данные вводятся с клавиатуры. В программе при обращении к элементу массива нельзя использовать дополнительную переменную для вычисления его адреса. Задачу нужно решить применяя указатель второго ранга. Буду очень признателен за помощь.

  1. Ребята, нужна ваша помощь в написании кода)) Помогите пожалуйста написать код программы, очень нужно, это курсовой... Задание: В радиоателье хранятся квитанции о сданной в ремонт радиоаппаратуре. Каждый пункт содержит следующую информацию: наименование группы изделий (телевизор, радиотелефон и т. п.), марка изделия, дата приемки в ремонт, дата исполнения заказа, состояние готовности заказа (выполнен или не выполнен). Требуется: выдать информацию о состоянии готовности заказов на текущие сутки по группам изделий; выдать информацию о заказах, не выполненных в срок; отсортировать заказы в группах по убыванию даты исполнения заказа;осуществлять поиск изделия по наименованию, дате приемки, дате исполнения заказа. Вот, я буду вам очень благодарен, если не пройдете мимо)

  1. Сравнить 2 слова и вывести не повторяющиеся буквы.Например: бог огРезультат: бПроверить по символьно 1 слово с 2, а потом 2 с 1. Описать это в одной функции.

  1. C1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 #include int f(int n) {     if(n==0)     {     return(o); } else (n==1)&(n=2) {     return 1;     int fib=f(n-1)+f(n-2); } return fin; } int main(); {     int number, fibb, n;     printf(Enter your number, please:);     scanf("%i", number, fibb); int fibb=f(number); printf("fibb: %i", &fibb);     while(0)     {         f(fibb)     } }

  1. Нужно составить программу, которая вычисляет интеграл.. помогите пожалуйста ее составить, я не могу понять как с экспонентой составляется интеграл.

  1. Написать программу шифрования текста, которая читает содержимое из текстового файла input.txt и записывает результат в файл output.txt в соответствии с алгоритмом шифрования на Си Буквы меняются следующим образом: "А"->"01", "Б"->"02", ... "Я"->"33" Желательно с блок-схемой

  1. Разработать программу построения графика функции y=x-1/(3+sin3.6x), интервал: x=[0;0.85] на Си, желательно с блок-схемой