欢迎来到代码驿站!

C代码

当前位置:首页 > 软件编程 > C代码

C语言实现翻译功能

时间:2020-10-10 22:21:45|栏目:C代码|点击:

本文实例为大家分享了C语言实现翻译功能的具体代码,供大家参考,具体内容如下

#include<stdio.h>
#define number 100
struct date
{
 char chinese[30];
 char English[30];
 
}a[number];
void copy(char *str1, char *str2, int counst)//将值赋给trans
{
 int i = 0;
 if (str2 == ' ' || str2 == '\0')
 {
 return;
 }
 while (counst--)
 {
 *str1++ = *str2++;
 
 }
 return;
 
}
 
int panduan(char *d, char *f)//判断是否相等
{
 char *str1 = d, *str2 = f;
 int xc=0;
 while (!(xc = *str2 - *str1)&&*str1)
 {
 str1++;
 str2++;
 
 }
 if (xc != 0)
 {
 return 0;
 }
 return 1;
 
}
char* ry( struct date a[number],char *wordtemp,int x) 
{
 for (int i = 0;i<x; i++)
 {
 if (panduan(a[i].English, wordtemp))
 {
 return a[i].chinese;
 }
 }
 return "NULL";
}
int main()
{
 char b;
 int x;
 int exit=0;
 char str[50];
 printf("[请先输入英文单词,再输入拼音,中间以空格隔开,当输入*时结束]\n");
 for (int i=0;; i++)
 {
 printf("第[%d]组:\t", i+1);
 scanf("%[^' ']", a[i].English);
 scanf("%c", &b);
 scanf("%[^\n]", a[i].chinese);
 scanf("%c", &b);
 if (*a[i].English == '*'&&*a[i].chinese == '*')
 {
 x = i;
 break;
 }
 }
 printf("[请输入你所要翻译的内容]\n");
 scanf("%[^\n]", str);
 printf("|翻译的结果为|:\n");
 for (int i = 0;; i++)
 {
 if (str[i] != ' ')
 {
 char Trans[100];
 int n = 0;
 if(str[i]!=' ')
 { 
 while (!(str[i] == ' ' || str[i] == '\0'))
 {
 n++;
 i++;
 if (str[i] == '\0')
 {
  exit = 1;
 }
 } 
 copy(Trans, &str[i - n], n);
 Trans[n] = '\0';
 printf("[%s]", ry(a,Trans,x));
 }
 if (exit)
 {
 break;
 }
 
 }
 }
 
 system("pause");
}

上一篇:深入uCOS中全局变量的使用详解

栏    目:C代码

下一篇:C语言金币阵列问题解决方法

本文标题:C语言实现翻译功能

本文地址:http://www.codeinn.net/misctech/9431.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有