⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 unit2.~cpp

📁 处理语料库信息的小程序
💻 ~CPP
字号:
//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop
#include<stdio.h>
#include<stdlib.h>
#include "Unit2.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{
}
//---------------------------------------------------------------------------
 FILE *File_Open(char* dir,char* mode)
{
    FILE *file;
    file=fopen(dir,mode);
    if(file!=NULL)
    {
      fseek(file,0L,SEEK_SET);
    }
    else
    {
      MessageBox(NULL,"Could not open Dict file.", "Wornning", MB_OK);
    }
    return file;
}
//===========================================================================
AnsiString Read_File(FILE* file,int bytes)
{
   int i=0;
   AnsiString s;
   char ch[60],mc[1];

   fread(mc,bytes,1,file);
   for(;;fread(mc,bytes,1,file))
   {
      if(mc[0]==10)
      {
          break;
      }
      else if(mc[0]==13)
      {
          s=AnsiString(ch).SubString(1,i);
      }
      else
      {
          ch[i++]=mc[0];
      }
   }
   return s;
}

//==============================================================================
void __fastcall TForm1::Button1Click(TObject *Sender)
{
FILE *file;
long int i=0,j=0;
AnsiString s,wor,gen,str;
file=File_Open("dict.txt","rb");
if(file!=NULL)
{
   s=Read_File(file,1);
   while(s.SubString(1,1)!='#'&&i<60)
   {
        wor=s.SubString(1,s.Pos(" "));
        gen=s.SubString(s.Pos(" ")+1,s.Length()-s.Pos(" "));
        for(j=1;j<=i;j++)
        {
            if((word[j].mword==Trim(wor))&&(word[j].gender==Trim(gen)))
            {
                word[j].count++; break;
            }
        }
        if(j>i)
        {
           word[++i].mword=Trim(wor);
           word[i].gender=Trim(gen);
           word[i].count=1;
        }
        s=Read_File(file,1); ////word[10].count);
   }
}
len=i;   //ShowMessage(len);
void jrmt();
jrmt();
/*for(i=1;i<=len;i++)
{
    /*str="insert into counter(mongol,gender,count) values('" + word[i].mword+ "','" + word[i].gender + "'," + word[i].count + ")";
    Form1->ADOCommand1->CommandText=str;
    Form1->ADOCommand1->Execute();
   Form1->RichEdit1->Text=Form1->RichEdit1->Text+word[i].mword+" "+word[i].gender+" "+word[i].count;

   Form1->RichEdit1->Text=Form1->RichEdit1->Text+'\n';
}  */
void print();
print();
}
//---------------------------------------------------------------------------
void jrmt()
{
AnsiString max;
int j;
for( int i = 1; i <= len; i++ )
{
     max = word[ i ].mword;
     j = i;
     for( int k = i + 1; k <= len; k++ )
     {
        if( word[ k ].mword < max )
        {
                max = word[ k ].mword;
                j = k;
        }
     }

     word[ 0 ].mword = word[ i ].mword;
     word[ 0 ].gender = word[ i ].gender;
     word[ 0 ].count = word[ i ].count;
     word[ i ].mword = word[ j ].mword;
     word[ i ].gender = word[ j ].gender;
     word[ i ].count = word[ j ].count;
     word[ j ].mword = word[ 0 ].mword;
     word[ j ].gender = word[ 0 ].gender;
     word[ j ].count = word[ 0 ].count;

}
}
void print()
{
FILE*file;
int i;
file=File_Open("count.txt","w+");
if(file!=NULL)
   ShowMessage("yes");
for(i=0;i<=len;i++)
{
fputs(word[i].mword.c_str(),file);
fputc(' ',file);
fputs(word[i].gender.c_str(),file);
fputc(' ',file);
fprintf(file,"%d",word[i].count);
fputc('\n',file);
}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -