Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // file12.cpp : Этот файл содержит функцию "main". Здесь начинается и заканчивается выполнение программы.
- //в ткствовом файле поменять местами первое и последнее число, второе и предпоследнее и т.д.
- #include "pch.h"
- #include <stdio.h>
- #include <stdlib.h>
- FILE* file_create(const char* filename, const char* mode)
- {
- FILE* file = fopen(filename, mode);
- if (!file)
- {
- fprintf(stderr, "Can't open file\n");
- return NULL;
- }
- return file;
- }
- void file_fill(FILE* file)
- {
- int i;
- do
- {
- fscanf_s(stdin, "%d", &i);
- if (i == 999)
- {
- break;
- }
- fprintf(file, "%3d", i);
- } while (i != 999);
- }
- void file_output(FILE* file)
- {
- rewind(file);
- int i;
- while (!feof(file))
- {
- fscanf_s(file, "%d", &i);
- fprintf(stdout, "%3d", i);
- }
- fprintf(stdout, "\n");
- }
- void file_change(FILE* file)
- {
- fpos_t pos1, pos2;
- fseek(file, -3, SEEK_END);
- fgetpos(file, &pos2);
- rewind(file);
- fgetpos(file, &pos1);
- int i, j;
- while (pos1 < pos2)
- {
- fsetpos(file, &pos1);
- fscanf_s(file, "%d", &i);
- fsetpos(file, &pos2);
- fscanf_s(file, "%d", &j);
- fsetpos(file, &pos1);
- fprintf(file, "%3d", j);
- fsetpos(file, &pos2);
- fprintf(file, "%3d", i);
- pos2 -= 3;
- pos1 += 3;
- }
- }
- int main()
- {
- FILE* file = file_create("text.txt", "w+");
- file_fill(file);
- file_output(file);
- file_change(file);
- file_output(file);
- fclose(file);
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement