C++程序设计课程实验报告
程序设计实训实验报告(热门20篇)
程序设计实训实验报告(热门20篇)c语言是在国内外广泛使用的一种计算机语言。
其语言功能丰富、表达能力强、使用灵活方便、既具有高级语言的优点,又具有低级语言的许多特点,适合编写系统软件。
其功能强大,不仅用在计算机上广泛用在电子,机械等方面上,而且,所有的windows,unix,linux,mac,os/2,无一例外,哪一个不是c 语言写的?很多新型的语言如,c++,java,c,j,perl...都是衍生自c语言。
掌握了c语言,可以说你就掌握了很多门语言。
学习c程序这门课一年了,这是我们学的第一门专业课,在大学里c语言不但是计算机专业的必修课程而且也是非计算机专业学习计算机基础的一门必修课程。
所以作为我这个计算机专业的学生来说当然十分重要,老师在第一节课说过,c语言是计算机的基础,大多数软件都需要用c语言来编写,通过一个年的学习,使我由初步掌握简单的应试知识到完成高难度的深入编程,如我们在编写一个较大的程序时应该把它分开成几个小程序来看,这样会容易得多。
同时,我觉得c语言应该是操作和理论相结合的课程,在不断地编写中去思考,两者是不可分割的。
在学习一年c语言的过程中我也在慢慢探索怎样才能学好c语言,并总结了一点经验:要了解c语言就要从语法规为基础来学习起,首先要是要了解它的结构,比如变量,首先要了解变量的定义方式(格式),其意义是什么(定义变量有什么用);其次就是要我要怎么去运用它(我要用什么型式去应用它)。
在c语言的命令行中所有的语句都是有它自己的一定格式和形式出现在我们面前,所以我们在学习某种语句或命令时你首先要了解的就是它的规则是什么、有什么用、怎么实现等。
这些都是语法基础也是c语言的基础如果把它们都了解很好了,那么你编起程序来就很得心应手了。
比如说ifelse和switchcase这两种条件语句都是用来判断执行功能的,那我要什么时侯用if什么时侯用switch呢?如果你很好地了解它们的结构和作用的话那么就知道:若它的条件分支是多个而且条件的值是整数或是一个字符值时就会选switch而不会选if。
c程序课程设计实验报告
c程序课程设计实验报告一、教学目标本课程的教学目标是使学生掌握C程序设计的基本概念、语法和编程技巧,培养学生具备基本的程序设计能力和良好的编程习惯。
具体分解为以下三个方面的目标:1.知识目标:使学生了解C程序设计的基本概念,掌握C语言的基本语法和编程方法,包括变量、数据类型、运算符、控制结构、函数等。
2.技能目标:培养学生具备编写和调试C程序的能力,能运用C语言解决简单的实际问题,培养学生的创新能力和实践能力。
3.情感态度价值观目标:培养学生对计算机科学的兴趣和热情,培养学生良好的编程习惯和团队协作精神,提高学生的自主学习和问题解决能力。
二、教学内容本课程的教学内容主要包括C程序设计的基本概念、语法和编程方法。
具体安排如下:1.C程序设计基本概念:介绍计算机编程的基本概念,使学生了解C语言的特点和应用领域。
2.C语言语法:讲解C语言的基本语法,包括变量、数据类型、运算符、控制结构等。
3.C程序设计方法:教授编程方法,包括函数、数组、指针等,并通过实例使学生掌握编程技巧。
4.编程实践:安排一定的实验课时,使学生动手实践,培养学生的编程能力和问题解决能力。
三、教学方法本课程采用多种教学方法,以激发学生的学习兴趣和主动性,提高教学效果。
具体方法如下:1.讲授法:讲解C程序设计的基本概念、语法和编程方法,使学生掌握理论知识。
2.案例分析法:通过分析典型案例,使学生了解编程技巧和方法,提高学生的实践能力。
3.实验法:安排实验课,使学生动手实践,培养学生的编程能力和问题解决能力。
4.讨论法:学生进行小组讨论,分享学习心得和经验,提高学生的团队协作能力。
四、教学资源本课程的教学资源包括教材、参考书、多媒体资料和实验设备。
具体如下:1.教材:选用权威、实用的教材,为学生提供系统的学习资源。
2.参考书:推荐学生阅读适量的参考书,丰富学生的知识体系。
3.多媒体资料:制作课件、教学视频等多媒体资料,提高教学的趣味性和直观性。
C语言程序设计实验报告(实验大纲+过程)
C语言程序设计实验报告(实验大纲+过程)C语言程序设计实验报告(实验大纲+过程)一、实验目的本实验旨在通过实际的C语言程序设计任务,培养学生的编程思维、动手能力,加深对C语言程序设计的理解和掌握。
二、实验内容1. 实验环境的搭建在计算机上安装C语言编程环境,如C语言编译器。
2. 实验材料准备根据给定的实验题目和要求,准备相应的实验材料,包括输入输出测试数据、参考文档等。
3. 实验任务根据实验题目,编写C语言程序,实现特定的功能要求。
程序需包括输入部分、处理部分和输出部分。
4. 程序调试与测试对编写完成的程序进行调试,确保程序的正确性。
使用多组测试数据进行测试,验证程序的功能是否符合要求。
5. 实验总结与思考对实验过程中遇到的问题进行总结,并提出改进建议。
思考课程的重点和关键,深化对C语言程序设计的理解。
三、实验步骤1. 实验环境的搭建在计算机上下载并安装C语言编译器,如Dev-C++或Code::Blocks等。
2. 实验材料准备根据实验题目要求,准备好实验所需的输入测试数据和输出要求。
3. 编写C语言程序根据实验题目,使用C语言编写程序。
在程序的开头部分添加必要的注释,说明程序的功能和使用方法。
4. 程序调试与测试编译并运行程序,查看是否存在语法错误。
使用给定的测试数据,验证程序的输出是否符合要求。
5. 实验总结与思考对实验过程中遇到的问题进行总结,并提出改进建议。
思考课程的重点和关键,深化对C语言程序设计的理解。
四、实验结果与分析根据实验题目要求,给出实验编写的C语言程序的详细代码,并解释程序的设计思路和实现方法。
同时,给出实验所得的输出结果,并分析结果是否符合预期。
五、实验心得体会通过完成本次实验,我对C语言程序设计的基本语法和思维方式有了更深入的理解。
在编写程序的过程中,我遇到了一些问题,但通过不断尝试和调试,最终顺利完成了实验任务。
在今后的学习中,我将进一步加强对C语言的理解和应用能力,提高程序设计的质量和效率。
C 程序设计实验报告
C 程序设计实验报告实验报告书写要求实验报告原则上要求学生手写~要求书写工整。
若因课程特点需打印的~标题采用四号黑体~正文采用小四号宋体~单倍行距。
纸张一律采用A4的纸张。
实验报告书写说明实验报告中实验目的和要求、实验仪器和设备、实验内容与过程、实验结果与分析这四项内容为必需项。
教师可根据学科特点和实验具体要求增加项目。
填写注意事项,1,细致观察~及时、准确、如实记录。
,2,准确说明~层次清晰。
,3,尽量采用专用术语来说明事物。
,4,外文、符号、公式要准确~应使用统一规定的名词和符号。
,5,应独立完成实验报告的书写~严禁抄袭、复印~一经发现~以零分论处。
实验报告批改说明实验报告的批改要及时、认真、仔细~一律用红色笔批改。
实验报告的批改成绩采用五级记分制或百分制~按《金陵科技学院课堂教学实施细则》中作业批阅成绩评定要求执行。
实验报告装订要求实验批改完毕后~任课老师将每门课程的每个实验项目的实验报告以自然班为单位、按学号升序排列~装订成册~并附上一份该门课程的实验大纲。
金陵科技学院实验报告实验项目名称: C#基础编程实验学时: 6 同组学生姓名: 实验地点: 1318 实验日期: 10月5日-10月19日实验成绩: 批改教师: 批改时间:金陵科技学院实验报告实验1 C#基础编程一、实验目的1、熟悉Visual Studio .NET开发环境。
2、掌握C#应用程序的基本操作过程。
3、掌握C#的数据类型,运算符以及表达式的使用。
4、掌握分支和循环语句的使用方法。
5、掌握一维数组,二维数组及数组型数组的使用。
二、实验要求(1)编写程序要规范、正确,上机调试过程和结果要有记录 (2)做完实验后给出本实验的实验报告。
三、实验设备、环境安装有Visual Studio .NET软件。
四、实验步骤1、分析题意。
2、根据题目要求,新建项目。
3、编写并输入相关的程序代码。
5、运行与调试项目。
6、保存项目。
五、实验内容1、编写一个简单的控制台应用程序,打印一行文字(如你的姓名)。
c语言程序设计实验报告
c语言程序设计实验报告C语言程序设计实验报告。
本次实验是关于C语言程序设计的实验报告,主要内容是对C语言程序设计的学习和实践。
通过本次实验,我对C语言的基本语法和程序设计有了更深入的理解和掌握。
首先,本次实验的主要内容是关于C语言的基本语法和程序设计。
在实验中,我们学习了C语言的基本数据类型、运算符、控制语句、函数、数组、指针等内容。
通过实际的编程练习,我对这些内容有了更加具体和深入的了解。
在实验中,我学会了如何定义变量、使用不同类型的数据、编写循环和条件语句、设计函数和调用函数等基本的程序设计技巧。
其次,本次实验还涉及了C语言的程序设计实践。
在实验中,我们完成了一些简单的程序设计任务,比如实现一个简单的计算器、编写一个简单的学生成绩管理系统等。
通过这些实践,我对C语言的程序设计有了更加具体和深入的理解,也提高了我的编程能力和解决问题的能力。
在实验中,我还遇到了一些困难和问题。
比如在编写程序时,可能会出现语法错误、逻辑错误、运行时错误等。
但是通过仔细分析和调试,我逐渐克服了这些问题,也提高了自己的解决问题的能力。
总的来说,本次实验对我来说是一次很好的学习和锻炼机会。
通过实验,我不仅对C语言的基本语法和程序设计有了更深入的理解,也提高了自己的编程能力和解决问题的能力。
希望在以后的学习和工作中,能够继续努力,不断提高自己的编程水平,为将来的发展打下坚实的基础。
最后,我对C语言程序设计实验报告的编写就到此结束。
希望通过这次实验报告的撰写,能够对C语言程序设计有一个更加全面和深入的了解,也希望能够在以后的学习和工作中,能够更加熟练地运用C语言进行程序设计。
感谢老师和同学们在实验中给予我的帮助和支持,也希望在以后的学习和工作中,能够继续努力,不断提高自己的编程能力和解决问题的能力。
(完整版)c实验报告
(完整版)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程序设计的实验报告C程序设计的实验报告实验目的本次实验旨在加深学生对C语言程序设计的理解,通过实践操作,掌握C语言的基本语法结构、数据类型、控制语句、函数、数组和指针等核心概念。
通过编写和调试程序,培养学生的编程思维和问题解决能力。
实验环境- 操作系统:Windows 10- 编译器:GCC (GNU Compiler Collection)- 开发工具:Visual Studio Code实验内容1. 基本语法结构编写一个简单的C程序,实现基本的输入输出功能。
程序要求用户输入一个整数,然后输出该整数的平方。
```c#include <stdio.h>int main() {int num;printf("请输入一个整数:");scanf("%d", &num);printf("该整数的平方是:%d\n", num * num);return 0;}```2. 控制语句编写程序,实现对一个整数数组的排序,并输出排序后的数组。
```c#include <stdio.h>void sort(int arr[], int n) {int i, j, temp;for (i = 0; i < n - 1; i++) {for (j = 0; j < n - 1 - i; j++) {if (arr[j] > arr[j + 1]) {temp = arr[j];arr[j] = arr[j + 1];arr[j + 1] = temp;}}}}int main() {int arr[] = {64, 34, 25, 12, 22, 11, 90};int n = sizeof(arr) / sizeof(arr[0]);sort(arr, n);printf("排序后的数组:\n");for (int i = 0; i < n; i++) {printf("%d ", arr[i]);}printf("\n");return 0;}```3. 函数编写一个函数,实现对字符串的反转,并在主函数中调用该函数。
c程序设计实验报告
c程序设计实验报告C程序设计实验报告实验目的:1. 掌握C语言的基本语法和结构。
2. 理解并实践数组、指针、结构体等数据结构的使用。
3. 学会使用C语言进行基本的输入输出操作。
4. 培养编程思维和问题解决能力。
实验环境:- 操作系统:Windows 10- 编译器:GCC 9.3.0- 开发工具:Visual Studio Code实验内容:本次实验要求编写一个C程序,实现以下功能:- 定义一个结构体,包含学生姓名、学号、年龄和成绩。
- 从键盘输入若干学生的信息,并存储到结构体数组中。
- 对输入的学生成绩进行排序,并输出排序后的结果。
- 计算并输出所有学生的平均成绩。
实验步骤:1. 定义结构体:创建一个名为`Student`的结构体,包含`char name[50]`, `int id`, `int age`, 和 `float score`。
2. 输入学生信息:使用`scanf`函数从键盘读取学生信息,并存储到`Student`结构体数组中。
3. 排序学生成绩:使用冒泡排序算法对学生的成绩进行排序。
4. 输出排序后的学生信息:遍历排序后的数组,使用`printf`函数输出每个学生的详细信息。
5. 计算平均成绩:遍历学生信息数组,累加所有学生的成绩,然后除以学生数量得到平均成绩,并输出。
实验代码:```c#include <stdio.h>// 定义学生结构体typedef struct {char name[50];int id;int age;float score;} Student;// 冒泡排序函数void bubbleSort(Student students[], int n) {int i, j;for (i = 0; i < n - 1; i++) {for (j = 0; j < n - i - 1; j++) {if (students[j].score < students[j + 1].score) { Student temp = students[j];students[j] = students[j + 1];students[j + 1] = temp;}}}}int main() {int n, i;printf("请输入学生数量:");scanf("%d", &n);Student students[n];// 输入学生信息for (i = 0; i < n; i++) {printf("请输入第%d个学生的信息:\n", i + 1); printf("姓名:");scanf("%s", students[i].name);printf("学号:");scanf("%d", &students[i].id);printf("年龄:");scanf("%d", &students[i].age);printf("成绩:");scanf("%f", &students[i].score);}// 对成绩进行排序bubbleSort(students, n);// 输出排序后的学生信息printf("\n排序后的学生信息:\n");for (i = 0; i < n; i++) {printf("姓名:%s, 学号:%d, 年龄:%d, 成绩:%.2f\n", students[i].name, students[i].id, students[i].age,students[i].score);}// 计算平均成绩float sum = 0;for (i = 0; i < n; i++) {sum += students[i].score;}float average = sum / n;printf("\n所有学生的平均成绩是:%.2f\n", average);return 0;}```实验结果:运行上述程序,根据提示输入学生信息后,程序将输出排序后的学生信息以及所有学生的平均成绩。
c语言程序设计实验
c语言程序设计实验摘要:一、C语言实验教学的目的与要求二、C语言程序设计实验案例分析三、C语言程序设计实验指导课后答案四、C语言程序设计综合性设计实验报告正文:C语言是当今广泛应用的编程语言之一,其重要性不言而喻。
C语言实验教学则是配合课程学习的重要环节,旨在让学生通过实践掌握C语言的基本语法、编程技巧以及结构化程序设计方法。
在C语言实验教学中,学生需要掌握以下内容:一是熟悉vc6.0编程环境,掌握使用vc6.0输入源程序、编译连接和运行程序的基本过程;二是练习C调试程序的方法;三是熟练使用赋值运算、算术运算等表达式;四是熟练使用标准输入、输出函数及各种数据类型的格式说明符。
以下是一个简单的C语言程序设计实验案例:```#include <stdio.h>int main() {int a[10];int i, j, temp, n;printf("请输入10个整型数据,输入q结束:");for (i = 0; i < 10; i++) {if (scanf("%d", &a[i]) == 0) {break;}}for (i = 0; i < 9; i++) {for (j = i + 1; j < 10; j++) {if (a[i] > a[j]) {temp = a[i];a[i] = a[j];a[j] = temp;}}}printf("排序后的数据:");for (i = 0; i < 10; i++) {printf("%d ", a[i]);}return 0;}```此程序首先提示用户输入10个整数,然后使用两层for循环对输入的整数进行冒泡排序,最后输出排序后的结果。
在C语言实验过程中,如果遇到问题,可以通过实验报告或参考书籍寻找答案。
例如,《C语言程序设计》实验指导课后答案提供了许多实用的示例程序和解答,可以帮助学生深入理解C语言的编程技巧。
c 程序设计实验报告
c 程序设计实验报告C程序设计实验报告一、引言C程序设计是计算机科学与技术专业中非常重要的一门课程,通过实验学习,我们可以更好地掌握C语言的基本语法和程序设计思想。
本次实验报告将对我所完成的C程序设计实验进行总结和分析。
二、实验目的本次实验旨在通过编写C程序,加深对C语言的理解,并掌握C语言的基本语法和程序设计方法。
同时,通过实验,我们还可以提高自己的编程能力和解决问题的能力。
三、实验内容本次实验分为两个部分,分别是基本语法练习和小项目实践。
1. 基本语法练习在基本语法练习中,我通过编写一系列小程序来巩固对C语言的掌握。
其中包括变量的定义和使用、运算符的使用、条件语句和循环语句的使用等等。
通过这些练习,我对C语言的基本语法有了更深入的了解,并能够熟练地使用这些语法来解决实际问题。
2. 小项目实践在小项目实践中,我选择了一个简单的学生成绩管理系统作为实践项目。
通过这个项目,我可以更好地理解和应用C语言的各种概念和技巧。
在这个项目中,我需要设计一个程序,能够实现学生成绩的录入、查询和统计功能。
通过这个实践项目,我不仅加深了对C语言的理解,还提高了自己的问题解决能力和编程能力。
四、实验过程在实验过程中,我首先通过学习C语言的相关教材和资料,掌握了C语言的基本语法和程序设计思想。
然后,我根据实验要求,逐步完成了实验中的各个小任务。
在完成每个小任务之后,我会进行测试和调试,确保程序的正确性和稳定性。
在实践项目中,我还进行了一些额外的功能扩展,以提高程序的实用性和用户体验。
五、实验结果通过本次实验,我成功地完成了所有的实验任务,并实现了学生成绩管理系统的基本功能。
在实验过程中,我遇到了一些问题,但通过查阅资料和与同学的讨论,我最终解决了这些问题。
通过实验,我不仅加深了对C语言的理解,还提高了自己的编程能力和解决问题的能力。
六、实验总结通过本次实验,我对C语言的基本语法和程序设计思想有了更深入的了解。
通过实践项目,我不仅掌握了C语言的各种概念和技巧,还提高了自己的问题解决能力和编程能力。
C程序设计(第五版)谭浩强实验报告四(附答案以及源程序分析)codeblocks
《C程序设计》实验报告年级专业班姓名成绩课程名称C语言实验项目名称循环结构指导教师一、实验目的1、熟练掌握while语句。
2、熟练掌握do---while语句。
3、熟练掌握for语句。
4、熟练掌握各种选择语句与循环语句的嵌套使用。
5、熟练掌握判断素数的算法。
6、熟练掌握累加等常见的算法。
二、实验内容4.1求s=1+1/2+1/3+..+1/n,输入n的值,输出s的值保留两位小数。
4.2输入一行字符,分别统计出其中英文字母、空格、数字和其他字符的个数。
4.3 输出1000以内的“水仙花数”,所谓“水仙花数”是指一个3位数,其各位数字立方和等于该数本身,例如:153是水仙花数,因为153=13+53+33。
4.4 一个球从100m高度自由落下,每次落地后反弹回原高度的一半,再落下,再反弹,求它在第10次落地时共经过多少米,第10次反弹多高。
4.5 判断素数,输入任意整数,如果是输出Y es,如果不是输出No。
4.6 求s=a+aa+aaa+………,例如:输入a的值5,n的值6,则:S=5+55+555+5555+55555+5555554.7 编写程序,打印以下图形:(提示:使用双重循环)6.#include<stdio.h>void main(){int i,j,a,n,Sn=0;scanf("%ld%ld",&a,&n);j=a;for(i=1;i<=n;i++){Sn=Sn+a;a=j+10*a;}printf("%ld+%ld%ld+%ld%ld%ld+…=%ld\n",j,j,j,j,j,j,Sn); }7.#include<stdio.h>int main(void){int i,j;for(i=1;i<=7;i+=2){for (j=0;j++<i;printf("*"));printf("\n");}for(i-=4;i>0;i-=2)return 0;}四、运行结果(将每道题的运行结果截图并粘贴在此处)1.3.4.5.6.7.五、实验结果分析六、1.第四行程序“double”浮点型输入,第五行程序“scanf”标准输入n“while”第六行循环体语句循环条件i<=n。
C语言程序设计实验报告
C语言程序设计实验报告一、实验目的本次 C 语言程序设计实验的主要目的是通过实际编写和调试 C 语言程序,加深对 C 语言语法、数据类型、控制结构、数组、指针、函数等核心概念的理解和掌握,提高编程能力和问题解决能力。
二、实验环境本次实验使用的编程环境是 Visual Studio Code,编译器为 GCC。
操作系统为 Windows 10。
三、实验内容及步骤(一)简单数据类型与运算1、定义并初始化不同类型的变量,如整型、浮点型、字符型等。
2、进行基本的算术运算、关系运算和逻辑运算,并输出结果。
(二)控制结构1、编写使用 ifelse 语句进行条件判断的程序,根据不同的条件执行不同的操作。
2、运用 for 循环和 while 循环实现特定次数的重复操作,例如计算1 到 100 的和。
(三)数组1、定义并初始化一维数组和二维数组。
2、实现数组元素的遍历和操作,如查找最大值、最小值等。
(四)指针1、理解指针的概念,定义指针变量并进行赋值。
2、通过指针访问变量和数组元素。
(五)函数1、定义和调用具有不同参数类型和返回值类型的函数。
2、理解函数的参数传递机制,包括值传递和指针传递。
四、实验过程中的问题及解决方法(一)语法错误在编写程序的过程中,经常会出现语法错误,如遗漏分号、括号不匹配等。
通过仔细检查代码,对照 C 语言的语法规则,能够及时发现并修正这些错误。
(二)逻辑错误逻辑错误是比较难以发现和解决的问题。
例如,在循环中可能会出现错误的边界条件,导致结果不正确。
通过打印中间结果和逐步调试,能够帮助找出逻辑错误的所在,并进行修正。
(三)运行时错误运行时错误可能是由于内存访问越界、除数为零等原因引起的。
使用调试工具和异常处理机制,能够有效地处理运行时错误,保证程序的稳定性。
五、实验结果与分析(一)简单数据类型与运算通过实验,对不同数据类型的取值范围、精度以及运算规则有了更清晰的认识。
例如,整型数据在不同的平台上可能具有不同的取值范围,浮点型数据在进行运算时可能会存在精度损失。
c语言课程设计报告书3篇
c语言课程设计报告书3篇c语言课程设计报告书1我们学习它,有助于我们更好的了解计算机,与计算机进行交流,因此,c语言的学习对我们尤其重要。
在这个星期里,我们专业的学生在专业老师的带领下进行了c语言程序实践学习。
在这之前,我们已经对c语言这门课程学习了一个学期,对其有了一定的了解,但是也仅仅是停留在了解的范围,对里面的好多东西还是很陌生,的在运用起来的时候还是感到很棘手,毕竟,万事开头难嘛。
由于时间的关系,我们的这次实践课程老师并没有给我们详细的介绍,只是给我们简单的介绍了几个比较重要的实际操作。
包括了程序模块处理。
简单界面程序。
高级界面程序。
程序的添加修改。
用程序做一元线性回归处理以及用c语言程序来画粒度分布图等这几样比较重要的时间操作。
上机实验是学习程序设计语言必不可少的实践环节,特别是c语言灵活、简洁,更需要通过编程的实践来真正掌握它。
对于程序设计语言的学习目的,可以概括为学习语法规定、掌握程序设计方法、提高程序开发能力,这些都必须通过充分的实际上机操作才能完成。
学习c程序设计语言除了课堂讲授以外,必须保证有不少于课堂讲授学时的上机时间。
因为学时所限,课程不能安排过多的上机实验,所以希望学生有效地利用课程上机实验的机会,尽快掌握用c语言开发程序的能力,为今后的继续学习打下一个良好的基础。
为此,我们结合课堂讲授的内容和进度,安排了12次上机实验。
课程上机实验的目的,不仅仅是验证教材和讲课的内容、检查自己所编的程序是否正确,课程安排的上机实验的目的可以概括为如下几个方面:1、加深对课堂讲授内容的理解课堂上要讲授许多关于c语言的.语法规则,听起来十分枯燥无味,也不容易记住,死记硬背是不可取的。
然而要使用c语言这个工具解决实际问题,又必须掌握它。
通过多次上机练习,对于语法知识有了感性的认识,加深对它的理解,在理解的基础上就会自然而然地掌握c语言的语法规定。
对于一些内容自己认为在课堂上听懂了,但上机实践中会发现原来理解的偏差,这是由于大部分学生是初次接触程序设计,缺乏程序设计的实践所致。
C语言程序设计上机实验报告(精选5篇)[修改版]
第一篇:C语言程序设计上机实验报告黔南民族师范学院C语言程序设计上机实验报告系部:计算机科学系年级:2013 级班级:姓名:学号:实验时间:实验成绩:2013年月日实验三顺序结构程序的设计一实验名称:顺序结构程序的设计二.实验环境:windows XP系统,VC++6.0软件三.实验目的:四.实验内容:五.算法描述流程图六.源程序七.测试数据及运行结果八.实验心得实验成绩评分要求1、原创性发现抄袭或雷同成绩为0分2、正确性程序正确60分3、可读性格式清楚,有注释,变量命名规范20分4、健壮性对特殊测试数据有考虑有测试10分5、效率程序运行效率高10分第二篇:C程序设计上机实验报告10C程序设计实验报告实验名称:指针与数组学时安排:2课时实验类别:上机操作型实验要求:1人1组 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄一、实验目的1. 理解指针、地址和数组间的关系;2. 掌握通过指针操作数组元素的方法;3. 掌握数组名作为参数的编程方式。
二、实验设备介绍软件需求: Visual C++ 6.0或CFree3.5以上版本硬件需求: 对于硬件方面的要求,建议配置是Pentium III 450以上的CPU处理器,64MB以上的内存,200MB的自由硬盘空间、CD-ROM驱动器、能支持24位真彩色的显示卡、彩色显示器、打印机。
三、实验内容1. 定义函数void sort(int a[],int n)amain函数,并在其中调用sort函数。
示例如下:After sorted the array is: -9 -6 1 2 4 52. 输入10个整数存储到数组a,再输入一个整数x,在数组a中查找x,若找到则输出相应的下标,否则显示“Not found!”。
要求定义和调用函数search(int list[], int n, int x),在数组list中查找元素x,若找到则返回相应下标,否则返回-1。
c语言程序设计实验报告
c语⾔程序设计实验报告C语⾔程序设计实验报告实验⼀1.⽤scanf函数输⼊数据,a=3,b=7,x=8.2,y=123.22,c1=‘A’,c2=‘a’,⽤printf 函数进⾏输出。
2.输⼊三⾓形的三边长,求三⾓形⾯积。
3..存款利息计算,有10000元,想存5年,按以下⼏种⽅法存。
(1)⼀次存5年。
(2)先存2年期,到期将本息再存3年。
(3)先存3年期,到期后再存2年。
(4)存1年期,到期将本息再存1年,连存5次。
计算各⾃存法5年后的本息是多少?4.设半径r=1.5,圆柱⾼h=3,求圆周长,圆⾯积,圆柱表⾯积,圆柱体积。
⽤scanf 输⼊数据,输出结果,输⼊要有⽂字说明,取⼩数点后2位数字。
5.给出⼀个不多于5位的正整数,要求:(1)求出它是⼏位数?(2)分别输出每个数字?(3)按逆顺序输出。
如(123输出321)实验⼆1.输⼊两个正整数,求其最⼤公约数和最⼩公倍数。
2.⼀个数如果恰好等于它的因⼦之和,这个数就称为完数,例如6=1+2+3,编程找出1000之内的所有完数,并按下⾯格式输出其因⼦。
6its factors are1,2,33.输⼊⼀⾏字符,分别统计出其中英⽂字母、空格、数字和其他字符的个数。
4.⼀个球从100m⾼度⾃由落下,每次落地后反跳回原⾼度的⼀半,再落下,再反弹。
求它在第10次落地式,共经过多少⽶,第10次反弹多⾼。
实验三1.从键盘输⼊⼀个整数,并将其插⼊到其元素已按升序排列的数组中,要求插⼊操作完成后,数组中的元素仍按升序排列。
2.⼀篇⽂章,共有三⾏⽂字,每⾏有80个字符。
要求分别统计出其中英⽂⼤写字母、⼩写字母、数字、空格以及其他字符的个数。
3.从键盘输⼊10个整数,并求出这10个数的最⼤值及出现次数。
4.编写个⼈所得税计算器。
输⼊个税起征点和⽉收⼊,计算应交税款。
(起征点为2000元)不超过500元的部分税率5%超过500元⾄2000元的部分税率10%超过2000元⾄5000元的部分税率15%超过5000元⾄20000元的部分税率20%超过20000元⾄40000元的部分税率25%超过40000元⾄60000元的部分税率30%超过60000元⾄80000元的部分税率35%超过80000元⾄100000元的部分税率40%超过100000元的部分税率45%。
C语言程序设计实验报告(实验大纲+过程)
《C程序设计》实验教学大纲一、适用范围大纲适用信息管理专业本科教学使用。
二、课程名称C程序设计三、学时数与学分总学时:90 总学分:4实验学时:28 实验学分:1四、教学目的和基本要求目的:通过C程序设计实验,培养学生对学习程序设计的兴趣,加深对讲授内容的理解,尤其是通过上机来掌握语法规则,使学生全面了解 C 语言的特点,熟练掌握 C 语言程序设计的基本方法和编程技巧。
基本要求:了解和熟悉C语言程序开发的环境;学会上机调试程序,善于发现程序中的错误,并且能很快地排除这些错误,使程序能正确运行,达到实验知识和理论知识的融会贯通。
上机实验前,学生必须事先根据题目的内容编好程序,然后在实验时输入程序、调试程序、直至运行结果正确为止,上机结束后,应整理出实验报告。
注:带*的实验项目为选做实验项目六、教材、讲义及参考书《C程序设计题解与上机指导》谭浩强主编清华大学出版社七、实验成绩评定办法实验成绩=平时实验表现+实验报告。
实验成绩占总成绩的20%。
实验成绩以等级形式给出,评定等级分优、良、中、及格、不及格五类。
1、平时考核:上机实验前,学生必须事先根据题目的内容编好程序,然后在实验时输入程序、调试程序、直至运行结果正确为止。
在实验中,教师可根据学生编程操作能力、观察和分析及运用知识能力、程序编制正确性以及学生的课堂纪律、实验态度、保持实验室卫生等方面的表现进行综合考核。
2、实验报告:学生实验后应按时完成实验报告。
八、实验教学大纲说明本大纲共安排28学时的实验,其中带*号实验项目为选做实验项目,实际课时为18学时。
实验项目多为设计性实验项目,每个设计性实验项目中都包含数个小的设计性题目,其中带*号的题目为选做题目,有时间和有能力的同学可以选做。
九、实验项目实验一C程序的运行环境和运行一个C程序的方法一、实验目的1.了解Visual C++6.0编译系统的基本操作方法,学会独立使用该系统。
2.了解在该系统上如何编辑、编译、连接和运行一个C程序。
c语言程序设计实验报告
c语言程序设计实验报告实验一 C语言程序设计实验报告一、实验目的通过本次实验,学生应该能够:1.了解C语言的基本语法和函数库的使用方法;2.了解标准输入输出库的使用方法;3.掌握数组和字符串的使用方法;4.掌握条件分支语句、循环语句和函数的使用方法。
二、实验环境本次实验使用的编译器为Visual C++ 6.0。
三、实验过程1.实验1-1 输出引言分析问题:设计一个程序,输出以下的文字:**********************************************Welcome to C Language World!**********************************************解决问题:为了输出上面的文字,我们需要使用到标准输出函数printf()。
代码如下:#include <stdio.h>int main(void){printf("**********************************************\n");printf(" Welcome to C Language World!\n");printf("**********************************************\n");return 0;}2.实验1-2 计算表达式分析问题:设计一个程序,计算表达式:789 + 456 - 123,并输出结果。
解决问题:为了计算表达式,我们需要使用到变量和算术运算符。
代码如下:#include <stdio.h>int main(void){int a = 789;int b = 456;int c = 123;int result = a + b - c;printf("789 + 456 - 123 = %d\n", result);return 0;}3.实验1-3 计算分数分析问题:设计一个程序,计算分数:3 / 4 + 5 / 8,并输出结果。
C程序设计实验报告
C程序设计实验报告第一篇:C程序设计实验报告浙江理工大学信息学院C程序设计实验报告实验名称:学时安排:实验类别:实验要求:1人1组 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄一、实验目的二、实验设备介绍软件需求: Visual C++ 6.0或CFree3.5以上版本硬件需求: 对于硬件方面的要求,建议配置是Pentium III 450以上的CPU处理器,64MB以上的内存,200MB的自由硬盘空间、CD-ROM驱动器、能支持24位真彩色的显示卡、彩色显示器、打印机。
三、实验内容四、程序清单五、运行结果六、实验心得第二篇:分支程序设计实验报告[范文模版]实验二二分支程序设计一、实验目得: 1、学习分支程序得设计方法 2、熟悉在 PC 机上建立、汇编、连接、调试与运行汇编语言程序得过程二、实验环境:硬件环境IBM/ PC及其兼容机软件环境统操作系统 DO S编辑程序 EDIT 或其她编辑程序序程编汇ﻩ汇编程序 M ASM、E XE连接程序LIN K、EXE 序调试程序 DEB UG、EXE 三、实验内容::、在屏幕上显示如下信息:—-——-------—-—---——------—-Panda2——---——---—-—-———-----——-—--Catﻩ3-——--------------———--——-Ra bbit4——-——-——-——--——---—---——------Pig——------—--—--—-—---——---—EXI T(Plea sech oo se 1, 2, 3,4or 5)—-----入若输入 1, 显示“I lik eeppanda ”后程序结束;若输入 2, 显示“Ilik ecat” ”后程序结束;若输入 3,显示“Ilik erab bitt入”后程序结束;若输入4, 显示“Ido n’t llike pig ”后程序结束;若输入 5,程序直接结束;若输入其它字符,显示“Youpr ess an error key!“ 后程序结束.1)流程图2)源程序 DATA SEGMENTINFOR1 DB 0AH,0DH,”1-—-—----—-—Panda:$"INFOR2 DB0AH,0DH,”2—-—-——--———Cat:$”INFOR3 DB0AH,0DH,"3---—---——-—Rabbit;$”INFOR4 DB0AH,0DH,"4---—------—pig:$“INFOR5 DB 0AH,0DH,”5--—--——--—-EXIT:$"INFOR6DB 0AH,0DH,”(please choose 1,2,3,4 or 5——-):$“INFOR7 DB 0AH,0DH,”I like Panda:$“INFOR8DB 0AH,0DH,"I like Cat:$”INFOR9 DB 0AH,0DH,"I like Rabbit;$"INFOR10 DB 0AH,0DH,”I like pig:$"INFOR11 DB 0AH,0DH,”you press an error key!:$” DATA ENDS;数据段结束 CODE SEGMENT;代码段开始 Y Y Y Y N N N N N 开始选项用户输入 Al=1 Al=2 Al=3 Al=4 Al=5 You press an error key 结束 I like panda I like cat I like rabbit I like do notASSUMECS:CODE,DS:DATA;段寻址 START: MOV AX,DATA;将 data 得数据存入ax 中MOV DS,AX;为 ds 赋值MOV DX,OFFSETINFOR1;返回变量 INFOR1 段内偏移地址【运行后在屏幕上显示字符 1--——--—--—-Panda:】MOV AH,09HINT 21H;执行九号功能调用MOV DX,OFFSETINFOR2MOV AH,09HINT 21HMOV DX,OFFSETINFOR3MOV AH,09HINT 21HMOV DX,OFFSETINFOR4MOV AH,09HINT 21HMOV DX,OFFSETINFOR5;返回变量INFOR5 段内偏移地址【运行后在屏幕上显示字符5—-—--——----EXIT:】MOV AH,09HINT 21HMOV DX,OFFSETINFOR6MOVAH,09HINT 21HMOV AH,01HINT 21HCMP AL,“1’JEPandaCMP AL,'2’JECatCMP AL,”3’JERabbitCMP AL,’4'JE PigCMP AL,’5’JE PENDJMP Other Panda:MOV DX,OFFSET INFOR7MOV AH,09HINT 21HJMP PEND Cat:8ROFNI TESFFO,XD VOMﻩH90,HAVOMﻩH12 TNIﻩJMP PEND Rabbit:MOV DX,OFFSET INFOR9MOV AH,09HH12 TNIﻩJMP PEND Pig:MOV DX,OFFSET INFOR10H90,HA VOMﻩ INT 21HJMP PEND Other:MOV DX,OFFSET INFOR11MOV AH,09HH12 TNIﻩJMP PEND PEND:MOV AH,4CHINT 21H CODEENDSEND START2、、从键盘输入一字符,判断该字符就是小写字母、大写字母、数字或其它字符.若输入为小写字母, 显示“YYouI nput a Lo wer case Letter!”;若输入为大写字母, 显示“You Inp ut a Uppercase L et ter!”;若输入为数字,显示“Y oou Input aDigit!“;若输入为其它字符,显示“You Inpu tOt her Lettt er!”。
C程序设计实验报告(完整版)
工程学院实验报告课程名称: C程序设计课程代码: 8234510学院(直属系):年级/专业/班: 2010级汽电1班学生姓名:学号: 31201008030 实验总成绩:任课教师:开课学院: 工程学院实验中心名称: 交通实验中心西华大学实验报告(理工类)开课学院及实验室:汽车学院机房(5D-215)实验时间:年月日1、实验目的2、实验设备、仪器及材料3、实验内容一般实验:3.1实验方案设计与选择(设计性、创新性实验需写该项内容)3.2实验原理及实验步骤(实验工作原理或实验的主要操作过程)3.3实验记录(核心代码及调试过程)注解:理工科实验需记录实验过程中的数据、图表、计算、现象观察等,实验过程中出现的问题;其它如在计算机上进行的编程、仿真性或模拟性实验需记录程序核心代码以及程序在调式过程中出现的问题及解决方法;记录程序执行的结果。
上机实验:3.1上机实验的内容及要求3.2算法设计思想与算法实现步骤3.3程序核心代码,程序调试过程中出现的问题及解决方法3.4 程序运行的结果4、实验总结4.1实验结果分析及问题讨论4.2实验总结心得体会注解:实验总结的内容根据不同学科和类型实验要求不一样,一般理工科类的实验需要对实验结果进行分析,并且对实验过程中问题进行讨论;在计算机上进行的编程、仿真性或模拟性实验需要对上机实践结果进行分析,上机的心得体会及改进意见。
其它实验应总结实验过程写出心得体会及改进意见。
1、实验目的(1) 熟悉C语言的集成环境,了解菜单的使用方法。
(2) 掌握C语言程序上机的编辑、编译、连接、运行的基本步骤。
(3) 了解C语言程序的结构。
2、实验设备、仪器及材料(1)硬件环境微型计算机(Intel x86系列CPU)一台(2)软件环境Windows98/2000/XP操作系统 VC6.0集成开发环境3、实验内容3.1上机实验的内容及要求(1) 熟悉VC中常用菜单项及对应快捷键的使用方法。
(2) 熟悉C语言程序上机的编辑、编译、连接、运行的基本步骤。
c程序设计 实验报告
c程序设计实验报告C程序设计实验报告一、引言C程序设计是计算机科学与技术专业中最基础、最重要的一门课程。
通过学习C语言,我们可以掌握计算机程序的基本结构和编写方法,提高编程能力和解决实际问题的能力。
本实验报告将介绍我在C程序设计实验中所完成的任务和所遇到的问题。
二、实验一:基本语法和数据类型在本实验中,我们首先学习了C语言的基本语法和数据类型。
通过编写简单的程序,我们了解了变量的定义和使用、基本的算术运算、条件语句和循环语句等内容。
同时,我们还学习了C语言中的数据类型,如整型、浮点型、字符型等,并学会了它们的声明和使用方法。
在实验过程中,我遇到了一个问题:如何正确使用条件语句和循环语句来实现特定的功能。
通过仔细阅读教材和进行反复实验,我逐渐掌握了这些语句的使用方法,并成功解决了问题。
三、实验二:函数和数组在第二个实验中,我们学习了C语言中函数和数组的概念和使用方法。
函数是C语言中的一个重要概念,它可以将一段代码封装为一个独立的模块,方便代码的复用和维护。
而数组则是一种存储多个相同类型数据的结构,可以通过下标访问其中的元素。
在实验过程中,我遇到了一个问题:如何正确使用函数和数组来实现特定的功能。
通过仔细阅读教材和进行反复实验,我逐渐掌握了函数和数组的使用方法,并成功解决了问题。
四、实验三:指针和字符串在第三个实验中,我们学习了C语言中指针和字符串的概念和使用方法。
指针是C语言中的一个重要概念,它可以指向内存中的某个地址,通过指针可以实现对内存中的数据的直接访问。
而字符串则是一种字符数组,可以用于存储和操作文本数据。
在实验过程中,我遇到了一个问题:如何正确使用指针和字符串来实现特定的功能。
通过仔细阅读教材和进行反复实验,我逐渐掌握了指针和字符串的使用方法,并成功解决了问题。
五、实验四:文件操作在第四个实验中,我们学习了C语言中文件的操作方法。
通过使用文件操作函数,我们可以实现对文件的读取和写入,从而实现文件的读写操作。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
C++程序设计课程实验报告系 (院):信息工程学院班级:学号:姓名:完成日期: 2013年9月-12月指导教师:二○一三年十二月C++程序设计实验内容安排实验一、了解Visual C++6.0编程环境主要内容:了解Win32 Console Application 和MFC编程步骤,了解cin>>和cout<<的应用实验二、C++基础主要内容:内联函数、函数模板、动态申请内存和释放内存(new和delete)实验三、类的设计主要内容:设计一个类,要求包含构造函数、析构函数、静态成员,在main函数中创建对象,掌握对象、对象指针对类的成员的调用实验四、类的继承主要内容:设计一个子类继承父类,要求在main函数中创建子类对象,掌握子类对象对父类成员的调用实验五、多重继承主要内容:设计一个子类继承多个父类,要求在main函数中创建子类对象,掌握子类对象对父类构造函数的调用次序以及析构次序实验六、子类与父类对象之间的赋值、子类指针与父类指针之间的转换主要内容:设计一个单一继承树,验证子类和父类对象之间的赋值规则,以及子类指针和父类指针之间的转换规则实验七、多态主要内容:设计一个单一继承树,子类和父类之间存在同名函数,用虚函数实现多态实验八、文件的读写主要内容:了解C++文件流的输入输出,掌握在硬盘上写和读文本文件和二进制文件的方法实验九、类模板的设计主要内容:设计一个类模板,要求在main函数中使用实验十、综合程序设计内容不限,只要应用C++类的设计,实现一个有一定价值的应用系统,系统包含数据输入与输出、使用界面与特定功能,源代码行数大于300备注:(1)实验报告总量控制在10页以内,标题黑体小四,其它五号字体、单倍行距。
(2)做实验十的同学,实验1-9可以不交;提交程序全部工程的压缩文件和Word文档报告。
(3)做实验一到九的同学,提交程序全部工程的压缩文件,考虑Word文档实验报告的篇幅限制,可任挑实验二到九中的任意4个实验写Word文档实验报告。
实验结果输出界面为黑底白字的,请做反色处理。
实验四、类的继承1、实验内容设计一个子类继承父类,要求在main函数中创建子类对象。
2、实验目的掌握子类对象对父类成员的调用。
3、实现代码#include <iostream.h>#include <math.h>class Base{private:int x;protected:int y;double length;public:void setxy(int m,int n) {x=m;y=n;}int Getx() {return x;}int Gety() {return y;}double lengthxy(int x,int y){return sqrt(x*x+y*y);}void getlengthxy(){length=lengthxy(x,y);}void showlength(){cout<<length<<endl;}};class Derived:public Base{private:int z;public:void setxyz(int m,int n,int l){setxy(m,n);z=l;}int Getz() {return z;}double lengthxyz(int x,int y,int z){return sqrt(lengthxy(x,y)*lengthxy(x,y)+z*z);}void getlengthxyz(){length=lengthxyz(Getx(),y,z);}};void main(){Base obj1;obj1.setxy(3,4);obj1.getlengthxy();cout<<"("<<obj1.Getx()<<","<<obj1.Gety()<<")到原点距离:";obj1.showlength();Derived obj2;obj2.setxyz(30,40,50);obj2.getlengthxyz();cout<<"("<<obj2.Getx()<<","<<obj2.Gety()<<","<<obj2.Getz()<<")到原点距离:";obj2.showlength();}4、实验结果5、实验体会继承提供了一个类获得另一个类数据和操作的机制。
程序员只需在新类中定义已有类中没有的成员就可以建立新类。
利用已有类定义新类可以提高软件代码的重用率,是面向对象程序设计的重点。
实验五、多重继承1、实验内容设计一个子类继承多个父类,要求在main函数中创建子类对象。
2、实验目的掌握子类对象对父类构造函数的调用次序以及析构次序。
3、实现代码#include <iostream.h>class B1{public:B1() { cout<<"构造B1!\n";}~B1(){ cout<<"析构B1!\n";}};class B2{public:B2(int j) { cout<<"构造B2"<<j<<"!\n";}~B2(){ cout<<"析构B2!\n";}};class B3{public:B3(int i) { cout<<"构造B3"<<i<<"!\n";}~B3(){ cout<<"析构B3!\n";}};class B4{public:B4() { cout<<"构造B4!\n";}~B4(){ cout<<"析构B4!\n";}};class C:public B1,public B3,public B4,public B2{public:B1 memberB1;B2 memberB2;B3 memberB3;C(int a,int b,int c,int d):memberB2(a),memberB3(b),B2(c),B3(d) {cout<<"构造C!\n";} ~C(){ cout<<"析构C!\n";}};void main(){C obj(1,2,3,4);}4、实验结果5、实验体会基类构造函数先于派生类构造函数被执行,派生类构造函数的调用顺序如下:(1)调用基类的构造函数,调用顺序按照它们继承时说明的顺序;(2)调用对象成员的构造函数,调用顺序按照它们在类中说明的顺序;(3)派生类构造函数体中的内容。
实验七、多态1、实验内容设计一个单一继承树,子类和父类之间存在同名函数,用虚函数实现多态。
2、实验目的验证虚函数指针的存在,以及虚函数实现多态。
3、实现代码#include "iostream.h"class CShape{public:int color;public:virtual void display(){ cout<<"Shape \n";}};class CEllipse:public CShape{public:double longRad,shortRad;public:virtual void display(){ cout<<"Ellipse \n";}};class CCircle:public CEllipse{public:double radius;public:virtual void display(){ cout<<"Circle \n";}};class CTriangle:public CShape{public:double edgeA,edgeB,edgeC;public:virtual void display(){ cout<<"Triangle \n";}};class CRect:public CShape{public:double length,width;public:virtual void display(){ cout<<"Rectangle \n";}};class CSquare:public CRect{public:double edgeLength;public:virtual void display(){ cout<<"Square \n";}};void main(){CShape aShape; aShape.color=1;CEllipse aEllipse; aEllipse.color=2;CCircle aCircle; aCircle.color=3;CTriangle aTriangle; aTriangle.color=4;CRect aRect; aRect.color=5;CSquare aSquare; aSquare.color=6;aSquare.edgeLength=666;CShape *pShape[6]={&aShape,&aEllipse,&aCircle,&aTriangle,&aRect,&aSquare};cout<<sizeof(CShape)<<endl;//测试类中是否包含虚函数指针for(int i=0;i<6;i++){pShape[i]->display();//看指针调用父类还是子类的函数?cout<<pShape[i]->color<<endl; //看指针调用父类还是子类的数据?}}4、实验结果5、实验体会通过实验验证,CShape类型需要8个字节,其本身数据成员int color占用4个字节,另外4个字节是虚函数指针vptr占用;程序调用结果表明,虚函数可以使父类指针依据实际指向的对象调用相应函数,实现多态。