英语翻译程序,可以对用户自己建立的词汇表进行增删查改

⑴ 自行建立一个包含若干英文单词的词汇表文件,系统初始化时导入内存,用于进行句子翻译。

⑵ 用户可以输入单词或者句子,在屏幕上显示对应翻译结果。

⑶ 用户可对词汇表进行添加和删除,并能将更新的词汇表存储到文件中。

#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h> 
#include<stdlib.h>
#include<string.h> 
#include<Windows.h>void Menu();				//菜单
int get_choice();			//获取选择(1-4)
int load();				//导入词汇表
void search(int i);		//单词查找
int add(int i);			//添加单词
int del(int i);			//删除单词
void Save(int i);			//将新的数据存如文件void Menu()                                    //显示菜单
{printf("**************************************************************\n");printf("*                                                            *\n");printf("*                     欢迎使用英语翻译程序                   *\n");printf("*                                                            *\n");printf("*                     1.单词查询                             *\n");printf("*                     2.增加单词                             *\n");printf("*                     3.删除单词                             *\n");printf("*                     4.退出                                 *\n");printf("*                                                            *\n");printf("* 请输入你的选择:                                            *\n");printf("*                                                            *\n");printf("**************************************************************\n");
}int get_choice()                     //获取选择 (1-4)
{int a;scanf("%d", &a);return a;
}struct Translate
{char English[20];char Chinese[20];
};struct Translate cihui[6000];                       //结构体数组 int load()                                         //导入词汇表 
{int i = 0;FILE* fp;if ((fp = fopen("cihuibiao.txt", "r")) == NULL)		//打开文件{printf("无法打开文件!\n");}else {do {fscanf(fp, "%s%s", cihui[i].English, cihui[i].Chinese);i++;} while (feof(fp) == 0);				//遍历}fclose(fp);								//关闭文件return i - 1;
}void search(int i)                       //查询单词功能 
{int a;char b;system("cls");char English[1024];
I:	printf("请输入你要查询的单词\n"); scanf("%s", English);				//用户输入查询的单词for (a = 0; a <= i; a++){if (strcmp(cihui[a].English, English) == 0){printf("中文意思:%s\n", cihui[a].Chinese);break;}}if (a > i)printf("not find\n");printf("是否继续查询?(y/n)\n");fflush(stdin);						//刷新输出缓冲区scanf("%c", &b);if (b == 'y')goto I;else if (b == 'y')return;}int add(int i)                            //实现用户添加词汇表功能
{system("cls");					//清空屏幕printf("请输入你要添加的英文:\n");fflush(stdin);					//刷新输出缓冲区scanf("%s", cihui[i + 1].English);printf("请输入你要添加的中文:\n");fflush(stdin);scanf("%s", cihui[i + 1].Chinese);printf("请在文件中查看"); return i + 1;
}int del(int i)                              // 实现用户删除词汇表功能
{system("cls");char english[20];printf("请输入你要删除的英文:\n");scanf("%s", english);for (int a = 0; a <= i; a++){if (strcmp(cihui[a].English, english) == 0){while (1){strcpy(cihui[a].English, cihui[a + 1].English);strcpy(cihui[a].Chinese, cihui[a + 1].Chinese);a++;if (a > i)goto Z;}}}printf("请在文件中查看"); 
Z:	return i - 1;
}void Save(int i)                                       //清空文件,并将新的数据存入文件 
{FILE* fp = NULL;fp = fopen("词汇表.txt", "w");					//打开文件,只读方式if ((fp = fopen("词汇表.txt", "w")) == NULL){printf("写入文件失败,请重试!");}for (int a = 0; a <= i; a++){fprintf(fp, "%s", cihui[a].English);fputs(" ", fp);fprintf(fp, "%s", cihui[a].Chinese);fputs("\n", fp);}fclose(fp);     //关闭磁盘文件
}int Bye_bye()   		//退出程序
{printf("退出程序\n");return 0;
}int main()
{int a, n, b, i;
L:	i = load();system("cls");//	清空屏幕Menu();a = get_choice();switch (a){case 1: search(i); break;case 2: n = add(i); Save(n); break;case 3: b = del(i); Save(b); break;case 4: Bye_bye();}Sleep(3000);goto L;
}

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/20658.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Adobe Acrobat DC无法卸载

控制版面、电脑管家等均无法卸载&#xff0c;使用自身的remove也不能卸载 解决方法&#xff1a;删除Adobe Acrobat DC的注册表 1、首先打开注册列表&#xff1a; 2、根据圈出来的信息&#xff0c;找到以下路径&#xff1a; 计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Inst…

现如今AI大环境究竟怎样?

遇到难题不要怕&#xff01;厚德提问大佬答&#xff01; 厚德提问大佬答10 你是否对AI绘画感兴趣却无从下手&#xff1f;是否有很多疑问却苦于没有大佬解答带你飞&#xff1f;从此刻开始这些问题都将迎刃而解&#xff01;你感兴趣的话题&#xff0c;厚德云替你问&#xff0c;你…

车载电子电器架构 —— 智能座舱技术范围(万字长文精讲)

车载电子电器架构 —— 智能座舱技术范围 我是穿拖鞋的汉子,魔都中坚持长期主义的汽车电子工程师。 老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师: 屏蔽力是信息过载时代一个人的特殊竞争力,任何消耗你的人和事,多看一眼都是你的不对。非必要不费力证明…

MySQL性能分析工具——EXPLAIN

性能分析工具——EXPLAIN 1、概述 定位了查询慢的SQL之后&#xff0c;我们就可以使用EXPLAIN或DESCRIBE工具做针对性的分析查询语句 。 DESCRIBE语句的使用方法与EXPLAIN语句是一样的&#xff0c;并且分析结果也是一样的。 MySQL中有专门负责优化SELECT语句的优化器模块&…

FreeRTOS基础(五):任务挂起与恢复

今天我们将探讨FreeRTOS中的两个非常重要的函数&#xff1a;任务挂起和恢复函数。在实际的嵌入式系统开发中&#xff0c;我们常常需要在特定条件下暂停某些任务的执行&#xff0c;而在满足某些条件后再恢复这些任务的执行。这就像我们日常生活中的“暂停”和“继续”按钮。无论…

【Kubernetes】Pod理论详解

一、Pod基础概念&#xff1a; Pod是kubernetes中最小的资源管理组件&#xff0c;Pod也是最小化运行容器化应用的资源对象。一个Pod代表着集群中运行的一个进程。kubernetes中其他大多数组件都是围绕着Pod来进行支撑和扩展Pod功能的&#xff0c;例如&#xff0c;用于管理Pod运行…

Unix、Linux 软件包管理快速入门对照

Linux&#xff08;RHEL、Ubuntu&#xff09;或者 Unix&#xff08;macOS、FreeBSD&#xff09;可以参看下表快速入门: 命令功能/系统Darwin (macOS)FreeBSDDebian/UbuntuRHEL&#xff08;dnf yum&#xff09;搜索和查找软件包brew searchpkg searchapt listyum list查看软件包…

生态系统服务功能之碳储量

大家好&#xff0c;这期开始新生态系统服务功能即碳储量的计算&#xff0c;这部分较简单&#xff0c;下面让我们开始吧&#xff01;&#xff01;&#xff01; 碳储量的计算公式 生态系统通过从大气中释放和吸收二氧化碳等温室气体来调节地球气候&#xff0c;而森林、 草原和沼…

Stable Diffusion生成图片的参数查看与抹除方法

前几天分享了几张Stable Diffusion生成的艺术二维码&#xff0c;有同学反映不知道怎么查看图片的参数信息&#xff0c;还有的同学问怎么保护自己的图片生成参数不会泄露&#xff0c;这篇文章就来专门分享如何查看和抹除图片的参数。 查看图片的生成参数 1、打开Stable Diffus…

php反序列化入门

一&#xff0c;php面向对象。 1.面向对象&#xff1a; 以“对象”伪中心的编程思想&#xff0c;把要解决的问题分解成对象&#xff0c;简单理解为套用模版&#xff0c;注重结果。 2.面向过程&#xff1a; 以“整体事件”为中心的编程思想&#xff0c;把解决问题的步骤分析出…

就业班 第四阶段(docker) 2401--5.29 day3 Dockerfile+前后段项目若依ruoyi

通过Dockerfile创建镜像 Docker 提供了一种更便捷的方式&#xff0c;叫作 Dockerfile docker build命令用于根据给定的Dockerfile构建Docker镜像。docker build语法&#xff1a; # docker build [OPTIONS] <PATH | URL | ->1. 常用选项说明 --build-arg&#xff0c;设…

Windows安装Docker

启用虚拟化 打开 勾选Hyper-V 验证 下载Docker Docker官网 阿里云 安装Docker 傻瓜式安装 遇到问题&#xff1a; 打开命令窗口&#xff0c;执行命令&#xff1a; wsl --update升级完成之后点击Restart按钮即可 切换阿里镜像 https://fmkoym4e.mirror.aliyuncs.com

Firebase Local Emulator Suite详解

文章目录 Firebase Local Emulator Suite 组件安装和使用步骤1. 安装 Firebase CLI2. 初始化 Firebase 项目3. 配置模拟器4. 启动模拟器5. 配置应用程序使用本地模拟器 常见用途 Firebase Local Emulator Suite 是一组本地服务&#xff0c;可以模拟 Firebase 平台的在线服务&am…

每天写两道(五)合并两个有序链表、最长回文子串

21.合并两个有序链表 . - 力扣&#xff08;LeetCode&#xff09; 将两个升序链表合并为一个新的 升序 链表并返回。新链表是通过拼接给定的两个链表的所有节点组成的。 示例 1&#xff1a; 输入&#xff1a;l1 [1,2,4], l2 [1,3,4] 输出&#xff1a;[1,1,2,3,4,4] (1)迭代法…

小白教你搭建测试环境(docker部署版)

如何使用docker创建多数据库端口&#xff08;云服务器版&#xff09; 背景&#xff1a; 需要搭建一个测试环境&#xff0c;同时还需要不同的端口映射mysql端口。那么我采用的docker拉取mysql镜像&#xff0c;通过宿主机和docker容器端口映射完成。 准备一台云服务器服务器安装…

如何跨渠道分析销售数据 - 6年软件销售经验小结

如何跨渠道分析销售数据 - 6年软件销售经验小结&#xff08;1&#xff09; 【前言】 在我过去6年销售工作生涯中&#xff0c;从第一年成为公司销冠后&#xff0c;我当时的确自满的一段时间&#xff0c;认为自己很了不起。但是第一年的销售业绩并没有拿到提成&#xff0c;最终…

初识C++ · 模拟实现list

目录 前言 1 push_back pop_back 2 迭代器类 2.1 ! 2.2 -- 2.3 * 3 Print_List 4 有关自定义类型 5 有关const迭代器 6 拷贝构造 赋值 析构 Insert erase 前言 有了string&#xff0c;vector的基础&#xff0c;我们模拟实现list还是比较容易的&#xff0c;这里同…

Pandas 使用 concat 数据合并你学会了吗?

1. 使用pd.concat()级联 pandas使用pd.concat函数&#xff0c;与np.concatenate函数类似 # 导包import numpy as npimport pandas as pd​# 为方便讲解&#xff0c;我们首先定义一个生成DataFrame的函数def make_df(indexs,columns): data [[str(j)str(i) for j in colum…

PWN-栈迁移

栈迁移 题目&#xff1a;BUUCTF在线评测 (buuoj.cn) 知识点&#xff1a;栈迁移 使用情况&#xff1a;题目中有栈溢出&#xff0c;但是 栈溢出的范围 有限&#xff0c;导致构造的ROP链不能完全写入到栈中&#xff0c;此时需要进行栈迁移&#xff0c;将栈迁移到能接受更多数据的…

go语言基于Gin集成后台管理系统开发定时任务管理cron/v3好用又好看

系统目前是支持两种定时类型&#xff0c;一种是函数类型&#xff0c;一种是接口类型&#xff0c;来支持多样的业务&#xff1b;时间周期可视化选择&#xff0c;方便设定执行周期。框架UI漂亮&#xff0c;添加管理定时任务设置简单&#xff0c;客户都可以做自己调整执行时间周期…