Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <stdio.h>
- /*
- Постановка задачи
- Есть текстовый файл
- 1
- 2
- 3
- 4
- 6
- 10
- Нужно удалить возрастающие последовательности
- */
- #define MAX_ARRAY_SIZE 100
- typedef int array[MAX_ARRAY_SIZE];
- void delete_increasing(const char *filename) // const char * - строка
- {
- FILE *file = fopen(filename, "r");
- int buf;
- int i = 0;
- array arr;
- if (!file)
- return;
- while (!feof(file)) // пока не конец файла; feof(FILE *) - 1, если не конец файла и 0, если конец
- {
- if (fscanf(file, "%d", &buf) == 1)
- {
- arr[i] = buf;
- i++;
- }
- }
- fclose(file);
- file = fopen(filename, "w");
- // i - размер массива считанных из файла чисел
- if (i == 1 || (arr[0] >= arr[1]))
- fprintf(file, "%d\n", arr[0]);
- for (int j = 1; j < i; ++j)
- if (arr[j - 1] >= arr[j])
- fprintf(file, "%d\n", arr[j]);
- fclose(file);
- }
- int main()
- {
- delete_increasing("numbers.txt");
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement