简单的英汉翻译程序

 

namespace 简单的英汉翻译程序
{

//调用端

class Program
{
static void Main(string[] args)
{//创建对象
Dic d = new Dic();
//添加元素
d.Add("how", "怎么");
d.Add("you", "你");
d.Add("are", "是");
d.Add("new", "新");
//删除new
d.Remove("new");
//查看所有单词
d.Enquiry();
//翻译
Console.WriteLine("\n");
Console.WriteLine("请翻译:how are you");
Console.WriteLine("翻译结果:" + d.Translate("how are you"));
Console.WriteLine("\n");
//查看单词总数
Console.WriteLine("单词总数:"+d.totality );
}
}

//以下被调用端

public class Dic
{//定义一个哈希表字段,并创建对象(不允许外部修改)
private Hashtable ht = new Hashtable();
//定义一个接收单词总数的变量,给封装属性只读
private int Totality;
public int totality
{ get { return Totality; } }
//建立一个添加的方法
public void Add(string english, string chinese)
{//添加到哈希表(要判断)
if (ht.ContainsKey(english))
ht[english] = chinese;
else
{
ht.Add(english, chinese);
Totality++;//总数自增
}
}
//建立一个删除的方法
public void Remove(string english)
{
ht.Remove(english);
Totality--;//删除就自减
}
//建立一个查询所有单词的方法
public void Enquiry()
{
Console.WriteLine("英文\t中文");
foreach (DictionaryEntry d in ht)
{
Console.WriteLine("{0}\t{1}",d.Key ,d.Value );
}
}
//建立一个翻译(直译)的方法
public string Translate(string sentence)//sentence句子
{ //先拆分,然后放进字符串数组
string chinese = string.Empty;
string[] str = sentence.Split(' ');
foreach (string s in str)
{
if (ht.ContainsKey(s))
chinese += ht[s];
else
chinese += "*";
}
return chinese;
}
}

}

posted @ 2015-05-21 00:09  ronger918  阅读(267)  评论(0编辑  收藏  举报