Логотип сайта

Подготовка к ЕГЭ и ОГЭ

  • Главная
  • Информация о сайте
  • Сочинения ЕГЭ
  • Выпускное сочинение
  • Поиск по сайту

Удаление комментариев кода (Си/Си++)

Категория: Язык программирования: Си/Си++

Задание:

Напишите программу, убирающую все комментарии из любой Си-программы. Не забудьте должным образом обработать строки символов и строковые константы. Комментарии в Си не могут быть вложены друг в друга.

Идея:

Считать код из входного файла, удалить комментарии в коде и вывести в выходной файл. В качестве кода используем код самой программы.


Решение (Visual studio):



#include "stdio.h"
#include "stdlib.h"
int main()
{
    char c;
    FILE *fin, *fout;
    fopen_s(&fin, "in.txt", "r"); //чтение файла
    fopen_s(&fout, "out.txt", "w"); //запись файла
    while ((c = fgetc(fin)) != EOF) //конец потока
    {
        if (c != '/')
        {
            fputc(c, fout);
        }
        else
        if ((c = fgetc(fin)) == '/')
        {
            while (c != '\n')
            {
                fputc(' ', fout);
                c = fgetc(fin);
            }
            fputc('\n', fout);
        }
        else
        {
            fputc('/', fout);
            fputc(c, fout);
        }
    }
    fclose(fout); //закрыть
    fclose(fin);
    return 0;
} 

Пример входного файла in.txt:



Пример выходного файла out.txt:


Похожие материалы
  • Напишите программу, печатающую значение EOF (Си)
  • Напишите программу, которая в последовательности...
  • Напишите программу... сумму чисел, кратных 6...
  • Напишите программу...значение наименьшего числа...
  • 1
  • 2
  • 3
  • 4
  • 5
Оценка: 3.1 из 19

💬 Чат ЕГЭ В Telegram. Вступить

Copyright Vopvet.Ru © 2025 Хостинг от uWeb