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

例如:(新建文档在内面打入5个中文与英文的翻译用C语言来运行内面的单词)最主要.如系统随机出中文你要打出英文,错误的显示答案错误:请各位高手帮帮忙!
还有请多写几行注释.本人刚刚学C语言

#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个中文与英文
温馨提示:内容为网友见解,仅供参考
无其他回答

用C语言来随机输出一个中文你打英文!
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(...

C语言如何随机输出一个单词?
我只知道随机输出一个数值:include<stdio.h>main(){ int i; i=rand(); printf("%d\\n",i);}

求一个c语言程序代码,输入一串汉字(<=15个)随机输出一个
include <stdio.h>#include <stdlib.h>#include int main(){char buffer[35];int i = 0;srand(time(NULL));while(1){buffer[i] = getchar();if((i&0x01) == 0 && buffer[i] == '\\n') break;i++;}i++;i\/=2;i = rand()%i * 2;buffer[i+2] = 0;printf("%s\\n", ...

怎么用C语言随机输出中文.英文.数字的字符串啊?
char* strList[1000]; \/\/用来存储这些字符串 首先要把文件里的字符解析成单词放到strList里,一般是以空格作为分隔符。然后按照字符串的长度进行排序就可以了。最后怎么显示就看你需要了。

C语言中如何随机输出一个字母
include <stdio.h> include<stdlib.h> include void main(){ int i;char c;srand((unsigned)time(NULL));i=rand()&1;\/\/i用来控制产生的字母是大写还是小写 if(i==0)c='A'+rand()%26;else c='a'+rand()%26;printf("%c\\n",c);} ...

C语言中如何随机输出一个字母?
用下面代码就可以了:int upcase = rand()%2;(char)(upcase?'a':'a'+ rand()%26);不过生成随即数要用srand函数时间作为种子数,要不生成随即数不好。

C语言如何随机输出一个字符串?
随机输出一个字符串,其实就是要随机生成一个字符串并输出。要实现这一点,可以通过rand函数来实现。具体示例代码如下:include <stdio.h>#include <stdlib.h>#include #define STR_LEN 10\/\/定义随机输出的字符串长度。#define CHAR_MIN 'a'#define CHAR_MAX 'z' \/\/定义输出随机字符串每个字符的...

在c语言中怎样使用rand随机函数随机产生一个字母?
rand()生成的结果是一个整数,如果想得到字符(字母),则需要控制得到的数据在'a- 'z'的ascii值之间的数据,给你一个生成大写字母的\\x0d\\x0aint getRandChar()\\x0d\\x0a{\\x0d\\x0aint ch;\\x0d\\x0asrand(time(NULL));\\x0d\\x0ach=rand()%26; \/\/生成0-25的值\\x0d\\x0ach ...

求一个c语言程序代码,输入一串汉字(<=15个)随机输出一个
int i = 0;srand(time(NULL));while(1){buffer[i] = getchar();if((i&0x01) == 0 && buffer[i] == '\\n') break;i++;}i++;i\/=2;i = rand()%i * 2;buffer[i+2] = 0;printf("%s\\n", &buffer[i]);return 0;} 已赞过 已踩过< 你对这个回答的评价是? 评论 收起 ...

c语言如何输出随机字母
int main(){ int i = 0;srand(time(0));\/\/输出100个随机字母 for(i=0; i<100; i++){ putchar('a' + rand()%26);} }

相似回答