資源簡介

代碼片段和文件信息
#include
#include
#include
struct{
char?v[10];
int?f;
int?k;
}V[100];
struct{
char?ss[10];//
int?F;
}C[100];//定義結構體數組,用來保存輸入的癥狀類型
void?main()
{
?int?K;
??printf(“請輸入你要進行的操作,1專家診斷,2增加知識,3更新知識庫\n“);//進行選擇要輸入的操作
???scanf(“%d“&K);//輸入
???getchar();
???if(K==1){//如果輸入的是1,則進行專家診斷
???FILE?*fp;//定義一個文件指針
int?if1;//定義變量
int?j=0j1=0;//定義變量并賦值
int?l=0l1=0;//定義變量并賦值
int?m=0n=0;//定義變量并賦值
int?a=0;//定義變量并賦值
char?c;
char?s[30];
char?S[30];
for(i=0;i<100;i++){//循環
V[i].f=0;//給個標志位賦值為0
V[i].k=0;
C[i].F=0;
}
i=0;
printf(“請輸入您的癥狀按!結束\n“);//提示
c=getchar();//輸入
while(c!=‘!‘){//判斷是否輸入結束
if(c!=‘\n‘) //如果不是回車
????????C[m].ss[C[m].F++]=c;//把輸入的癥狀存入結構體變量
?else
?{
?C[m].ss[C[m].F++]=‘\0‘;//否則在字符串的末尾加字符串結束標志結束字符串輸入
? ?m++;//輸入癥狀的個數加1
?}
c=getchar();//接受一個字符
}
C[m].ss[C[m].F]=‘\0‘;//在輸入結束后,在最后一個字符串末尾加字符串結束標志
if((fp=fopen(“h““rb“))==NULL)//打開保存癥狀的文件
{
??printf(“文件打開出錯\n“);//如果文件出錯,則給出提示
??exit(0);
}
for(n=0;n<=m;n++)//循環
{ ??
?????while(!feof(fp))//當沒到文件末尾
?{
?a=0;//給a賦值為0
??????c=fgetc(fp);//接收從文件讀出的字符
???????while(c!=‘!‘)//當不是維生素結束的標志
{
???????if(feof(fp))//文件指針在文件末尾
??goto?l1;//跳出
???s[a++]=c;//
???????????c=fgetc(fp);//取一個字符
}
????????????s[a]=‘\0‘;//添加字符串結束標志
c=fgetc(fp);//從文件取一個字符
???????while(c!=‘#‘)//當不是癥狀結束表示時候,繼續
???{
????if(feof(fp))//如果文件指針到達文件末尾
?????goto?l1;//跳出
????????S[i++]=c;//把從文件中取出的字符賦給數組
????????c=fgetc(fp);//在從文件取一個字符
???}
????????S[i]=‘\0‘;//添加字符川結束標志
??if(strcmp(C[n].ssS)==0)//把輸入的癥狀和從文件中取出的癥狀進行比較
{ ???printf(“bb“);
??if(j==0)//如果相等
{
strcpy(V[0].vs);//把輸入的癥狀暫時存儲在數組中
f1=0;//標志為0
j++;//個數加1
//printf(“ss“);
}
else
????????for(j1=0;j1 if(strcmp(V[j1].vs)==0){//進行比較,如果想等
?????f1=j1; //把該癥狀對應的維生素標志賦給f1
?//printf(“aa“);
? break;//結束
}
if(j1==j&&f1!=j-1||j1==j&&f1==0){//如果輸入的癥狀和在癥狀暫存的數組C里沒有,則把癥狀存入該數組
strcpy(V[j].vs);//字符川賦值
f1=j;//癥狀想對應的維生素標志
j++; //癥狀個數加一
//printf(“dd“);
}
if(n==1){//如果n=1,責結束
printf(“\n“);//回車
// printf(“s=%s\n“s);
}
V[f1].k++;//癥狀的個數加1
}??
i=0;//i重新置0
j1=0;
}
l1:rewind(fp);
}?
if(j==0)
printf(“信息庫中沒有你要查找的消息\n“);
else
{
for(j1=0;j1<=j;j1++)
if(V[j1].k!=0)//如果V[j1].k!=0,說明在文件里能找到該癥狀
{
printf(“你缺乏的可能是:\n“);
printf(“維生素:“);
printf(“%s\n“V[j1].v);
printf(“因為缺乏該維生素可能會引起的癥狀是:“);
rewind(fp);//文件指針回到文件頭部
while(!feof(fp))//當文件指針不在末尾,則循環讀取數據
{
?????a=0;
?????????i=0;
?????????c=fgetc(fp);//取字符
?????????while(c!=‘!‘)//當不是維生素結束的標志
?{
??????????????if(feof(fp))//如果到文件末尾
??????break;//退出
??????s[a++]=c;//把字符賦給數組
??????????????c=fgetc(fp);//再次取字符
?}
?????????s[a]=‘\0‘;//添加字符串結束標志
?????c=fgetc(fp);//從文件取字符
?????????while(c!=‘#‘)//當不是癥狀結束標志,循環
?{
?????????if(feof(fp))//如果到文件末尾
?????????break;//退出
?????????????S[i++]=c;//字符賦給數組
?????????????c=fgetc(fp);//從文件取字符
?}
????????S[i]=‘\0‘;//字符川結束標志
if(strcmp(V[j1].vs)==0)//把從文件中取出的字符和輸入的字符進行比較
//
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件??????????0??2010-06-15?17:01??人工智能專家系統C語言\Debug\h
?????文件??????33792??2010-06-16?14:27??人工智能專家系統C語言\Debug\vc60.idb
?????文件??????53248??2010-06-16?14:26??人工智能專家系統C語言\Debug\vc60.pdb
?????文件?????196726??2010-06-16?14:26??人工智能專家系統C語言\Debug\專家系統.exe
?????文件?????199516??2010-06-16?14:26??人工智能專家系統C語言\Debug\專家系統.ilk
?????文件??????13864??2010-06-16?14:26??人工智能專家系統C語言\Debug\專家系統.obj
?????文件?????190756??2010-06-15?10:14??人工智能專家系統C語言\Debug\專家系統.pch
?????文件?????476160??2010-06-16?14:26??人工智能專家系統C語言\Debug\專家系統.pdb
?????文件?????180312??2008-06-19?07:41??人工智能專家系統C語言\Debug\專家診斷.exe
?????文件?????187496??2008-06-19?07:41??人工智能專家系統C語言\Debug\專家診斷.ilk
?????文件???????8995??2008-06-19?07:41??人工智能專家系統C語言\Debug\專家診斷.obj
?????文件?????190712??2008-06-19?07:41??人工智能專家系統C語言\Debug\專家診斷.pch
?????文件?????369664??2008-06-19?07:41??人工智能專家系統C語言\Debug\專家診斷.pdb
?????文件?????180312??2008-06-19?07:45??人工智能專家系統C語言\Debug\增加知識.exe
?????文件?????183836??2008-06-19?07:45??人工智能專家系統C語言\Debug\增加知識.ilk
?????文件???????4914??2008-06-19?07:45??人工智能專家系統C語言\Debug\增加知識.obj
?????文件?????184676??2008-06-19?07:45??人工智能專家系統C語言\Debug\增加知識.pch
?????文件?????369664??2008-06-19?07:45??人工智能專家系統C語言\Debug\增加知識.pdb
?????文件?????180314??2008-06-19?07:44??人工智能專家系統C語言\Debug\更新知識庫.exe
?????文件?????184072??2008-06-19?07:44??人工智能專家系統C語言\Debug\更新知識庫.ilk
?????文件???????5211??2008-06-19?07:44??人工智能專家系統C語言\Debug\更新知識庫.obj
?????文件?????184676??2008-06-19?07:44??人工智能專家系統C語言\Debug\更新知識庫.pch
?????文件?????369664??2008-06-19?07:44??人工智能專家系統C語言\Debug\更新知識庫.pdb
?????文件?????????27??2008-06-19?07:52??人工智能專家系統C語言\h
?????文件???????6003??2008-06-19?07:51??人工智能專家系統C語言\專家系統.c
?????文件???????3425??2010-06-15?10:14??人工智能專家系統C語言\專家系統.dsp
?????文件????????524??2010-06-15?10:14??人工智能專家系統C語言\專家系統.dsw
?????文件??????41984??2010-06-16?14:27??人工智能專家系統C語言\專家系統.ncb
?????文件??????48640??2010-06-16?14:27??人工智能專家系統C語言\專家系統.opt
?????文件????????764??2010-06-16?14:26??人工智能專家系統C語言\專家系統.plg
............此處省略23個文件信息
評論
共有 條評論