Подсчитать количество различных пар букв в заданной строке - C (СИ)

Узнай цену своей работы

Формулировка задачи:

Помогите переделать код из С++ в С Дана строка из строчных букв латинского алфавита, содержащая не менее 2 букв. Подсчитать количество различных пар букв в этой строке Парой букв будем называть любые две стоящие рядом буквы
#include <fstream>
#include <iostream>
using namespace std;
int main()
{
    ifstream fin;
    fin.open("input.txt");
    int count[256][256]={0,};
    char t1,t2;
    fin>>t1>>t2;
    while (!fin.eof())
    {
        count[(int)t1][(int)t2]++;
        t1=t2;
        fin>>t2;
    }
    fin.close();
    ofstream fout;
    fout.open("output.txt");
    for (int i=0;i<256;i++)
    {
        for (int j=0;j<256;j++)
        {
            if (count[i][j]>0)
            {
                fout<<(char)i<<(char)j<<" "<<count[i][j]<<"\n";
            }
        }
    }
    fout.close();
    return 0;
}

Решение задачи: «Подсчитать количество различных пар букв в заданной строке»

textual
Листинг программы
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main()
{
    FILE *in;
    in = fopen( "input.txt" , "r");  
    int count[256][256]={0,};
    char t1,t2;
    fscanf (in, "%c%c", &t1,&t2);
    while ((t2 = getchar()) != EOF)
    {
        count[(int)t1][(int)t2]++;
        t1=t2;
        fscanf (in, "%c",&t2);
    }
    fclose(in);
    FILE *out;
    out = fopen( "output.txt", "w"); 
    for (int i=0;i<256;i++)
    {
        for (int j=0;j<256;j++)
        {
            if (count[i][j]>0)
            {
                fprintf(out,"%c%c %10d\n",i,j,count[i][j]);
               
            }
        }
    }
    fclose(out);
    system("PAUSE");
        return 0;
}

Объяснение кода листинга программы

В этом коде на языке C подсчитывается количество различных пар букв в заданной строке. Вот список действий, которые происходят в коде:

  1. Включаются необходимые заголовочные файлы
  2. Открывается файл для чтения
  3. Создается двумерный массив для подсчета пар букв
  4. Считываются две буквы из файла
  5. Пока не достигнут конец файла, считывается вторая буква и увеличивается счетчик в массиве
  6. Закрывается файл
  7. Открывается файл для записи
  8. Записываются пары букв и их количество в файл
  9. Закрывается файл
  10. Выполняется команда для приостановки выполнения программы до нажатия клавиши
  11. Возвращается 0, чтобы указать, что программа успешно завершилась

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

14   голосов , оценка 3.643 из 5
Похожие ответы