C++报告
- 格式:docx
- 大小:1.17 MB
- 文档页数:27
维生素c实验报告维生素C实验报告维生素C是一种重要的营养素,对人体健康起着重要的作用。
为了深入了解维生素C的特性以及其在不同环境条件下的稳定性,我们进行了一系列实验。
实验一:维生素C的含量测定我们首先测定了某品牌橙子中维生素C的含量。
实验步骤如下:1. 将橙子切开,挤取橙汁。
2. 取一定量的橙汁,加入已知浓度的碘液。
3. 碘液会与维生素C发生反应,产生蓝色的混合物。
4. 通过比色法,测定蓝色混合物的吸光度,从而计算出维生素C的含量。
实验结果显示,每100毫升橙汁中含有约30毫克的维生素C。
这个结果与维生素C的日常摄入量推荐值相符,说明橙汁是一种良好的维生素C来源。
实验二:维生素C的稳定性为了探究维生素C在不同环境条件下的稳定性,我们进行了一系列实验。
实验一:光照条件下的稳定性我们将维生素C溶液分别暴露在不同光照条件下,包括强光、弱光和黑暗。
经过一段时间后,我们测定了维生素C溶液中维生素C的含量。
实验结果显示,强光条件下,维生素C的含量显著降低,损失约30%;弱光条件下,维生素C的损失约为10%;而在黑暗条件下,维生素C的损失非常小。
这表明,光照是维生素C降解的主要因素之一,因此在保存维生素C时,应尽量避免阳光直射。
实验二:温度条件下的稳定性我们将维生素C溶液分别置于不同温度下,包括常温、冷藏和冷冻。
经过一段时间后,我们测定了维生素C溶液中维生素C的含量。
实验结果显示,常温条件下,维生素C的含量损失最快,损失约为50%;冷藏条件下,维生素C的损失约为20%;而在冷冻条件下,维生素C的损失非常小。
这表明,温度也是维生素C降解的重要因素之一,因此在保存维生素C时,应尽量将其冷藏或冷冻。
综合实验结果,我们可以得出以下结论:1. 橙汁是一种良好的维生素C来源,每100毫升橙汁中含有约30毫克的维生素C。
2. 光照是维生素C降解的主要因素之一,应避免阳光直射。
3. 温度也是维生素C降解的重要因素之一,应将其冷藏或冷冻以延缓维生素C的损失。
维生素C含量的测定实验报告一、实验目的本次实验旨在掌握一种常见且有效的测定维生素 C 含量的方法,了解维生素 C 的化学性质和在不同样品中的含量差异,提高实验操作技能和数据处理能力。
二、实验原理维生素 C 又称抗坏血酸,具有较强的还原性。
在酸性溶液中,维生素C 能将染料2,6-二氯酚靛酚还原成无色的还原型。
当染料被还原后,溶液的颜色会发生变化。
利用这个特性,通过滴定法可以测定维生素C 的含量。
在滴定过程中,当溶液中的维生素 C 全部被氧化后,再滴加的染料溶液会使溶液呈现粉红色,此时即为滴定终点。
根据染料的用量,可以计算出样品中维生素 C 的含量。
三、实验材料与仪器1、材料新鲜水果(如橙子、柠檬等)、维生素 C 药片。
2、仪器电子天平、容量瓶(100 mL、250 mL)、移液管(5 mL、10 mL)、酸式滴定管(50 mL)、锥形瓶(250 mL)、玻璃棒、烧杯(100 mL、500 mL)、漏斗、滤纸、研钵。
3、试剂2%草酸溶液、0001 mol/L 2,6-二氯酚靛酚溶液。
四、实验步骤1、样品处理(1)水果样品:称取新鲜水果 50 g,用研钵研碎,加入 50 mL 2%草酸溶液,搅拌均匀,过滤,滤液收集在 100 mL 容量瓶中,用 2%草酸溶液定容至刻度,摇匀备用。
(2)维生素 C 药片:将维生素 C 药片研磨成粉末,称取适量粉末(相当于 50 mg 维生素 C),用 2%草酸溶液溶解并转移至 100 mL 容量瓶中,定容至刻度,摇匀备用。
2、滴定(1)用移液管准确吸取 10 mL 样品溶液于 250 mL 锥形瓶中,加入20 mL 2%草酸溶液,用 0001 mol/L 2,6-二氯酚靛酚溶液滴定,边滴边摇动锥形瓶,直至溶液呈现粉红色,并在 15 秒内不褪色,即为终点。
记录消耗的 2,6-二氯酚靛酚溶液的体积(V1)。
(2)同时做空白实验,即在 250 mL 锥形瓶中加入 30 mL 2%草酸溶液,用 0001 mol/L 2,6-二氯酚靛酚溶液滴定至终点,记录消耗的体积(V0)。
c测绘报告的质检标准
测绘报告的质检标准是一个复杂而多方面的主题,它涉及到许多专业领域和技术细节。
以下是一些常见的测绘报告的质检标准,这些标准可能因应用领域和具体需求而有所不同:
1. 数据准确性:这是最基本的质量标准之一。
测绘数据必须准确反映实际情况,误差必须在可接受的范围内。
2. 完整性:报告应包含所有必要的数据和信息,不存在缺失或遗漏。
3. 规范性:报告应符合行业标准和规范,包括格式、术语、单位等。
4. 清晰性:报告应易于理解,无论是文字描述还是图表展示都应清晰明了。
5. 一致性:报告中的数据和信息应保持一致,避免自相矛盾。
6. 可追溯性:所有的数据和信息应能够追溯到其原始来源,以保证数据的可靠性。
7. 可重复性:同一份报告在不同的时间或由不同的人进行检验时,应能够得出相同的结果。
8. 合规性:报告应符合相关的法律、法规和政策要求。
9. 安全性:报告中的数据和信息应受到保护,防止未经授权的访问和泄露。
10. 时效性:报告应反映最新的数据和信息,保证其及时性和有效性。
这些标准是相互关联的,并且在实际操作中可能会根据具体的情况有所侧重。
此外,对于不同的应用领域和特定需求,可能还需要额外的标准和要求。
因此,在编写测绘报告时,应充分考虑这些标准,并确保报告的质量符合预期的要求。
C语言实验报告C语言实验报告1一周的C语言实训,虽然时间略显仓促,但却让我学到了很多实际运用的技能!一、心得与感想首先,在实训中的第一步是编写功能较为单一的小程序,虽然是小程序,但所用的知识却都是我们本学期学习的重点知识。
在做题的过程中让我们把这些知识复习了一遍,强化了知识!其次,这次作中所碰到的题目,在实训中已经接触过,所我们都比较深知这些题目的要求和算法,因次在编写小程序时比较快,而且算法也是比较简化,运算准确。
鉴次我明白很多编程题要经过多次编写修改与调试,才会得到最简略的算法。
再次,平时我们学C语言视乎都是为了考试或者做一些比较常规的题目,而这次实训却给我们的将所学知识运用于解决实际问题的机会,让人更有激情,这就是编写软件的在雏形,也让我们感受到了编写软件程序的乐趣。
但是不仅仅是如此,更为重要的是在运用所学知识的过程中,记住这些知识,并能够广泛的运用!虽然我这次是编写一个菜单的程序,但是如果我么留心的话,我们身边有许多电子设备都是内置有程序的,我们也可以在此次专题实训过后,自行确定其他的专题进行编写程序,这样可以让我们的知识更加深化丰富!这次实训似乎是对我巨大的考验,程序在不慌不忙的进行着,按照我自身的进度,提前完成是没有问题的,但是很多客观条件让我不得不在最后的时间里才上交的作业。
每当我把程序写完以后,却由于每一台电脑的识别格式不一样而导致我所写的文件一次次的被损坏,尽管这样,我仍然没有放弃,最后还赶在截止时间到来之前上交了我的作业!这一次编写大作业的程序又让我感受到学程序可以锻炼缜密的思维了。
因为平时练习的都是小程序,所以句段比较少,一些错误都很容易被检查出来,但是这次实训却是上百段的语句,难以检查,似乎也没有经验去怎么检查,那一刹那感觉到很急,但又不知如何是好,可是又不轻易的向老师询问,因为好像蛮简单,相信自己能够检查出来,所以我一般都是独立思考的完成的,只有少部分是在老师和与同学讨论下完成的。
维生素c的小实验报告维生素C的小实验报告维生素C是一种重要的营养物质,对人体健康有着重要的作用。
为了更好地了解维生素C的特性和功能,我们进行了一项小实验。
实验的目的是探究维生素C在不同条件下的稳定性和抗氧化能力。
我们选取了三种不同的水果,分别是橙子、苹果和草莓,这些水果都富含维生素C。
实验过程中,我们将这些水果分别置于不同的环境中,观察维生素C的含量变化。
首先,我们将橙子、苹果和草莓分别切成小块,然后将它们放在室温下的不同时间段内观察。
结果显示,橙子中的维生素C在相对较长的时间内保持较为稳定,而苹果和草莓中的维生素C则逐渐减少。
这可能是因为橙子中的维生素C含量较高,相对较不容易受到氧化的影响。
接下来,我们进行了一项抗氧化实验。
将橙子、苹果和草莓的汁液分别放置于不同的试管中,然后加入一定量的氧化剂。
通过观察试管中的颜色变化,我们可以判断维生素C的抗氧化能力。
结果显示,橙子汁液的颜色变化最为缓慢,而苹果和草莓汁液则较快发生颜色变化。
这表明橙子中的维生素C具有较强的抗氧化能力。
进一步地,我们将维生素C溶液分别加热和冷冻处理,观察其在不同温度下的稳定性。
结果显示,加热处理后的维生素C溶液中的维生素C含量明显减少,而冷冻处理对维生素C的稳定性没有明显影响。
这说明维生素C对高温敏感,而对低温相对稳定。
除了环境因素,我们还对维生素C的含量进行了测量。
通过使用一种化学试剂,我们可以将维生素C转化为另一种物质,并通过测量其吸光度来确定维生素C的含量。
结果显示,橙子中的维生素C含量最高,苹果次之,草莓含量最低。
这与我们之前的观察结果一致。
通过这个小实验,我们对维生素C的特性和功能有了更深入的了解。
维生素C 在不同条件下的稳定性和抗氧化能力都与其含量有关。
为了保持维生素C的稳定性,我们可以选择适当的储存方式和温度,避免暴露在高温环境中。
此外,多摄入富含维生素C的水果和蔬菜也是保持身体健康的重要途径。
维生素C在人体中具有许多重要的功能,如促进铁的吸收、增强免疫力和抗氧化等。
学生成绩管理系统c 报告致谢引言学生成绩管理系统是一个用于学校管理学生学习成绩的重要工具。
在系统的开发过程中,我们受益匪浅,得到了许多人的帮助和支持。
在此,我们要向下面的人致以诚挚的感谢。
指导老师首先,我们要感谢我们的指导老师。
在整个项目开发过程中,老师给予了我们悉心的指导和支持。
无论是在需求分析、系统设计还是编码过程中,老师都给予了耐心解答和建议。
老师的专业知识和丰富经验为我们解决了许多问题,使我们的系统得以顺利开发。
感谢老师对我们的悉心指导!同学们的帮助在项目的设计和实现过程中,我们还得到了很多同学们的帮助。
有的同学在需求调研时提供了宝贵的建议,有的同学在问题解决时给予了细致耐心的帮助。
正是由于同学们的支持和帮助,我们才能够顺利地完成整个项目。
当遇到问题时,我们通常会相互交流和讨论,通过集思广益解决困难。
每个人都愿意分享自己的想法和经验,这种合作精神使我们能够在项目开发中取得良好的效果。
在此,特别要感谢那些给予我们重要帮助的同学,你们的努力与贡献使得项目达到了预期目标。
开源社区在学生成绩管理系统的开发过程中,我们借鉴了许多优秀的开源项目。
通过研究和学习这些开源项目的源码,我们获得了许多宝贵的经验和技巧。
通过开源社区的贡献者们的努力,我们可以免费地使用这些优秀的开源软件和库。
在这里,我们要感谢这些贡献者们无私奉献的精神,感谢他们共享自己的工作成果,让我们受益匪浅。
开源社区的存在为我们提供了一个良好的学习和交流的平台,使我们能够更好地完成学生成绩管理系统的开发。
总结通过学生成绩管理系统的设计和实现,我们学到了很多宝贵的经验和知识。
在项目开发过程中,我们得到了很多人的帮助和支持,他们在不同的方面给予了我们悉心的指导和建议。
在此,我们要向所有帮助过我们的人表示衷心的感谢。
感谢指导老师的悉心指导和支持,感谢同学们的帮助和合作,感谢开源社区的贡献者们。
正是由于你们的支持和帮助,我们才能够顺利地完成这个项目。
维生素c含量实验报告
维生素C含量实验报告
摘要:本实验旨在通过测定不同水果中维生素C的含量,比较其含量差异,从
而了解不同水果对人体健康的营养贡献。
实验结果表明,柠檬的维生素C含量
最高,而苹果的含量最低。
引言:维生素C是一种重要的营养物质,对人体健康有着重要的作用。
它不仅
可以增强免疫力,还可以促进铁的吸收,预防坏血病等疾病。
因此,了解不同
食物中维生素C的含量对我们选择健康食品具有重要意义。
实验方法:本实验选取了柠檬、橙子、苹果、草莓和西红柿五种常见水果,通
过化学方法测定其维生素C的含量。
首先,将每种水果分别制成汁液,然后用
碘酸钾溶液滴定,根据滴定消耗的溶液体积计算出维生素C的含量。
实验结果:经过实验测定,柠檬的维生素C含量为56mg/100g,橙子为
45mg/100g,苹果为20mg/100g,草莓为30mg/100g,西红柿为25mg/100g。
讨论:通过实验结果可以看出,柠檬的维生素C含量最高,而苹果的含量最低。
这与我们日常的饮食习惯相符,柠檬和橙子常被认为是维生素C的良好来源,
而苹果的维生素C含量相对较低。
因此,在日常饮食中,应该多食用富含维生
素C的水果,以满足人体对维生素C的需求。
结论:本实验通过测定不同水果中维生素C的含量,发现柠檬的含量最高,苹
果的含量最低。
这些结果对我们选择健康食品和合理膳食具有一定的指导意义。
希望通过这个实验,能够增强大家对维生素C的重要性的认识,引导大家养成
良好的饮食习惯。
c语言实验报告结果及分析#### 一、实验目的1. 学习如何使用函数;2. 了解函数的作用;3. 掌握C语言程序中函数的实现方法;4. 深入理解函数调用和参数传递。
#### 二、实验内容本次实验完成了一个函数factorial,它的作用是计算一个整数的阶乘。
实验代码:```c#include <stdio.h>int factorial(int n) //函数声明{int i; //定义变量int product = 1; //初始化变量for(i = 1; i<=n; i++) //循环语句{product *=i;}return product; //返回结果}int main(){int num;scanf("%d",&num); //输入变量printf("%d\n",factorial(num)); //调用函数return 0;}```#### 三、实验结果实验运行结果:实验结果验证了函数factorial的功能,它计算出了正确的结果:输入5,计算出120;输入4,计算出24。
#### 四、实验分析1. 在实验代码中,我们首先定义了一个函数factorial,并给出了它的参数n和返回值product。
然后,运用循环语句把参数n的各个数相乘,取得最终结果product,并用return语句把结果返回。
2. 然后,在进入main函数时,我们用scanf传入变量num,然后调用factorial函数计算num的阶乘,将结果用printf输出,这就完成了整个程序的工作。
3. 本实验验证了函数factorial的功能,完成了整数的阶乘计算任务,并且符合了性能要求,每次输入及计算结果都符合预期,可以满足实际使用需求。
征信报告c是什么意思
征信报告C通常指的是个人信用报告中的C级评级。
C级评
级是指个人在征信报告中的信用状况为“一般信用”,即个人的信用风险相对较高。
C级评级可能是由于个人有过逾期、欠款、拖欠等不良信用记录或者信用历史较短等原因而产生。
拥有C 级评级的个人在申请贷款、信用卡等信用产品时可能会面临较高的利率或者较难获得信用额度的问题。
因此,个人应该尽量维护良好的信用记录,避免产生不良信用记录,以提高个人信用评级。
维生素c含量的测定实验报告维生素 C 含量的测定实验报告一、实验目的1、掌握碘量法测定维生素 C 含量的原理和操作方法。
2、学会使用标准溶液进行滴定分析。
3、培养准确记录实验数据和处理实验结果的能力。
二、实验原理维生素 C 又称抗坏血酸,具有较强的还原性。
在酸性溶液中,维生素 C 可以与碘发生氧化还原反应。
反应式如下:C₆H₈O₆+ I₂ → C₆H₆O₆+ 2HI通过用已知浓度的碘标准溶液滴定维生素 C 溶液,当溶液中的维生素 C 完全反应后,溶液中出现蓝色即为终点。
根据碘标准溶液的用量和浓度,可以计算出维生素 C 的含量。
三、实验仪器与试剂1、仪器酸式滴定管(50mL)锥形瓶(250mL)容量瓶(100mL、250mL)移液管(25mL、50mL)电子天平玻璃棒烧杯(50mL、100mL)2、试剂碘标准溶液(005mol/L)淀粉指示剂(5g/L)稀醋酸溶液维生素 C 样品四、实验步骤1、碘标准溶液的标定准确称取基准物质三氧化二砷(As₂O₃)约 013g,置于 250mL 碘量瓶中。
加入 1mol/L 氢氧化钠溶液 5mL,微热使之溶解。
加入 2 滴酚酞指示剂,用 1mol/L 盐酸溶液中和至溶液红色褪去。
加入 50mL 水,20mL 1mol/L 碳酸氢钠溶液和 2mL 淀粉指示剂。
用碘标准溶液滴定至溶液呈蓝色,30s 内不褪色即为终点。
记录碘标准溶液的用量,平行测定 3 次,计算碘标准溶液的平均浓度。
2、维生素 C 样品溶液的配制准确称取维生素 C 样品约 02g,置于 100mL 容量瓶中。
用新煮沸并冷却的蒸馏水溶解并稀释至刻度,摇匀。
3、维生素 C 含量的测定用移液管准确移取 2500mL 维生素 C 样品溶液于 250mL 锥形瓶中。
加入 50mL 新煮沸并冷却的蒸馏水和 5mL 稀醋酸溶液。
加入 2mL 淀粉指示剂,立即用碘标准溶液滴定至溶液呈蓝色,30s 内不褪色即为终点。
记录碘标准溶液的用量,平行测定 3 次。
《面向对象的编程技术》课程设计实验报告班级:计算机科学与技术122姓名:丁阳光学号:129074040设计时间:2013年11~12月指导老师:胡增涛名称:基地保卫战!应用程序主题:运用各种类的继承,组合,实现基地保卫战这个游戏!本程序是在VS2010下编译的多文件程序,程序的功能主要有:可以按WASD键上下左右移动飞机,按f 键可以发射子弹,如果击落一架敌机,分值加一分。
俺E键是超级大招,可以瞬间把敌机横扫。
Q键是暂停,G键是退出游戏。
在屏幕的右上角可以显示分数和玩家的生命值,如果玩家的生命值小于零的话,则游戏结束!本程序的主要技术有:1:类的编写。
2:类的继承以及抽象类和多态的运用。
3:类的组合。
4:动态内存的分配运用。
5:链表的使用,以及用父类的指针来管理多态的技术。
类层次结构图应用程序的总体设计结构图主要运行界面的介绍:使用的是VS2010,首先建立一个win32控制台应用程序项目,选择要建立项目的位置,输入项目的名称;在弹出的页面中单击下一步,选择空项目。
然后单击完成,即可建立一个win32控制台应用程序项目。
然后在项目文件夹里面加入各种头文件和源文件。
等把主要的程序编写好后单击调试,产生exe可执行文件!截图如下:创新和难点:创新点:在本次课程设计实验中,创新性的加入了一个超级大招类,增加了可玩性;而且还有显示玩家生命值的功能,可以更好的显示玩家的生命状态;而且在每个对象死亡的时候,新建一个爆炸类加入了爆炸类的链表。
难点:我认为难点在于new一个对象,因为在编写的时候有时候会图省事而直接的输出字符,但这样不符合面向对象的思想。
所以响应事件的发生时候应该注意新建一个对象加入对象的链表,至于输出问题和判断生命值的问题那是属于链表要做的事情。
阐述创新的得意之处;我觉得加入了超级大招类,可以增加玩家的兴致,体会到把敌机击落的刺激!在开发过程中遇到的重点、难点问题及解决过程在开发的过程中,遇到的重点有抽象类的应用,多态的使用,以及预编译的使用!对于抽象类的应用,要注意到的问题是抽象类不能实例化对象!由于我所建立的工程是空工程,没有加入预编译处理命令,在使用父类继承的时候出现了类的重定义的问题,然后在父类Point类加入预编译命令之后问题就解决了。
还有在继承的过程中,父类一定要写构造函数,因为如果父类不写构造函数的话,而子类写了构造函数,系统不会自动生成一个构造函数!这时候就会出现没有合适的构造函数这样的错误提示!课程设计中目前存在的问题;由于没有加入判断时间的的函数,而是在主程序中使用了随机数产生条件来新建敌机。
导致敌机个数产生的不稳定,有时候少,有时候多,有时候完全没有!由于没有判断时间的函数,导致随机数产生敌机对象的时候代码有点长,主程序看起来稍显长!由于没有加入碰撞检测函数,而是在move函数中检测碰撞,导致代码的加长,和移植性不是太好。
每添加一个类都要写一段碰撞函数,有点繁杂!由于使用cout使用的比较多,导致了在清屏的时候会产生屏幕闪!只创建了一个玩家,没有增加双人模式;设计实践过程中的心得体会体会到面向对象的设计思想就是,对象各自管各自的,各个对象之间仅仅通过简单的外部借口相互联系。
例如在新建爆炸类的时候,在写碰撞函数的时候仅仅新建一个爆炸类,加入爆炸类的链表,而其他对象与其是无关的。
在链表是使用中,由于事先也是不确定要建多少对象,所以动态内存分配很重要!在面向对象的设计中,首先是把各个类写好,而至于函数怎么实现的,那是函数实现的问题。
要把主要框架构建好,然后再往里面加入各种复杂的东西!我也真正体会到面向对象设计的精髓所在,其精髓在于对象是一个整体,数据和函数封装在一起,使用的时候数据会喊好的保护,仅仅通过函数与外部发生关系!总之,在以前看起来很神秘的游戏,在现在看起来也不过是函数,类之间的相互作用。
程序运行截图主要程序解析1:基类,抽象类。
所有类都是由基类派生出来的。
#include<iostream>#ifndef HEAD_H#define HEAD_H ////////////////////////////////////预编译class TPoint{protected:int x,y;int mbleed;static int score;bool misdead;public:TPoint(int X,int Y,intBleed):x(X),y(Y),mbleed(Bleed),misdead(FALSE){} virtual void move()=0;virtual void draw()=0;void setXY(int X,int Y);void changeXY(int X,int Y){x=X;y=Y;}void setBleed(int Bleed){mbleed=Bleed;}int getBleed(){return mbleed;}void setScore(){ score++;}int getScore() {return score;}void dead(){misdead=TRUE; }bool isDead(){return misdead;}int getX(){return x;}int getY(){return y;}virtual ~TPoint(){}};#endif基类剖析:virtual void move()=0;virtual void draw()=0;此为两个纯虚函数,要在以后派生出来的类中全部实现。
为的是实现多态!static int score;静态数据成员,为的是统计分数值!2:玩家类;#include"TPoint.h"class PlayerPlane :public TPoint{public:PlayerPlane(int X,int Y,int Bleed):TPoint(X,Y,Bleed){}void draw();void showBleed();void changePoint(char P);void move();~PlayerPlane(){}private:int k;char p;};主要函数的实现:void PlayerPlane::draw(){printf("H");//setXY(x-1,y+1);//cout<<"HHH";}void PlayerPlane::changePoint(char P){switch(P){case's': k=1; break;case'w': k=2; break;case'a': k=3; break;case'd': k=4; break;case'f': mWorld.BulletLink().addTail(new Bullet(x,y,1));k=0;break;//新建的子弹假如子弹链表case'e': mWorld.SPBulletLink().addTail(new SPBullet(0,23,10));break;default : k=0;break;}}void PlayerPlane::showBleed(){int i;i=getBleed();setXY(62,1);cout<<"Bleed:"<<i;setXY(62,2);printf("—a—a—a—a—a—a—a—a");}void PlayerPlane::move(){ TLinkNode * pNode;pNode=mWorld.TEnemyPlaneLink().mheader;while(pNode) //还1不?到Ì?链¢¡ä尾2{if((pNode->mPoint->getX())==x&&(pNode->mPoint->getY())==y) {pNode->mPoint->setBleed(-1);setBleed(mbleed-1);}pNode = pNode->mNext;//取¨?得Ì?下?一°?个?飞¤¨¦机¨²}if(mbleed<=0){dead();return;}else{int a,b;a=getX();b=getY();setXY(a,b);if(a>=60)a=60;else if(a<=0)a=1;else if(b>=24)b=23;else if(b<=1)b=1;switch(k){case 4: setXY(a+1,b);a++;k=0; break;case 3: setXY(a-1,b);a--;k=0; break;case 2: setXY(a,b-1);b--;k=0; break;case 1: setXY(a,b+1);b++;k=0; break;default : break;}changeXY(a,b);}}玩家类剖析:主要是控制玩家飞机,左右上下移动,发射子弹,与敌军飞机碰撞检测等;体现面向对象的代码:case'f': mWorld.BulletLink().addTail(new Bullet(x,y,1));k=0;break; case'e': mWorld.SPBulletLink().addTail(new SPBullet(0,23,10));break; 动态内存分配,按F键新建个子弹加入子弹链表;按e键新建个超级大招假如超级大招链表;3:子弹类;#include"TPoint.h"class Bullet :public TPoint{public:Bullet(int X,int Y,int Bleed):TPoint(X,Y,Bleed){}virtual void draw();virtual void move();private:};继承了父类,并且实现了纯虚函数void Bullet::move(){TLinkNode * pNode;pNode=mWorld.TEnemyPlaneLink().mheader;while(pNode) //还1不?到Ì?链¢¡ä尾2{if((pNode->mPoint->getX())==x&&(pNode->mPoint->getY())==y-1){dead();mWorld.ExplodeLink().addTail(new Explode(x,y,0));pNode->mPoint->setBleed(0);setScore();}pNode = pNode->mNext;//碰撞检测,遍历整个敌军链表}if(y<=0){dead();mWorld.ExplodeLink().addTail(new Explode(x,y,0));}else{int a,b;a=x;b=y-1;changeXY(a,b);return;}}子弹类剖析:dead();mWorld.ExplodeLink().addTail(new Explode(x,y,0));如果子弹已经死了,则新建一个爆炸类假如爆炸类的链表,子弹与所有敌机碰撞检测;4 敌机类;#include"TPoint.h"class TEnemyPlane :public TPoint{public:TEnemyPlane(int X,int Y,int Bleed):TPoint(X,Y,Bleed){}void draw();void move();~TEnemyPlane(){}private:};纯虚函数的实现#include"Explode.h"#include"Score.h"#include"TWorld.h"using namespace std;void TEnemyPlane :: draw(){ setXY(x,y);printf("W");}void TEnemyPlane::move(){TLinkNode * pNode;pNode=mWorld.SPBulletLink().mheader;while(pNode) //{if((pNode->mPoint->getX())<=x&&(pNode->mPoint->getY())==y+2 ){dead();setScore();mWorld.ExplodeLink().addTail(newExplode(x,y,0));}pNode = pNode->mNext;//}if(mbleed<=0||y>=23||x<0||x>=61){dead();mWorld.ExplodeLink().addTail(new Explode(x,y,0));}主要思路:敌军飞机与目标碰撞检测,如果坐标相等的话,则打死亡标记,新建一个爆炸类假如爆炸类链表;dead();setScore();mWorld.ExplodeLink().addTail(new Explode(x,y,0));分数值加一。