用C语言来随机输出一个中文你打英文!

例如:(新建文档在内面打入5个中文与英文的翻译用C语言来运行内面的单词)最主要.如系统随机出中文你要打出英文,错误的显示答案错误:请各位高手帮帮忙!还有请多写几行注释.本... 例如:(新建文档在内面打入5个中文与英文的翻译用C语言来运行内面的单词)最主要.如系统随机出中文你要打出英文,错误的显示答案错误:请各位高手帮帮忙!
还有请多写几行注释.本人刚刚学C语言
展开
 我来答
皇家救星1985
2007-10-25 · TA获得超过1131个赞
知道大有可为答主
回答量:1579
采纳率:0%
帮助的人:1649万
展开全部
#include <stdlib.h>
#include <stdio.h>
#include <time.h>

int main()
{
char word[20][2][20];//字符串数组,储存单词及对应的翻译
char answer[20];//字符串数组,储存用户输入答案
char flag = 'y';//退出标志
int i = 0;
FILE *fp;//文件指针,指向打开的文件

fp = fopen("conect.txt", "r");//打开 conect.txt 文件(里面保存了单词及翻译)

if(fp == NULL)//如果打开不成功,则退出
return -1;

while(i < 5)//读入5个单词及其翻译
{
fscanf(fp, "%s", word[i][0]);//word[i][0]里面存的是中文
fscanf(fp, "%s", word[i++][1]);//word[i][1]里面存的是中文对应的翻译
}

while(flag == 'y')//当退出标志是y时,一直重复做以下的事情
{
srand( (unsigned)time( NULL ) );//在生成随机数前必要的操作,设置随机种子
i = rand() % 5;//随机生成一个小于5的数

printf("please input your answer\n");//提示用户回答
printf("%s\n", word[i][0]);//输入第i个单词的中文

gets(answer);//读入用户输入的答案

if( !strcmp(answer, word[i][1]) )//比较用户输入的答案与标准的答案
{
//strcmp是字符串比较函数
//如果用户输入的答案answer与第i个单词的翻译相同
printf("GOOD! U R RIGHT!\n");
}
else
{
printf("error answer!\n");//否则输出错误提示和正确答案
printf("the answer is %s\n", word[i][1]);
}

printf("input y to continue orther to exit\n");
scanf("%c", &flag);//输入一个字母,如果字母是y则再生成一个单词让用户翻译
//如果不是y,则退出程序
gechar();//消除多余回车影响
}
return 0;

}

--------------------------------------------------------------
在你的C文件同目录下新建一个名为conect.txt的文本文件,内容如下
---------------------------------------------------------------

yes
不是
no
真的
really

good

bad
---------------------------------------------------------------
格式是一行中文,下一行是翻译

至少要有5个中文与英文
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式