资源描述:
《设计一 基于框架专家系统设计》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、设计一基于框架专家系统的设计一、实验目的(1)通过本次综合设计,了解诊断咨询专家系统的基本原理与设计。(2)本实验旨在让学生对专家系统应用有一个初步的理解,增强学生的程序编写能力。二、实验设备及条件C语言三、实验原理及内容框架是一种表示概念或对象地一成不变知识的数据结构。在这个结构或组织中,新的资料可以用过去经验中得到的概念来分析和解释。框架通常采用语义网络中的节点-槽-值来表示结构。基本要求:1.汽车框架专家系统的设计,2.包括概念汽车和至少2个实例汽车,3.有继承性(和异常处理)功能,4.给出可使用汽车的结果,5.给出程序设计框
2、图、源程序和系统运行结果。四、实验步骤1)考虑下面两个表示“汽车”概念和“我的汽车”有关实例的框架实例,如表1所示。表1框架实例概念→实例汽车→我的汽车日期:未知→日期:1957生产商:未知→生产商:红旗颜色:未知→颜色:红色轮子:4→轮子:4启动:Procedure1→启动:Procedure1“汽车”框架列举出“所有”汽车的主要特征。大多数特征都是一般化的,因此它们的值在框架中都是未知的。但是,大多数汽车有4个轮子,因此在“汽车”框架中将这一点设置为默认值更恰当。另外,启动任何汽车都要遵循一些设定程序,如按点火键、供气等。这一系
3、列的任务在一些过程中实现,如Procedure1,并添加到“汽车”框架中。“我的汽车”框架表示“汽车”框架的实例。它从“汽车”框架上继承其特征和默认值。但是,它也有我的汽车特定的特征值。具有从一般性框架继承信息的实例框架,是基于框架的专家系统的优良特征之一。1)在vc++建立新的工程:分别按照框架实例进行定义:一、思考题#include#include#includevoidinput();voidsort();voiddisplay();voidinsert();voidmo
4、dify();intcount=0;structcar{ charname[20];//车名 charmodel[20];//车型 charcolor[20];//颜色 intcost;//单位进价 intprice;//单位售价 inttotal;//库存车辆总数 in
5、tprofit;//利润 intnum;//卖车数量 intstock;//卖车之后的库存数量 };structcarinfo[50];voidaddrecord(){inti=0;charc_pd;//pd为判断是否还要继续输入FILE*fp;//打开文件if((fp=fopen("c:\database\database.txt","a"))==0){printf("Cannotopenfile!");exit(0);}//以二进制读写的形式创建
6、一个保存文件do{printf("pleaseenterarecord:");printf("thecaris'name,number,UnitCost,SellingPrice,color':");scanf("%s,%d,%d,%d,%s,",info[i].name,info[i].num,info[i].cost,info[i].price,info[i].color);//输入汽车信息count++;fwrite(&info[i],sizeof(info),50,fp);//存入文件中printf("continu
7、eenter?yesenter'y'; noenter'n'");//是否继续输入号码记录fflush(stdin);//清空缓存scanf("%c",&c_pd);if(c_pd=='y')i++;}while(c_pd=='y');fclose(fp);}voidmain()/*主函数*/{intselect;/*功能选择模块*/do{printf("tttt1.Displaythelistofallcarrecord");printf("tttt2.Addanewrecord");printf
8、("tttt3.Modifyanexistingrecord");printf("tttt4.SalesandProfits");printf("tttt5.Sortthelistofcarinalph