c Festival de la lengua
O utilice la búsqueda de cadenas.
= = =Por ejemplo, he escrito un programa de comparación inglés-chino antes (relativamente aproximado) y el marco se puede aplicar.
======main.cpp
# incluir & ltiostream & gt
# incluir & ltfstream & gt
# incluir & ltstring& gt
# incluir & ltvector & gt
# incluir & ltiomanip & gt
const int MAXNUM = 100;
Utilice el espacio de nombres std
Estructura list_w
{
string en
String cn;
}; p>
Comparación de categorías
{
Público:
operador int () (const lst _ w & ampl1, const lst _ w & ampl2) constante
return l 1. en & lt; l2.en
}
};
void trans(char *);
void trans(string);
string NULL_str("NULL");
Cadena a cadena. get(string);
Vector & ltlst_w>Li;
int main()
{
if stream fi("list.txt ");
Cadena str
int tmp
int I = 0;
Y (! fi.eof() p>
{
getline(fi, str);
tmp = str.find(':');
李[i]. en = str substr(0, tmp);
Li[i]. en = substr(tmp+1, string::NPOs);
if (李[. i].En!="")
//cout ancho(9);
//cout & lt;& ltLi[i] 】. traducido como: "
i++;
}
fi. close();
of stream fo("list . txt"
sort(Li . comenzar(), Li . comenzar()+I, Compare_lst_w_en();
for (int j = 0;j<i;j++)
{
fo & lt& lt李【j】.
cn & lt& ltendl
}
fo .
//getline(CIN, str); trans(str);
trans("Atrapé a tu perro con una pata rota");
//cout <<me;
getchar() ;
}
Transacción no válida (char *cstr)
{
Cadena str(CSTR );
Return trans(str);
}
void trans (string)
{
//string str (CSTR);
Palabra de cadena;
Cadena enl, cnl
int n =-1;
int old _ n = 0; p>
n = str.find('');
mientras(n!=-1)
{
palabra = substr. (antiguo_n, n-antiguo_n);
int sp = tamaño de palabra()-get(palabra). tamaño();
if (sp>0){
enl+= palabra;
enl+="";
cnl+= get(palabra);
cnl+= string(1+sp,");
}de lo contrario
{
enl+ = palabra ;
enl+= cadena(1-sp,");
cnl+= get(palabra);
cnl+="";
}
old_n = n+1;
n = str.find('',old_n);
}
palabra = str . substr(old_n,cadena::NPO);
if (palabra!="")
{
enl+= palabra; p>
cnl+= get(palabra);
}
cout & lt& ltenl & lt& ltendl
cout & lt& ltcnl & lt& ltendl p>
}
Cuerdas y cuerdas. get(comando de cadena)
{
int I;
for(I = 0;i<Li . size();i++)
{
Si (李[i].en==instr)
Devuelve 李[i]. cn;
}
Devolver null _ str
}
=======list.txt
A: uno
Atrás: atrás
Ábaco: ábaco
Abalone: abalone
Ríndete: ríndete
Humillación: humillación.
Vergüenza
Atenuar: hacer más pequeño
Matadero: matadero
Abadesa
abadía: abadía
abad: abad
abreviatura: abreviatura
abdicación: retiro
abdomen: abdomen
Secuestro:Secuestro
Abdi: En la cama.
Anormal: inusual
Anormal
Instigación: estímulo
Amy: Sí
Ann: uno p>
Además: y
animal: animal
es: sí
bit:bit
gato:gato p>
atrapar: atraparlo
camaleón:camaleón
computadora:computadora
diccionario:diccionario
Perro:Perro
Editar:Editar
Fin:Fin
Extinción:Extinción
Archivo:Archivo
Vale
Bien:Está bien
Él:Él
Yo:Yo
Lesionado: lesionado
es: sí
eso: eso
pierna: pie
lista:lista
mío: mi
mi:mi
el:de
uno:uno
o:o
Agregar: agregar
Ejecutar: ejecutar
Ella: ella
Cielo: Dios
Inicio: inicio
Sistema: Sistema
Qué: Entonces
Sus: Sus
Ellos: Ellos.
Dos: dos
Palabra: palabra
Tú: tú
Tu: tu
Cero :cero