植物信息查询系统
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
植物信息查询系统
这是我编的一个植物信息查询系统,有没有高手帮我解决一下,为什么查找不出我要的信息,运行时遇到问题需要关闭?
#include
#include
#include
//植物信息结构体
struct plant
{int num;
char Chinesename[5];
char Latinname[15];
char keming[6];
char adress[7];
char feature[40];
char value[40];
} plan[30];
//植物信息数组
void Chinese()//按中文名称查询
{ FILE *fp;
int i;
char Chinesename[20];
if((fp=fopen("C:\\Documents and Settings\\Administrator\\桌面\\1.txt","r"))==NULL)
{printf("文件不能打开\n");
exit(0);
}
printf("请输入植物中文名称: \n");
scanf("%s",Chinesename);
for(i=0;fread(&plan[i],sizeof(struct plant),1,fp)!=0;i++)
{
if(strcmp(Chinesename,plan[i].Chinesename)==0)
printf("%d %s %s %s %s %s\n",plan[i].num,plan[i].Chinesename,plan[i].adress,plan[i].feature, plan[i].keming,plan[i].Latinname,plan[i].value);
}
fclose(fp);
}
void Latin()//按拉丁名称查询
{FILE *fp;
char adress[30];
if((fp=fopen("C:\\Documents and Settings\\Administrator\\桌面\\1.txt","r"))==NULL)
{printf("文件不能打开\n");
exit(0);
}
printf("请输入植物拉丁名称:\n");
scanf("%s",adress);
for(j=0;fread(&plan[j],sizeof(struct plant),1,fp)!=0;j++)
{
if(strcmp(adress,plan[j].adress)==0)
printf("%d %s %s %s %s %s\n",plan[j].num,plan[j].Chinesename,plan[j].adress,plan[j].feature,p lan[j].keming,plan[j].Latinname,plan[j].value);
}
fclose(fp);
}
void feature()//按形态特征查询
{FILE *fp;
int k;
char feature[30];
if((fp=fopen("1","r"))==NULL)
{printf("文件不能打开\n");
exit(0);
}
printf("请输入植物特征:\n");
scanf("%s",feature);
for(k=0;fread(&plan[k],sizeof(struct plant),1,fp)!=0;k++)
{
if(strcmp(feature,plan[k].feature)==0)
printf("%d %s %s %s %s %s\n",plan[k].num,plan[k].Chinesename,plan[k].adress,plan[k].featur e,plan[k].keming,plan[k].Latinname,plan[k].value);
}
fclose(fp);
}
void value()//按经济价值查询价值
{FILE *fp;
int t;
char value[30];
if((fp=fopen("1","r"))==NULL)
{printf("文件不能打开\n");
}
printf("请输入植物拉丁名称:\n");
scanf("%s",value);
for(t=0;fread(&plan[t],sizeof(struct plant),1,fp)!=0;t++)
{
if(strcmp(value,plan[t].value)==0)
printf("%d %s %s %s %s %s\n",plan[t].num,plan[t].Chinesename,plan[t].adress,plan[t].feature,p lan[t].keming,plan[t].Latinname,plan[t].value);
}
fclose(fp);
}
void del()//删除植物信息
{FILE *fp,*fp1;
char name[30];
int m;
printf("请输入要删除的植物名称:\n");
scanf("%s",name);
fp=fopen("1","r");
fp1=fopen("delete","w");
for(m=0;fread(&plan[m],sizeof(struct plant),1,fp)!=0;m++)
if(strcmp(plan[m].Chinesename,name)==0)
fwrite(&plan[m],sizeof(struct plant),1,fp1);
fclose(fp);
fclose(fp1);
}
void revise()//修改植物信息
{FILE *fp,*fp2;
char nam,rev;
int e;
printf("请输入您要修改的植物名称:\n");
scanf("%s",nam);
fp=fopen("1","w");
for(e=0;fread(&plan[e],sizeof(struct plant),1,fp)!=0;e++)
fp2=fopen("xiugai.txt","r");
fwrite(&plan[e],sizeof(struct plant),1,fp2);
scanf("%s",rev);
fclose(fp);
fclose(fp2);
}
void add()//追加植物信息