fclose(fp); //关闭文件
}
void sort() //按字典排序
{
int i,j;
char temp[MAX_CHAR];
for(i=0;i<num-1;i++) //比较法排序
{
for(j=num-1;j>i;j--)
if(strcmp(s[j-1].en,s[j].en)>0) //strcmp(s1,s2) 判断两个字符串s1和s2是否相同,相同返回true,不同返回false
{
strcpy(temp,s[j-1].en);
strcpy(s[j-1].en,s[j].en);
strcpy(s[j].en,temp);
strcpy(temp,s[j-1].ch);
strcpy(s[j-1].ch,s[j].ch);
strcpy(s[j].ch,temp);
}
}
}
void add() //添加单词信息
{
int i=num,j,flag=1;
while(flag)
{
flag=0;
printf("\n请输入单词的英文形式:");
scanf("%s",s[i].en);
for(j=0;j<i;j++)
if(strcmp(s[i].en,s[j].en)==0) //判断文件中是否有这个单词
{
printf("已有该单词,请检查后重新录入!\n");
flag=1;
break; //如有重复立即退出该层循环,提高判断速度
}
}
printf("\n请输入单词的中文形式:");
scanf("%s",s[i].ch);
num++;
printf("\n您输入的信息为: 英文: %s 中文: %s ",s[i].en,s[i].ch);
sort();
}
void del() //删除单词信息
{
int i=0,j=0;
char en[MAX_CHAR]; //英文形式
printf("\n请输入你要删除的单词英文形式:");
scanf("%s",en);
for(i=0;i<num;i++) //先找到该英文形式对应的序号
if(strcmp(s[i].en,en)==0)
{
for(j=i;j<num-1;j++) //后面的单词向前移动
s[j]=s[j+1];
num--; //数量减少1
return;
}
printf("\n没有这个单词!");
}
void modify() //修改单词信息
{
int i=0,choose=0,flag=1,number=0; //chooses代表选项标识,flag代表是否找到单词
char en[MAX_CHAR]; //英文形式