Advertisement
greannmhar

строки 10

May 27th, 2024
51
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 2.21 KB | None | 0 0
  1. #include <stdio.h>
  2. #include <string.h>
  3. #include <ctype.h>
  4. #include <stdlib.h>
  5.  
  6. int sravn(char* word1, char* word2, int n);
  7. int sravn(char* word1, char* word2, int n)
  8. {
  9.         for (int i = 0; i < n; i++) {
  10.         if (word1[i] != word2[i]) {
  11.             return 0;
  12.         }
  13.     }
  14.     return 1;
  15. }
  16.  
  17. int main(void) {
  18.     FILE* fin;
  19.     FILE* fout;
  20.     char start[4001];
  21.     char end[4001];
  22.     char word[4001];
  23.     int sym, i = 0, lens = 0, lene = 0, lenw = 0;
  24.     int between_brackets = 0;
  25.     if ((fin = fopen("input.txt", "r")) == NULL)
  26.     {
  27.         printf("cannot open input file!\n");
  28.         return -1;
  29.     }
  30.     if ((fout = fopen("output.txt", "w")) == NULL)
  31.     {
  32.         printf("cannot open output file!\n");
  33.         fclose(fin);
  34.         return -1;
  35.     }
  36.     while ((sym = fgetc(fin)) != EOF && !isspace(sym)) //считали W
  37.     {
  38.         start[i] = sym;
  39.         i++;
  40.         lens++;
  41.     }
  42.     printf("left skobka: ");
  43.     for (i = 0; i < lens; i++) {
  44.         putchar(start[i]);
  45.     }
  46.     printf("\n");
  47.  
  48.     i = 0;
  49.     while ((sym = fgetc(fin)) != EOF && !isspace(sym)) //считали W
  50.     {
  51.         end[i] = sym;
  52.         i++;
  53.         lene++;
  54.     }
  55.     printf("\n");  
  56.     printf("right skobka: ");
  57.     for (i = 0; i < lens; i++) {
  58.         putchar(end[i]);
  59.     }
  60.     i = 0;
  61.     printf("\n");
  62.     while ((sym = fgetc(fin)) != EOF)
  63.     {
  64.         if (!isspace(sym))
  65.         {
  66.             word[i] = sym;
  67.             //putchar(sym);
  68.             lenw++;
  69.             i++;
  70.         }
  71.         else if (!between_brackets && lenw == lens)
  72.         {
  73.             if (sravn(word, start, lenw) == 1) {
  74.                 between_brackets = 1;
  75.                 lenw = 0;
  76.             }
  77.            
  78.         }
  79.         else if ((between_brackets && lenw == lene))
  80.         {
  81.             if(sravn(word, end, lenw) == 1) {
  82.                 between_brackets = 0;
  83.                 lenw = 0;
  84.             }
  85.         }
  86.         else if(!between_brackets)
  87.         {
  88.             for (int q = 0; q < lenw; q++) {
  89.                 fputc(word[i], fout);
  90.             }
  91.             lenw = 0;
  92.         }
  93.     }
  94.    
  95.    
  96.    
  97.    
  98.    
  99.    
  100.     fclose(fin);
  101.     fclose(fout);
  102.     return 0;
  103. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement