#include<iostream>
using namespace std;
#include<stringh>
#define N 1024
int nWord=2;
char h[N][21]={"你好","再见",0};
char y[N][21]={"hello","bye",0};
void ReadFile() { FILE fp; char buffer[21]; int i;
nWord=0;
if ( fp=fopen("c:\\htxt","r") ) {
fgets(buffer,20,fp); sscanf(buffer,"%d",&nWord);
for ( i=0;i<nWord;i++ ) fgets(fp,20,h[i]);
fclose(fp);
} else printf("无法打开汉语短语文件\n");
if ( fp=fopen("c:\\ytxt","r") ) {
fgets(buffer,20,fp);
for ( i=0;i<nWord;i++ ) fgets(fp,20,y[i]);
fclose(fp);
} else printf("无法打开英语短语文件\n");
}
void main() { unsigned char s[20]; int i;
ReadFile();
cin>>s;
if ( s[0]>127 ) for ( i=0;i<nWord;i++ ) if ( strcmp(s,h[i])==0 ) cout<<y[i]<<endl;
else for ( i=0;i<nWord;i++ ) if ( strcmp(s,y[i])==0 ) cout<<h[i]<<endl;
}
两个文件存放到c盘根目录:
htxt : 第1行写短语个数,后面每行一个短语,行数不要超过N,短语字符数不要超过20,否则改程序
2
你好
再见
ytxt: 第1行写短语个数,后面每行一个短语,行数不要超过N,短语字符数不要超过20,否则改程序
2
hello
bye
读入一个字典类型的字符串,反转其中键值对输出。
即,读入字典key:value模式,输出value:key模式。
用户输入的字典格式的字符串,如果输入不正确,提示:输入错误。
给定字典d,按照print(d)方式输出
提供一些思路吧:
如果使用C,可以考虑用一个搜索树实现,就是一个26叉树,每个节点最后带有该单词的解释,搜索一个单词的时候从树根开始,每个字母选择一个分支,单词搜索完,停留的节点最后就是对应的解释,这个方法在查询的时候时间复杂度可以达到O(1)。
如果使用C++,可以考虑使用map,key是单词,value是解释。
分别输入key和value,key输入回车结束
dic = {}while True:
key = input('Input key:')
if key == '':
break
value = input('Input value:')
dic[key] = value
for key, value in dicitems():
print(key + ' : ' + value)
以上就是关于怎么用C++编写出一个英汉字典程序全部的内容,包括:怎么用C++编写出一个英汉字典程序、Python123 Python语言程序设计 -字典翻转输出、如何用c++编写一个生成字典的小程序等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)