4点程序设计报告.doc

  1. 1、本文档共9页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
4点程序设计报告

程序设计实践报告 ( 2011 / 2012学年 第 二 学期) 题 目: 算24点问题 专 业 _______________ 学 生 姓 名 _____________ 班 级 学 号 _____________ 指 导 教 师 王志伟 指 导 单 位 计算机学院信息安全系 日 期 2012.5.28 ~ 2012..8 评 分 细 则 评分项 优秀 良好 中等 差 遵守机房规章制度 上机时的表现 学习态度 程序准备情况 程序设计能力 团队合作精神 课题功能实现情况 算法设计合理性 用户界面设计 报告书写认真程度 内容详实程度 文字表达熟练程度 回答问题准确度 简 短 评 语 教师签名: 年 月 日 评分等级 备注 评分等级有五种:优秀、良好、中等、及格、不及格 算24点问题 课题内容和要求 、概要设计 表示的运算 op1、op2、op3 变量值 表示的运算 1 + 3 * 2 – 4 / 这样通过一个4重循环就可以枚举出不考虑括号情况的64种表达式类型。算法如下: for(op1=1;op1=4;op1++) ? ????for(op2=1;op2=4;op2++) ? ????????for(op3=1;op3=4;op3++) ? {得到一种不含括号的表达式情形:A?op1?B?op2?C?op3?D}? ((A+B)-C)*D (A+(B-C))*D A+(B-(C*D)) A+((B-C)*D) (A+B)-(C*D) 由于每一种表达式的计算顺序(优先级)不尽相同,为了避免表达式运算的麻烦,可以设置5个函数,分别对应每一种类型表达式的计算: 函数1:对应表达式类型:((A□B)□C)□Dfloat?calculate_model1(float?i,float?j,float?k,float?t,int?op1,int?op2,int?op3) ; ?:float?calculate_model1(float?i,float?j,float?k,float?t,int?op1,int?op2,int?op3) {??????????float?r1,r2,r3; ? r1?=?cal(i,j,op1); ? r2?=?cal(r1,k,op2); ? ?? r3?=?cal(r2,t,op3); ? ?? return?r3; ? } ? 函数2:对应表达式类型:(A□(B□C))□Dfloat?calculate_model2(float?i,float?j,float?k,float?t,int?op1,int?op2,int?op3);对应表达式类型:A□(B□(C□D))float?calculate_model3(float?i,float?j,float?k,float?t,int?op1,int?op2,int?op3);对应表达式类型:A□((B□C)□D)float?calculate_model4(float?i,float?j,float?k,float?t,int?op1,int?op2,int?op3);对应表达式类型:(A□B)□(C□D)float?calculate_model5(float?i,float?j,float?k,float?t,int?op1,int?op2,int?op3);?函数cal()包括3个参数,第3个参数为运算符变量,它标志着不同种类的运算符(如表1所示)。前两个参数为运算数。该函数的作用是将前两个参数指定的运算数进行第3个参数指定的运算,并返回其运算结果。算声明如下: float?cal(float?x,float?y,int?op); ? 详细设计 #includestdio.h char op[5]={#,+,-,*,/,}; float cal(float x,float y,int op) { switch(op) { case 1:return x+y; /*op等于1,加法运算*/ cas

文档评论(0)

小教资源库 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档