删除小孩C++实验报告
- 格式:doc
- 大小:53.50 KB
- 文档页数:3
C语言程序设计实验实验报告7实验名称:链表实现学生信息管理系统实验目的:通过设计链表实现学生信息管理系统,掌握链表的操作方法及其应用。
实验内容:设计一个学生信息结构体,包括学号、姓名、性别、年龄和成绩五个成员变量,并选择链式结构存储这些数据。
实现以下功能:1. 添加学生信息:从键盘输入学号、姓名、性别、年龄和成绩等信息,添加到链表中。
2. 删除学生信息:从链表中删除指定学号的学生信息。
5. 按成绩排序:按学生的成绩从高到低排序,并输出所有学生的信息。
7. 退出程序:退出学生信息管理系统。
实验方法:1. 设计学生信息结构体,定义链表节点结构体,并编写初始化链表和销毁链表的函数。
2. 编写添加学生信息函数,新建链表节点并插入链表末尾。
3. 编写删除学生信息函数,根据学号查找需要删除的节点,先将该节点从链表中删除,再释放节点空间。
4. 编写修改学生信息函数,根据学号查找需要修改的节点,并修改其成员变量。
6. 编写按成绩排序函数,使用冒泡排序法对链表进行排序,并输出所有学生的信息。
7. 编写输出所有学生信息函数,遍历链表并输出每个节点的信息。
8. 完成学生信息管理系统的主函数,实现菜单及相应功能的选择。
实验结果:依次选择菜单中的各个功能,添加、修改、删除、查找、排序和输出学生信息都能实现。
经测试,程序稳定运行,功能正常,符合需求。
本次实验主要让我们掌握了链式结构的概念、链表节点的定义、链表的初始化、插入、查找、删除和销毁链表的操作方法,以及在实际应用中如何使用链表来实现数据管理。
虽然链表操作相对于数组稍微有些繁琐,但其可以灵活处理数据结构的长度变化,具有更高的可扩展性和更好的操作效率,可以更好的适应各种实际需求。
在实验中,还需要注意节点指针的正确使用、各个函数之间的调用关系和输入输出数据格式的合理选择等问题,以保证程序能够正常运行。
同时,还需要保持认真细致的态度,严格按照实验需求和要求来完成每个步骤,以达到更好的实验效果和运行效率。
c语言上机报告C语言上机报告(C Programming Report)一、背景介绍我们学校的C语言课程要求我们每个学期都要完成一些上机实验。
本次上机实验主要是让我们巩固和应用所学的C语言知识,加深对C语言的理解和掌握。
二、实验内容本次实验主要是编写一个简单的学生信息管理系统。
要求实现以下功能:1. 添加学生信息:输入学生的姓名、年龄、性别和学号,并将其添加到学生信息库中。
2. 删除学生信息:通过输入学生的学号,从学生信息库中删除该学生的信息。
3. 修改学生信息:通过输入学生的学号,修改该学生的姓名、年龄、性别等信息。
4. 查询学生信息:通过输入学生的学号,查询该学生的姓名、年龄、性别等信息。
5. 显示所有学生信息:将学生信息库中的所有学生信息按照一定格式进行展示。
三、实现过程1. 首先,我们定义一个结构体来存储学生的信息。
结构体包含姓名、年龄、性别和学号等成员变量。
2. 然后,我们定义一个数组来作为学生信息库,每个元素都是一个学生信息的结构体。
3. 编写函数实现不同的功能。
例如,添加学生信息的函数会从用户那里获取学生的姓名、年龄、性别和学号,并将其添加到学生信息库中。
4. 在主函数中,通过循环实现菜单的显示和用户输入的获取。
根据用户的选择,调用相应的函数来执行对应的功能。
5. 最后,编译和运行程序,测试各个功能是否正常。
四、遇到的问题及解决方法在实现过程中,我们遇到了一些问题。
例如,如何实现添加学生信息的功能,如何从用户那里获取输入等。
针对这些问题,我们通过查阅相关的资料和向老师请教,找到了解决方法。
五、实验结果经过测试,我们的学生信息管理系统能够正常运行,各个功能也能够按要求实现。
用户可以通过菜单选择不同的功能,对学生信息进行添加、删除、修改、查询和展示。
六、实验总结通过本次实验,我们巩固了C语言的知识,提高了对C语言的理解和掌握。
同时,我们锻炼了编程的能力和解决问题的能力。
通过与同学们的交流和讨论,我们也学到了其他人的思路和方法。
维生素c含量的测定实验报告实验目的:测定某种水果中维生素C的含量。
实验原理:维生素C是一种易氧化的物质,在空气中易受热和光的影响而分解,所以在测定维生素C含量时需采取适当的措施。
本实验采用I2-苯酚法测定维生素C的含量。
此法原理是利用维生素C与碘化钾反应生成褐色的碘褐色物质,通过测定生成物的浓度来间接计算维生素C含量。
实验步骤:1.样品制备:将所选水果洗净并去皮,然后切成适当大小的块。
取100g水果样品加入100ml蒸馏水,混合均匀。
2.提取维生素C:将上述混合液分装到锥形瓶中,加入5ml三氯乙酸并摇匀,使之完全酸化。
然后放置于阴暗处静置24小时。
3.滴定:将上述混合液分装到滴定筒中,加入适量I2溶液,并用淀粉溶液作指示剂。
以0.1mol/L C6H8O6溶液为对照组。
实验结果:根据对照组的颜色变化,可以通过比较样品的颜色变化程度来测定维生素C的含量。
颜色愈淡,维生素C含量愈低。
根据滴定计算出水果中维生素C的含量。
实验讨论:实验结果可能会受到以下因素的影响:1.水果样品的新鲜程度:新鲜水果中的维生素C含量较高,过了保质期的水果中的维生素C含量会降低。
2.样品制备的操作:样品制备的过程中,应尽量保证样品与空气的接触时间较短,以防维生素C的氧化分解。
3.滴定的准确性:滴定过程中,需仔细控制滴定剂和指示剂的添加量,以确保结果的准确性。
实验结论:通过实验测定,我们可以得出某种水果中维生素C的含量。
这个结果有助于我们了解水果的营养价值,并且可以帮助我们选择含有更多维生素C 的水果。
参考文献:1. 魏彩霞,林辉,李晓彤,杨龙. 微波法测定果蔬中维生素C的含量[J]. 食品与机械,2015,31(12):198-200.2. 张文英,周文杰. 技术指标法测定果蔬中维生素C的含量分析[J]. 食品计量学报,2014,8(2):093-097.。
(完整版)c实验报告实验名称: C语言实验报告实验内容:本次实验主要针对C语言编程进行实验。
通过实验的设计和完成,检验和加深对C语言的理解和应用能力。
实验步骤:1. 实验准备在开始实验之前,需要准备好以下必要的工具和材料:- 计算机- C语言编译器(比如GCC、Clang等)- 文本编辑器(比如Notepad++、Sublime Text等)2. 实验环境搭建在计算机上安装C语言编译器,并配置好相应的环境变量。
这样可以在终端或命令提示符中执行相关的C程序。
3. 编写实验代码根据实验要求,使用文本编辑器编写C语言代码。
根据实验的要求和功能需求,合理设计和组织代码结构,包括头文件的引用、变量的定义、函数的声明和定义等。
4. 编译和运行代码在命令行或终端中使用编译器对编写好的C语言代码进行编译,并生成可执行文件。
编译命令的具体格式根据不同的编译器而有所差异,但一般形式如下:```gcc -o output_file input_file.c```其中,"output_file"表示生成的可执行文件名,"input_file.c"表示待编译的C源代码文件名。
编译成功后,通过命令行或终端执行生成的可执行文件,检查程序的运行结果是否符合预期。
5. 实验结果分析根据实际运行结果,对实验数据进行分析和归纳。
可以通过输出结果、打印特定信息或观察程序的行为来判断程序是否正确地实现了预期的功能。
6. 实验总结在实验报告中对本次实验的过程、方法、结果进行总结,并提出实验中遇到的问题和解决方法。
同时,对所学习的C语言相关知识点进行总结和归纳,以加深对相关知识的理解和记忆。
实验结果:通过本次实验的设计和实现,我成功完成了对C语言编程的实验,达到了预期的目标。
通过编写实际的代码,我巩固了对C语言语法和基本概念的理解。
在实验过程中,我遇到了一些问题,通过查阅资料和与同学的讨论,我成功解决了这些问题。
c语言项目小结以下是一个C语言项目的小结:项目名称:学生信息管理系统项目功能:学生信息管理系统是一个简单的应用程序,用于存储、管理和查询学生信息。
该系统具有以下几个功能模块:1. 学生信息录入:用户可以添加新的学生信息,包括姓名、学号、性别、年龄、专业等。
2. 学生信息查询:用户可以根据姓名、学号、性别等条件查询学生信息。
3. 学生信息修改:用户可以修改现有学生的信息。
4. 学生信息删除:用户可以删除指定学生的信息。
5. 学生信息导出:用户可以将学生信息导出为文本文件或CSV文件。
6. 学生信息导入:用户可以从文本文件或CSV文件中导入学生信息。
技术实现:该项目使用了C语言的基础语法和数据结构,如结构体、数组、指针等。
在实现过程中,使用了文件操作函数来读写学生信息,并使用了控制台输入输出函数来实现用户交互。
遇到的问题和解决方案:在实现该项目时,遇到了以下几个问题:1. 文件读写错误:由于文件操作涉及到多个步骤,如打开文件、读取数据、写入数据等,因此需要确保每个步骤都正确执行。
在项目中,我们使用了错误处理机制来捕获和处理可能出现的错误,如打开文件失败、读写数据错误等。
2. 动态内存管理问题:由于需要动态地分配和释放内存,因此需要确保内存管理正确无误。
在项目中,我们使用了malloc和free函数来分配和释放内存,并使用指针来引用这些内存块。
同时,我们还使用了头文件stdlib.h中的函数来管理内存,如malloc、free、calloc等。
3. 用户交互问题:为了实现友好的用户交互,我们使用了scanf函数来读取用户输入,并使用了printf函数来显示输出结果。
同时,我们还使用了格式化字符串来控制输出的格式和内容。
项目总结:通过完成这个项目,我学会了使用C语言进行项目开发和文件操作的基础知识,并且在实际操作中巩固了自己的理论知识。
此外,这个项目也提高了我的问题解决能力,使我更加熟悉编程和软件开发的全过程。
维生素c含量测定实验报告维生素C是一种具有重要生理功能的营养物质,它对于人体的免疫功能、细胞修复和抗氧化能力起着重要的作用。
维生素C的含量测定,可以有效地评估食物中维生素C的含量,为人体提供充足的营养支持。
本实验以柠檬汁为样品,采用缓冲物质重量法进行测定,测定样品中的维生素C含量。
实验仪器和试剂:仪器:量筒、容量瓶、注射器、分液漏斗、滴定管试剂:碘酸钠溶液、KIO3溶液、Na2S2O3溶液、淀粉溶液、盐酸溶液实验步骤:1.准备维生素C含量标准溶液:取适量维生素C粉末称量,溶解于100ml的蒸馏水中,制备0.01mol/L的维生素C标准溶液。
2.制备柠檬汁样品:将柠檬切片,去皮,剁碎,榨汁。
取适量柠檬汁于容量瓶中,加入等量的蒸馏水稀释。
3.滴定反应:取50ml的稀释后的柠檬汁样品,加入10ml的盐酸溶液。
用碘酸钠溶液滴定,滴定至混合液呈现略带黄色,随后加入几滴淀粉溶液作为指示剂。
继续滴定直至混合液呈现淡蓝色,且持续30秒不褪色。
4.滴定结果计算:计算滴定所需的碘酸钠溶液的体积,并列出计算公式。
5.测定维生素C的含量:测定柠檬汁样品和标准溶液的体积。
利用所测定的两组数据,按照计算公式,计算维生素C的质量浓度。
6.数据处理:根据样品中维生素C的浓度和体积,计算出维生素C的含量。
实验结果:按照上述实验步骤测定,得到柠檬汁中维生素C的含量为X g。
实验讨论:本实验采用碘酸钠滴定法测定柠檬汁中维生素C的含量,该方法操作简便,准确可靠。
但是实验过程中,可能存在一些误差,如滴定反应的终点判断不准确、实验过程中的操作误差等。
为了提高实验结果的准确性,可以多次重复实验,取平均值。
结论:本实验测定了柠檬汁中维生素C的含量为X g。
该结果可用于评估柠檬汁的营养价值,为人体提供充足的维生素C。
同时,本实验也验证了碘酸钠滴定法测定维生素C含量的可行性和准确性。
维生素c的测定实验报告维生素C的测定实验报告维生素C,也被称为抗坏血酸,是一种重要的营养物质,对于人体的健康具有重要的作用。
然而,维生素C是一种易于氧化的物质,容易受到外界环境的影响而失去活性。
因此,准确测定维生素C的含量对于我们了解其在食物中的含量以及其对人体健康的影响具有重要意义。
本次实验旨在通过一种简单而有效的方法,测定某种食物中维生素C的含量。
实验所用的方法是利用维生素C与碘化钾反应生成碘的特性,通过测定反应中生成的碘的含量来间接测定维生素C的含量。
首先,我们需要准备实验所需的材料和设备。
材料包括某种含有维生素C的食物样品、碘化钾溶液、淀粉溶液、稀盐酸溶液等。
设备包括量筒、烧杯、滴定管、分液漏斗等。
实验的步骤如下:1. 首先,我们需要将某种含有维生素C的食物样品称取一定量,并加入适量的稀盐酸溶液进行研磨和混合,以使维生素C与稀盐酸反应。
2. 接下来,我们将研磨好的食物样品溶液转移到一个烧杯中,并加入适量的碘化钾溶液。
在加入碘化钾溶液的过程中,我们需要搅拌均匀,以确保维生素C与碘化钾充分反应。
3. 当食物样品溶液与碘化钾溶液反应后,我们可以观察到溶液的颜色发生变化。
这是由于维生素C与碘化钾反应生成的碘溶液呈现出深蓝色。
4. 为了确定维生素C与碘化钾反应的终点,我们可以加入一滴淀粉溶液。
淀粉溶液在酸性条件下与碘溶液反应生成蓝黑色的复合物,可以作为指示剂。
当溶液的颜色由蓝色转变为无色时,说明维生素C与碘化钾的反应已经达到终点。
5. 为了测定维生素C的含量,我们需要通过滴定的方法来测定反应中生成的碘的含量。
首先,我们需要准备一定浓度的硫代硫酸钠溶液作为滴定剂。
然后,将滴定剂滴加到反应烧杯中,直到出现颜色变化,标志着碘与维生素C的反应已经完全消耗。
通过滴定的方法,我们可以得到维生素C与碘的化学计量比,从而计算出维生素C的含量。
实验中还需要进行一系列的对照实验和重复实验,以确保结果的准确性和可靠性。
维生素c测定实验报告维生素 C 测定实验报告一、实验目的本次实验旨在准确测定样品中维生素 C 的含量,了解和掌握维生素C 测定的基本原理和实验方法。
二、实验原理维生素 C 又称抗坏血酸,具有较强的还原性。
本实验采用 2,6 二氯靛酚滴定法进行测定。
2,6 二氯靛酚是一种染料,在酸性溶液中呈红色,在中性或碱性溶液中呈蓝色。
其氧化型在酸性溶液中呈红色,可与维生素 C 发生氧化还原反应。
当维生素 C 全部被氧化后,稍过量的 2,6二氯靛酚会使溶液呈现红色,此时即为滴定终点。
通过滴定消耗的 2,6 二氯靛酚溶液的量,可以计算出样品中维生素 C 的含量。
三、实验材料与设备1、材料新鲜水果(如橙子、草莓等)、标准维生素 C 溶液。
2、试剂2%草酸溶液、0001mol/L 2,6 二氯靛酚溶液。
3、仪器电子天平、容量瓶、移液管、锥形瓶、酸式滴定管、玻璃棒、漏斗、滤纸。
四、实验步骤1、样品处理准确称取适量的新鲜水果,放入研钵中研磨成匀浆。
将匀浆转移至容量瓶中,用 2%草酸溶液定容至刻度,摇匀。
用漏斗过滤,收集滤液备用。
2、标准溶液的配制准确称取一定量的标准维生素 C 晶体,用 2%草酸溶液溶解并定容至一定体积,得到标准维生素 C 溶液。
3、滴定吸取一定量的样品滤液于锥形瓶中,加入2%草酸溶液至一定体积。
用 0001mol/L 2,6 二氯靛酚溶液进行滴定,边滴边摇动锥形瓶,直至溶液呈现淡红色,并保持 15 秒不褪色,即为滴定终点。
记录消耗的2,6 二氯靛酚溶液的体积。
同时进行空白实验,除不加样品滤液外,其他操作与样品滴定相同,记录空白实验消耗的 2,6 二氯靛酚溶液的体积。
五、实验数据处理1、计算 2,6 二氯靛酚溶液的实际浓度吸取标准维生素 C 溶液 1000mL 于锥形瓶中,加入 2%草酸溶液至50mL。
用 2,6 二氯靛酚溶液进行滴定,记录消耗的体积 V1(mL)。
2,6 二氯靛酚溶液的实际浓度(mol/L)=标准维生素 C 的浓度×1000÷V12、计算样品中维生素 C 的含量样品中维生素 C 的含量(mg/100g)=(V V0)×C×T×100÷W其中,V 为样品滴定消耗 2,6 二氯靛酚溶液的体积(mL);V0 为空白滴定消耗 2,6 二氯靛酚溶液的体积(mL);C 为 2,6 二氯靛酚溶液的实际浓度(mol/L);T 为 1mL 2,6 二氯靛酚溶液相当于维生素 C 的毫克数;W 为样品质量(g)。
维生素c的测定实验报告维生素C的测定实验报告维生素C是一种重要的水溶性维生素,对人体的健康起着至关重要的作用。
为了了解食物中维生素C的含量,本次实验旨在通过测定某些水果中维生素C的含量来探究其浓度。
实验步骤:1. 实验前准备:准备所需的实验器材和试剂,包括维生素C试剂盒、锥形瓶、量筒、试管、移液管等。
2. 样品制备:选择不同种类的水果作为样品,如橙子、苹果、草莓等。
将样品洗净后,用刀将其切成小块。
3. 提取维生素C:将样品放入锥形瓶中,加入适量的蒸馏水,用研钵和研钉研磨样品,使其充分溶解。
然后使用滤纸过滤提取液,收集滤液。
4. 维生素C测定:将收集到的滤液平均分配到几个试管中,每个试管中加入相同体积的维生素C试剂。
然后将试管放入恒温水浴中,在规定的时间内进行反应。
5. 定量测定:在反应结束后,使用比色计测定试管中的溶液吸光度,并根据维生素C试剂盒提供的标准曲线,计算出维生素C的浓度。
实验结果:在本次实验中,我们选择了橙子、苹果和草莓作为样品,通过测定它们中维生素C的含量,得到了如下结果:橙子中维生素C的浓度为X mg/L,苹果中维生素C的浓度为Y mg/L,草莓中维生素C的浓度为Z mg/L。
通过对这些样品的测定,我们可以得出结论:橙子中的维生素C含量最高,苹果次之,草莓最低。
实验讨论:在本次实验中,我们通过测定不同水果中维生素C的含量,发现橙子中的维生素C含量最高。
这可能是因为橙子本身就富含维生素C,同时也与橙子的生长环境和种植方法有关。
苹果和草莓的维生素C含量较低,可能是因为它们的生长环境或采摘时间等因素的影响。
同时,我们还发现维生素C的浓度与水果的颜色并无明显关联。
虽然橙子的颜色较深,但并不意味着它的维生素C含量一定更高。
因此,在选择水果时,不能仅仅根据颜色来判断其维生素C含量的高低。
此外,本次实验中使用了维生素C试剂盒来测定维生素C的浓度。
这种方法简便、快速,并且具有较高的准确性。
但需要注意的是,在进行实验时,要严格按照试剂盒说明书的要求进行操作,以确保实验结果的准确性。
C语言学生信息管理系统实验报告 -C语言学生信息管理系统实验报告一、实验目的本次实验旨在通过C语言编程实现一个简单的学生信息管理系统,以帮助学生更好地理解和掌握C语言的基本语法、数据类型、程序控制结构以及文件操作等知识点。
同时,通过实际操作,提高学生的编程能力和问题解决能力。
二、实验内容1、系统的基本功能:实现学生信息的输入、存储、查询、修改和删除等操作。
2、数据存储方式:使用文件存储学生信息,保证数据的持久性。
3、用户界面:实现一个简单的命令行界面,方便用户进行操作。
三、实验步骤及实现1、打开一个新文件,命名为“student_info.txt”,用于存储学生信息。
2、定义一个结构体,包含学生的基本信息,如学号、姓名、年龄、性别等。
3、编写程序,实现学生信息的输入、存储和输出。
4、编写程序,实现学生信息的查询、修改和删除操作。
5、在命令行界面中,使用scanf函数获取用户输入的指令,并根据指令执行相应的操作。
6、在操作结束后,将结果显示在命令行界面上。
四、实验结果与分析1、学生信息管理系统的基本功能已经实现,可以正常进行学生信息的输入、存储、查询、修改和删除等操作。
2、使用了文件操作函数,可以将学生信息持久化存储,避免了每次运行程序都需要重新输入信息的麻烦。
3、通过实际操作,学生对C语言的基本语法、数据类型、程序控制结构以及文件操作等知识点有了更深入的理解和掌握。
五、实验总结与建议1、在实现学生信息管理系统时,需要注意数据的正确性和完整性,尤其是输入数据时需要做好错误处理。
2、在实现系统功能时,可以进一步优化代码,提高程序的效率和可读性。
3、可以增加更多的功能,如统计学生人数、打印学生信息等,以使系统更加完善。
4、在实际应用中,需要考虑系统的安全性和稳定性,如数据的备份和恢复、系统的异常处理等。
通过本次实验,学生对C语言有了更深入的理解和掌握,同时提高了编程能力和问题解决能力。
建议在今后的实验中,注重理论与实践相结合,提高学生的实际应用能力。
《程序设计实践》报告
一、题目
有n人围坐成一圈(假设他们的编号沿顺时针方向依次为1到n)。
编程序,使用数组来存放各数据(人员编号),而后从1号人员开始数起
(沿顺时针方向),当数到k时(其中k>1由用户通过cin输入指定),则该号人员被"淘汰出局";接着仍沿顺时针方向从被淘汰出局者的下一
人员又重新从1开始数起,数到k后,淘汰第2个人;如此继续,直到最后剩下一个人时停止。
请输出先后被"淘汰"的人的编号。
二、问题分析及求解基本思路
首先得先给小孩编号,这样选用数组的方式最好了,由于人数是临时给定,所以要先定义一个动态数组,人数由用户自己输入。
编号时要注意的是数组第一位是从0开始的,而小孩的编号要从1开始,一旦数值为0就表示要被剔除。
因为要表示小孩是围成一个圈的,对于数组可以用求模运算来让数组的遍历从尾部到头部,从而继续计数。
三、问题求解的整体框架结构
1、定义一个动态数组来存储小孩然后给小孩编号
2、然后删除用户输入的那个编号的小孩,然后显示出删除后的小孩编号
3、在删除该编号的小孩后,再次循环一遍存放小孩的数组删除该位置的小孩
4、循环2、3两步直到剩下最后一个小孩,输出那个小孩的编号,即为winner。
四、主要算法
构建一个动态数组来存放小孩,每个数组元素所存储的值为小孩所在的位置编号(小孩的编号是从1开始的),一旦数值为0即表示被剔除。
为表示小孩围成圈,可以用求模运算来使数组的遍历从头到尾,从而继续计数的过程。
int *boy=new int[小孩的数目];
给小孩编号
for(i=0;i<=小孩的数目;i++)
boy [i]=i+1;
int k=1;//第k个离开的小孩
int n=-1;//数组下标,下一个为0表示从第一个小孩开始数
while(true)
{
//从圈中开始剔除
for(j=0;j<删除的位置;)
{
n=(n+1)%Total;//通过求模使数组保持一个环形
if(boy[n]!=0) j++;
}
if(循环次数==总人数) 跳出循环返回到;输出胜利者的编号
boy[n]=0;
cout<<"After"<<循环次数<<"times elimination , the boys left are:"<<endl;
for(i=0;i<总共小孩的人数;i++)
if(boy[i]!=0) cout<<boy[i]<<"\t";
cout<<endl;
循环次数++;
}
//break语句跳转至此,输出胜利者的编号
cout<<"The No."<<boy[n]<<"boy is the winner."<<endl;
五、测试
六、总结
每次有一个小孩离开时会发现他要遍历整个数组,所以感觉程序效率不是很高,可以在那改进一下。