C上机实验报告实验六
- 格式:docx
- 大小:303.46 KB
- 文档页数:4
C语言程序设计实验上机报告课程实验报告课程名称C语言程序设计专业班级信息安全1302 学号姓名指导教师报告日期2014年6月16日计算机科学与技术学院目录1 实验概述1 2 第一次实验2 2.1 实验目的3 2.2 实验内容3 2.3 实验小结19 3 第二次实验20 3.1 实验目的20 3.2 实验内容20 3.3 实验小结35 4 第三次实验36 4.1 实验目的36 4.2 实验内容36 4.3 实验小结49 5 第四次实验50 5.1 实验目的50 5.2 实验内容50 5.3 实验小结62 6 第五次实验63 6.1 实验目的63 6.2 实验内容63 6.3 实验小结69 7 第六次实验70 7.1 实验目的70 7.2 实验内容70 7.3 实验小结83 8 第七次实验84 8.1 实验目的84 8.2 实验内容84 8.3 实验小结105 9 实验总结106 参考文献107 1实验概述本实验采用C语言常用的上机开发环境Visual C6.0集成开发环境。
其关键是掌握程序的编辑、修改、编译、链接和执行的方法,以及如何调试程序,跟踪程序,通过断点控制程序,观察变量、表达式在程序运行过程中的取值,如何综合运用这些方法定位程序中的的错误和排除错误。
在实验中除了传统的编程设计题外,增加了源程序改错题,源程序完善、修改、替换题,程序的调试跟踪题等,培养学生跟踪程序、设置断点、调试程序的能力,排除程序中语法、逻辑方面错误与故障的能力,并养成细致、周密、严谨的编程作风。
实验中的源程序改错题,先给出一些含有经典、常见错误的源程序,让学生通过编译或运行发现错误,并加以改正,从而纠正初学者易犯的常见错误,实验中的源程序修改替换题,也是先给出源程序,然后要求学生按要求编写修改替换原来程序中的部分代码。
实验中的跟踪调试结果填空题,给出源程序,要求学生填写程序运行过程中的某些中间结果。
强迫学生用断点设置、单步跟踪等调试程序,观察并填写相应的中间结果。
上机实验报告篇1用户名se××××学号姓名学院①实验名称:②实验目的:③算法描述(可用文字描述,也可用流程图):④源代码:(.c的文件)⑤用户屏幕(即程序运行时出现在机器上的画面):2.对c文件的要求:程序应具有以下特点:a可读性:有注释。
b交互性:有输入提示。
c结构化程序设计风格:分层缩进、隔行书写。
3.上交时间:12月26日下午1点-6点,工程设计中心三楼教学组。
请注意:过时不候哟!四、实验报告内容0.顺序表的插入。
1.顺序表的删除。
2.带头结点的单链表的\'插入。
3.带头结点的单链表的删除。
注意:1.每个人只需在实验报告中完成上述4个项目中的一个,具体安排为:将自己的序号对4求余,得到的数即为应完成的项目的序号。
例如:序号为85的同学,85%4=1,即在实验报告中应完成顺序表的删除。
2.实验报告中的源代码应是通过编译链接即可运行的。
3.提交到个人空间中的内容应是上机实验中的全部内容。
上机实验报告篇2一、《软件技术基础》上机实验内容1.顺序表的建立、插入、删除。
2.带头结点的单链表的建立(用尾插法)、插入、删除。
二、提交到个人10m硬盘空间的内容及截止时间1.分别建立二个文件夹,取名为顺序表和单链表。
2.在这二个文件夹中,分别存放上述二个实验的相关文件。
每个文件夹中应有三个文件(.c文件、.obj文件和.exe文件)。
3. 截止时间:12月28日(18周周日)晚上关机时为止,届时服务器将关闭。
三、实验报告要求及上交时间(用a4纸打印)1.格式:《计算机软件技术基础》上机实验报告用户名se××××学号姓名学院①实验名称:②实验目的:③算法描述(可用文字描述,也可用流程图):④源代码:(.c的文件)⑤用户屏幕(即程序运行时出现在机器上的画面):2.对c文件的要求:程序应具有以下特点:a 可读性:有注释。
b 交互性:有输入提示。
安徽建筑工业学院信息网络中心实验报告课程名称:程序设计基础—C程序实验指导教师:专业:班级:姓名:学号:201 至201 学年第学期实验1 C程序运行环境、数据类型、运算符和表达式一、实验目的1.掌握Turbo C集成环境的进入与退出、Turbo C集成环境各种窗口的切换,了解Turbo C集成环境的设置。
2.掌握C语言源程序的建立、编辑、修改、保存及编译和运行等操作。
3.学会使用C语言的基本运算符(主要是算术运算符、赋值运算符)及其表达式。
4.掌握C语言源程序的结构特点与书写规范。
二、实验要求1.根据题目要求,进行各种程序测试与验证,并记录结果。
2.上机调试程序。
按各个程序输入计算机,并进行编译和连接,如果在编译、连接中有错误信息,则要根据这些信息找到程序中的错误所在,然后修改程序,直至正确。
3.详细记录数据的输入、输出信息,按要求写出实验报告。
三、实验内容1.开机;进入Turbo C集成工作环境,了解Turbo C集成工作环境及其菜单的使用,输入如下C语言源程序,并以ex1.C存盘。
/*ex1.c*/#include <stdio.h>main(){printf("Hello!\n");printf("This is C program!\n");}试编译、连接、运行该程序,并按Alt+F5查看运行结果。
运行结果是:2.输入并调试运行以下程序,查看运行结果(由此结果可以了解到在实验用的微型机上,几种数据类型所占的字节数)。
main(){printf("char\t%d bytes\n",sizeof(char));printf("short\t%d bytes\n",sizeof(short));printf("int\t%d bytes\n",sizeof(int));printf("long\t%d bytes\n",sizeof(long));printf("float\t%d bytes\n",sizeof(float));printf("double\t%d bytes\n",sizeof(double));}运行结果是:3.输入并调试运行以下程序。
本科实习报告实习名称: C 语言程序设计实习性质:08060101实习时间:2011.09—2012.01实习地点:学生姓名:学号:学院:信息科学技术学院学系:数学系专业:信息与计算科学指导教师:教师单位:数学系2011年9月1日C语言程序设计课程实验项目目录学生姓名:学号:第 1 页暨南大学本科实验报告专用纸实验一熟悉WinTC/VC的上机过程:一、实验目的:1.熟悉Win TC或者VC++ 6.0的软件环境,掌握使用其进行编辑、编译、连接和运行的方法。
2.通过运行简单的C程序,掌握C源程序的特点。
二、实验内容:(由学生选择WinTC或者VC之一完成相关实验)1.运行WinTC程序,进入C程序设计环境。
2.建立工程文件3.编辑源文件4.编译、连接(1)单文件源程序的编译、连接源程序先经过编译,生成目标文件(.obj文件),然后将目标文件进行连接,生成可执行文件(.exe)。
如果编译、连接中发生错误,在Message窗口中显示出错信息,修改错误后,可重新编译、连接。
(2)多文件源程序的编译、连接可以用长的源程序分割成几个文件,分别编译然后生成可执行文件。
此时使用Project菜单。
步骤:第一步:有三个文件f1.c、f2.c、f3.c组成一个完整的C程序,分别建立三个文件,将f1.c、f2.c、f3.c三个文件保存到同一个文件夹中(如d:\tc\project\)。
f1.c:#include "stdio.h"extern a,b;extern max(int x,int y);main(){int e=1,f=2;printf("%d\n",max(a,b));printf("%d\n",max(e,f));}f2.c:int a=3,b=4;f3.c:int max(int x,int y ){return x>y?x:y;}第 2 页C语言程序设计第二步:构造Project文件,在编辑状态下,编辑一个扩展名为.prj的文件,文件的内容为:f1f2f3第三步:构造EXE文件,按F9键即将三个文件编译、连接成一个EXE文件,文件名为wang.exe。
C语言程序设计上机实验报告学院:机械工程学院班级:机自161213姓名:**学号:***********实验时间:2017年3月6号任课老师:张锐C语言程序设计上机实验报告实验一一、实验名称: C程序的运行环境和运行C程序的方法二、实验目的:了解在C编译系统上如何编辑、编译、连接和运行一个C程序三、实验内容:(1). 输入并运行一个简单的C程序。
(2). 设计程序,对给定的两个数求和。
(3). 设计程序,对给定的两个数进行比较,然后输出其中较大的数。
四、源程序代码:代码1:运行结果1:程序分析1:该程序用来判断所输入的整数是否为一个素数,如果一个数能被除了1和它本身整除,还能被其它数整除,那么它就不是一个素数,因此,用for 循环来进行整除过程的简写。
代码2:运行结果2:程序分析2:简单的使用printf()和scanf()函数进行简单的数据运算。
代码3:运行结果3:程序分析3:使用if语句进行判断。
五.实验总结C语言程序设计上机实验报告实验二一、实验名称:顺序结构程序设计二、实验目的:正确使用常用运算符(算术运算符、赋值运算符)的用法,熟练掌握算术运算符及其表达式,逻辑运算符和逻辑表达式。
三、实验内容:(1). 编写程序,实现小写字母转大写。
(2). 编写程序,实现输入两个不同类型数据后,经过适当的运算(加、减、乘、除)后输出。
(3). 编写程序,计算三角形面积、立方体的体积和表面积、圆的面积和周长。
(4). 编写程序,实现单字符getchar和putchar输入输出。
(5). 编写程序,实现十进制、八进制、十六进制不同数制的输出。
四、源程序代码代码1:运行结果1:程序分析1:所有的字符都有一个对应的数字与之对应,每一个小写字母对应的数与大写字母对应的数之间总是相差32,所以只需要对所输入的字符进行减法运算就可以转换为与之对应的大写字母。
代码2:运行结果2:程序分析2:简单的数据运算和格式字符的输出。
XX大学C++上机实验报告(一)学院:XX学院班级:XXX姓名:XXX学号:*******指导老师:XXX日期:年月日实验三类的定义和使用一.实验目的1.掌握类的概念、类的定义格式、类与结构的关系、类的成员属性和类的封装性;2.掌握类对象的定义;3.理解类的成员的访问控制的含义,公有、私有和保护成员的区别;4.掌握构造函数和析构函数的含义与作用、定义方式和实现,能够根据要求正确定义和重载构造函数。
能够根据给定的要求定义类并实现类的成员函数;5.掌握友元函数的含义,友元函数和成员函数的区别。
二.实验内容及要求1、定义一个圆类,计算圆的面积和周长。
要求:分别用成员函数和友元函数来求圆的面积和周长。
2、定义一个学生类,其中有3个数据成员有学号、姓名、年龄,以及若干成员函数。
同时编写主函数使用这个类,实现对学生数据的赋值和输出。
要求:1)使用成员函数实现对输出的输入、输出;2)使用构造函数和析构函数实现对数据的输入、输出。
3、定义日期类型Date。
要求有以下面成员:1)可以设置日期;2)日期加一天操作;3)输入函数,输入格式为“XXXX年XX月XX日”。
三.实验要求1)写出程序,并调试程序,要给出测试数据和实验结果。
2)整理上机步骤,总结经验和体会。
3)完成实验日志和上交程序。
四.算法思想1.圆类程序中,用Circle构造函数和Length友元函数分别计算圆的的面积和周长。
再通过主函数调用:Date d;cout<<"请输入圆半径r:";cin>>m;Circle p(m);Length(p);实现输入半径r并输出相关计算值。
2.学生类根据要求分别用构造函数Student(double n,int o,char c[50])和析构函数~Student(),实现学生信息的录入与输出。
于是,当在主程序中,定义学生类Student s(n,o,c)是调用构造函数录入信息,所在作用范围结束时,系统会自动调用析构函数输出信息。
成都信息工程学院计算机系
课
程
实
验
报
告
(说明:实验报告必须包含下面的每项内容,根据实验情况认真填写,封面必须打印或复印(A4纸),书写上机实验报告内容的纸张也用A4纸,最后从侧面装订)
一【上机实验目的】
(上机实验目的见老师给的上机实验计划表)
二【实验环境】
PC机每人1台
三【上机实验内容】
(此次上机实验老师布置的具体任务)
四【上机调试程序流程图】(注:可打印)
(可用盒图表示,也可用流程图的形式表示)
五【上机调试中出现的错误信息、错误原因及解决办法】
(记录下你调试程序中出现的错误信息的英文提示,分析出错原因及可能的解决办法)
六【上机调试后的源程序及还存在的问题】(注:源程序可打印)(如你的程序没有问题可不写,但可记录下你对你编写此程序的其它具体想法,)
七【上机实验中的其他它问题及心得】
(在上机实验中遇到的你不能解决的其它问题,如非C语言程序调试的问题等,简单描述一下你此次上机的收获及感想)。
C++上机实验报告实验六C++上机实验报告实验六一、实验目的1、熟练掌握 C++中类和对象的概念及使用方法。
2、深入理解类的成员变量和成员函数的特性及作用。
3、通过实际编程,提高运用类和对象解决问题的能力。
二、实验环境操作系统:Windows 10编程软件:Visual Studio 2019三、实验内容本次实验主要围绕创建一个简单的学生信息管理系统展开。
1、定义一个名为`Student` 的类,包含学生的学号、姓名、年龄和成绩等成员变量。
2、为`Student` 类编写成员函数,实现对学生信息的输入、输出和修改。
3、创建一个包含多个`Student` 对象的数组,模拟学生信息的存储。
4、编写函数,实现对学生信息的排序(如按照成绩从高到低排序)。
四、实验步骤1、首先,打开 Visual Studio 2019 并创建一个新的 C++控制台应用程序项目。
2、在项目中定义`Student` 类,代码如下:```cppclass Student {private:int id;std::string name;int age;double score;public://输入学生信息的函数void inputInfo(){std::cout <<"请输入学号:";std::cin >> id;std::cout <<"请输入姓名:";std::cin >> name;std::cout <<"请输入年龄:";std::cin >> age;std::cout <<"请输入成绩:";std::cin >> score;}//输出学生信息的函数void outputInfo(){std::cout <<"学号:"<< id <<",姓名:"<< name <<",年龄:"<< age <<",成绩:"<< score << std::endl;}//修改学生信息的函数void modifyInfo(){int choice;std::cout <<"1、修改学号 2、修改姓名 3、修改年龄 4、修改成绩" << std::endl;std::cin >> choice;switch (choice) {case 1:std::cout <<"请输入新的学号:";std::cin >> id;break;case 2:std::cout <<"请输入新的姓名:";std::cin >> name;break;case 3:std::cout <<"请输入新的年龄:";std::cin >> age;break;case 4:std::cout <<"请输入新的成绩:";std::cin >> score;break;default:std::cout <<"无效的选择!"<< std::endl;}}};```3、在`main` 函数中创建`Student` 对象数组,并进行相关操作。
C语言程序设计上机实验报告(精选5篇)第一篇:C语言程序设计上机实验报告黔南民族师范学院 C语言程序设计上机实验报告系部:计算机科学系年级:2013 级班级:姓名:学号:实验时间:实验成绩:2013年月日实验三顺序结构程序的设计一实验名称:顺序结构程序的设计二.实验环境:windows XP系统,VC++6.0软件三.实验目的:四.实验内容:五.算法描述流程图六.源程序七.测试数据及运行结果八.实验心得实验成绩评分要求1、原创性发现抄袭或雷同成绩为0分2、正确性程序正确60分3、可读性格式清楚,有注释,变量命名规范20分4、健壮性对特殊测试数据有考虑有测试10分5、效率程序运行效率高10分第二篇:《c语言程序设计》上机实验报告要求《c语言程序设计》上机实验报告要求1.实验环境:软件系统:使用的软件环境硬件系统:机型说明2.实验目的:掌握如何编辑、编译、链接调试运行c程序3.实验内容:(1)掌握顺序结构程序设计.P26 ,p49,p62 3.2~3.7(2)掌握选择结构程序设计(if 和switch语句的用法)p4.2~(3)循环结构程序设计(while, dowhile,for语句的用法)。
(4)掌握数组的定义、输入和输出的方法,字符数组、字符串函数的使用。
(5)了解函数的定义,熟悉函数实参与形参的“值传递”方式,掌握函数的嵌套调用和递归调用方法。
(6)熟悉指针含义及其使用。
(7)熟悉结构体和共用体的使用。
(8)熟悉文件的使用。
4.实验要求:(1)输入编写的源程序,检查程序有无错误(语法和逻辑错误),有则改之。
(2)编译和连接,仔细分析编译信息,如有错误应找出原因并改正。
(3)运行程序,输入数据,分析结果。
5.实验结果:输出程序清单和运行结果。
(要求把原题内容,调试好的程序和其结果一并打印),6.实验体会分析运行结果,本次调试程序取得的经验(遇到的问题,解决的方法等)。
第三篇:C程序设计上机实验报告10C程序设计实验报告实验名称:指针与数组学时安排:2课时实验类别:上机操作型实验要求:1人1组 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄一、实验目的1.理解指针、地址和数组间的关系;2.掌握通过指针操作数组元素的方法;3.掌握数组名作为参数的编程方式。
《高级语言程序设计》实验指导学院:信息科学与技术学院专业:学期:教师:实验6 函数与编译预处理院(系):信息科学与技术学院课程名称:C语言程序设计教师签名:班级学号实验室专业姓名计算机号所用软件实验成绩6.1 实验目的1.熟悉函数的一般形式以及函数的定义与调用。
2.掌握函数实参与形参的对应关系以及“值传递”的方法。
3.掌握自定义函数的编写。
4.掌握函数的嵌套调用和递归调用方法。
5.掌握全局变量、局部变量、动态变量、静态变量的概念和使用方法。
6.2 实验预习1.函数的概念、定义格式、声明格式、调用规则及调用过程中数据传递方法过程,寒暑的嵌套调用和递归调用。
2.宏定义和文件包含等编译预处理指令。
6.3 实验任务1.输入程序,分析程序的运行结果,#include "stdio.h"void xs(){printf(“C 2.0\n”);}void main(){printf(“Turbo_”);xs();}人工分析结果:Turbo_C2.0 程序运行结果:Turbo_C2.02.阅读程序,并将该程序改写成函数调用形式。
#include "stdio.h"void main(){int data;scanf("%d",&data);if(data%2!=0) printf("%d,YES!\n",data);else printf("%d,NO!\n",data);}在提示/**********blank**********/下面填写合适的内容完成程序设计。
定义函数int f(intx),判断x是否为奇数,若是则函数返回1,否则返回0。
#include "stdio.h"void main(){int data,flag;/**********blank**********/______ int f(int x)___________; /*填空位置1,声明函数*/scanf("%d",&data);/**********blank**********/flag=____f(int)_____; /*填空位置2,调用函数,并将返回值赋给变量flag*/if(flag==1) printf("%d,YES!\n",data);else printf("%d,NO!\n",data);}int f(int x){int z;If(x%2!=0) z=1;else z=0;/**********blank**********/_____return z____________; /*填空位置3,带回返回值*/}3.调试运行如下程序。
实验六二维数值数组(参考答案)(1) 设计程序sy6-1.c,从键盘上输入一个3行3列矩阵各个元素的值,输出其主对角线元素和反向对角线元素之和。
算法分析:方阵主对角线上的元素,行下标和列下标相同;辅对角线元素,如果行下标为i,列下标就为2-i;参考答案:# include <stdio.h># include <stdlib.h># include <math.h># include <time.h>void main(){int a[3][3];int i,j,sum=0;srand( time( NULL ) );printf("矩阵:\n");for(i=0;i<3;i++) //用随机函数生成3行3列的二维数组并按矩阵格式输出{for(j=0;j<3;j++){a[i][j]=rand()%20;printf("%4d",a[i][j]);}printf("\n");}for(i=0;i<3;i++)sum=sum+a[i][i]+a[i][2-i];printf("该矩阵的正、反对角线元素之和为:%d\n",sum);}运行结果:(2) 设计程序sy6-2.c,找出N×N矩阵中每列元素中的最大值,并按顺序依次存放于b数组中。
算法分析:按列序遍历二维数组,每列用打擂台的方法求最大数,N列则有N个最大值,分别存于b数组的对应元素中。
# include <stdio.h># include <stdlib.h># include <math.h># include <time.h># define N 4void main(){int a[N][N],b[N];int i,j;srand( time( NULL ) );printf("矩阵:\n");for(i=0;i<N;i++) //用随机函数生成N行N列的二维数组并按矩阵格式输出{for(j=0;j<N;j++){a[i][j]=rand()%20;printf("%4d",a[i][j]);}printf("\n");}for(j=0;j<N;j++) //外循环控制列下标{b[j]=a[0][j]; //假设每列的0行元素是最大数for(i=1;i<N;i++)if(b[j]<a[i][j])b[j]=a[i][j];}printf("该矩阵每列元素的最大值是:\n");for(i=0;i<N;i++)printf("%4d",b[i]);printf("\n");}运行结果:(3) 设计程序sy6-3.c,定义一个3×3的二维数组,通过随机函数自动赋值。
c语言上机实验心得在科技高度发展的今天,计算机在人们之中的作用越来越突出。
而c语言作为一种计算机的语言,学习它将有助于我们更好的了解计算机,与计算机进行交流,因此,我们一定要学好c语言,这对我们以后的发展是十分重要的。
说到这,上机实验当然就是一个必不可少的环节了,c语言灵活、简洁的特点,只有通过编程实践才能真正了解,真正说懂。
为了更好地学习语法规定、掌握程序设计方法、提高程序开发能力,我们必须实际上机、编写程序。
通过实验我也发现了自己不少的问题,这都是只看书上的程序而没有自己亲身上机编写程序而无法得知的,假如我们只因看熟书上的程序就以为自己已经掌握了c语言那就大错特错了。
我主要存在以下的这些缺点:1、学习耐心与细心不足,如scanf(“%d”,&n);中的“&”有时候会忘了。
而在最后输出时又错写成printf(“%d”,&n);从而错误得输出了地址而不是我原来想要的答案。
2、编程思想不够发散,看着题目有时想不出解答的方法,更不用说编写程序来解题了。
3、4、基本功不够,有些函数的表达不太精通,需要看书来核实,以致耗时较多。
知识不够广,有些内容没有学好,不能要用到时及时反映出来,认识程度不够深刻。
5、6、有时候不够精简,有一点用处不大或者说没有也可以的文字存在。
英语水平较差,对错误的地方虽然电脑有说,但由于是英文,理解上还是存在一点问题。
为了能更好地学好c语言,在今后学习中我要更多的动脑,综合运用所学,多看相关东西,多上机练习,提高电脑水平,增强自学能力,把已会的东西掌握好。
实验中我深刻意识到完成程序的编写,决不意味着万事大吉。
认为万无一失的程序,实际上机运行时可能会出现很多意想不到的问题。
有时编译程序检测出一大堆错误,有时程序能够顺利运行,但是运行结果并不是你预期中想要的。
因为开发环境所提供的编译系统无法发现程序逻辑错误,或者是你原来所设计时的理论错误,这就只能靠自己的上机经验来分析判断错误的所在了。
C语言课程设计上机实习内容.(共5篇)第一篇:C语言课程设计上机实习内容.C语言课程设计上机实习内容一、程序设计题目:简单的学生成绩管理程序设计二、程序设计功能及要求:1、原始数据输入和结果输出要求使用文件存放;2、计算每个学生三门功课的平均分,并按平均分排列名次,若平均分相同则名次并列;结果写入文件。
3、统计全班每门课程的平均分,并计算各分数段(60以下,60~69,70~79,80~89,90以上)的学生人数;结果写入文件。
4、按格式在屏幕上打印每名学生成绩条;5、在屏幕上打印出所有不及格学生的下列信息:学号,不及格的课程名,该不及格课程成绩;6、(选做)在屏幕打印优等生名单(学号,三门课程成绩,平均成绩,名次),优等生必须满足下列条件:1)平均成绩大于90分;或平均分大于85分且至少有一门功课为100分;或者平均分大于85分且至少两门课程成绩为95分以上;2)名次在前三名3)每门功课及格以上;(若完成选做题,课程设计成绩将给予加分)三、文件格式1、原始数据文件格式(具体数据自行编写)学号姓名英语C语言高等数学张三李四….….….2、输出数据文件(由程序自动生成)1)学生综合成绩文件。
(由程序自动生成)学号姓名英语 C语言高等数学平均成绩名次张三 76 89 78 80.5 5 李四….….….3 ….2)统计结果文件。
分数段英语C语言高等数学<60…60~69…70~79…80~89…>=90 …平均成绩75.5 …四、实习报告要求1、程序分析和设计2、流程图3、源程序清单4、调试过程: 测试数据及结果,出现了哪些问题,如何修改的5、程序有待改进的地方。
6、本次实习的收获和建议。
第二篇:C语言上机实习报告一、实验目的1.能够描述VC++6.0开发平台的使用过程,学会运行一个C程序的基本步骤,包括编辑、编译、链接和运行。
2.能够使用算术表达式和赋值表达式书写正确的语句。
3.能够使用输入/输出函数编写简单的程序。
《C语言程序设计》实验(上机)报告
《C语言程序设计》实验(上机)报告
《C语言程序设计》实验(上机)报告
《C语言程序设计》实验(上机)报告
《C语言程序设计》实验(上机)报告
《C语言程序设计》实验(上机)报告
《C语言程序设计》实验(上机)报告
《C语言程序设计》实验(上机)报告
《C语言程序设计》实验(上机)报告
实验报告填写说明
1.实验报告中的班级写行政班级(如道土1班),学号写完整学号(如20176000101),实
验日期不要漏写,任课教师写全名。
2.设计流程(算法描述)的书写用传统流程图、N-S流程图或伪代码中的任一种方式写出算法。
3.调试和测试结果应有内容,至少是“调试结果正确”,如果遇到错误,则写出错误信息,
及调试解决方法。
要求写出测试用的数据和测试结果,应对所有路径都进行测试。
武汉科技大学C++上机实验报告专业班级:自动化0901班*名:**学号:************指导老师:**日期:2011年9月23日实验一C++简单程序设计一、实验目的1.学会编写简单的C++程序2.练习使用简单的输入输出3.掌握函数的定义和调用方法二、实验内容1.编程计算图形的面积..程序可计算圆形、长方形、正方形的面积;运行时先提示用户选择图形的类型;然后;对圆形要求用户输入半径值;对长方形用户输入长和宽的值;对正方形要求用户输入边长的值;计算出面积的值后将其显示出来..2.编写一个函数把华氏温度转换为摄氏度;转换公式为:(-=FC..*)3295三、实验注意事项实验报告中;需要写出实验名称、学生姓名、学号、班号和实验日期;每个程序中;需要编写一个可执行函数与main主调函数;自主设计输入、输出值;使得结果可以由控制台显示输出..四、实验程序代码及结果1.编程计算图形的面积..程序可计算圆形、长方形、正方形的面积;运行时先提示用户选择图形的类型;然后;对圆形要求用户输入半径值;对长方形用户输入长和宽的值;对正方形要求用户输入边长的值;计算出面积的值后将其显示出来..代码:include<iostream>using namespace std;//求圆形面积;float yuanxing ;//求长方形面积;float changfangxing ;//求正方形面积;float zhengfangxing ;int main{int n;float s;int c;int y;cout<<"计算圆形的面积;请输入1 "<<endl;cout<<"计算长方形的面积;请输入2 "<<endl;cout<<"计算正方形的面积;请输入3 "<<endl;cin>>n ;switch n{case 1: s=yuanxing ;cout<<"所求圆形面积为"<<s<<endl;break;case 2: s=changfangxing ;cout<<"所求长方形面积为"<<s<<endl;break;case 3: s=zhengfangxing ;cout<<"所求正方形面积为"<<s<<endl;break;}}float yuanxing{float r;s;cout<<"请输入半径:";cin>>r;s=3.14rr;return s;}float changfangxing{float s;l;w ;cout<<"请输入长:";cin>>l;cout<<"请输入宽:";cin>>w;s=lw;return s ;}float zhengfangxing{float s;h;cout<<"请输入边长:";cin>>h;s=hh;return s ;}输出结果:a运行界面b求圆形面积(c)求长方形面积d求正方形面积2.编写一个函数把华氏温度转换为摄氏度;转换公式为:=FC..(-*)9532代码:include <iostream>using namespace std;//将华氏温度转换成摄氏温度float zhuanhuanfloat x;int main{float m;n;cout<<"请输入一个华氏温度:";cin>>n;m=zhuanhuann;cout<<"摄氏温度为:"<<m<<endl;}float zhuanhuanfloat x{float y;y=x-325/9.0;return y ;}输出结果为:a求出为正的摄氏温度b求出为负的摄氏温五、实验心得与体会本次试验还是比较简单的;两个题目都是以调用函数为主..但他们也有所不同:题1中;函数的申明、调用、定义都没有附带参数;这是因为所需数值是在函数中获得;而非从主函数继承;如若附带反而是错的这是实验出错后得出的结论;题2中恰好相反;子函数的计算数值是从主函数继承的;所以其定义、申明、调用均要附带参数..这是本次实验最大的收获。
C上机实验报告实验六集团标准化工作小组 #Q8QGGQT-GX8G08Q8-GNQGJ8-MHHGN#
实验六
实验目的
1.掌握运算符重载的方法
2.学习使用虚函数实现动态多态性
实验要求
1.定义Point类,有坐标_x,_y两个成员变量;对Point类重载“++”(自增)、“――”(自减)运算符,实现对坐标值的改变。
2.定义一个车(vehiele)基类,有Run、Stop等成员函数,由此派生出自行车(bicycle)类、汽车(motorcar)类,从bicycle和motorcar派生出摩托车(motorcycle)类,它们都有Run、Stop等成员函数。
观察虚函数的作用。
3. (选做)对实验4中的People类重载“==”运算符和“-”运算符,“==”运算符判断两个people类对象的id属性是否相等;“-”运算符实现People类对象的赋值操作。
实验内容及实验步骤
1.编写程序定义Point类,在类中定义整型的私有成员变量_x_y,定义成员函数Point& operator++();Point operator++(int);以实现对Point类重载“++”(自增)运算符,定义成员函数Point& operator--();Point operator--(int);以实现对Point类重载“--”(自减)运算符,实现对坐标值的改变。
程序名:1ab8_1.Cpp
#include <iostream>
using namespace std;
class Point
{
public:
Point();
Point(int x,int y);
~Point(){} (选做)对实验4中的People类重载“==”运算符和“-”运算符,“==”运算符判断两个people类对象的id 属性是否相等;“-”运算符实现People类对象的赋值操作。
源程序:
#include <iostream>
#include <string>
using namespace std;
class Birthday{
public:
Birthday(int Year,int Month,int Day); nter();
}
for(t=0;t<2;t++) how();
}
people p3; //定义people类的对象p3
p3-p[1]; //使用重载运算符将p[1]赋给p3
cout<<"\n第3个人员信息如下:"<<endl;
();
cout<<"p[0],p[1]";
p[0]==p[1]; //使用重载运算符-判断p[0]和p[1]的id是否相等
return 0;
}
运行结果:
思考题
1.如何将一个运算符重载为类的成员函数
一般语法形式:
返回类型 operator 运算符(形参表)
{
函数体
}
函数的参数个数比原来的曹祖数个数要少一个(后置“++”,“--”除外)。
2.如何将一个运算符重载为类的友元函数
一般形式:
friend 返回类型 operator 运算符(形参表)
{
函数体
}
运算所需的操作数都需要通过函数的形参表传递,在形参表中形参从左至右的顺序就是运算符操作数的顺序,仅在需要访问类的私有成员或保护成员时才定义为友元函数。
3.如何实现运行时刻的多态
通过继承和虚函数实现。
心得体会:
掌握了运算符重载的方法;运算符重载可以重载为类成员函数和非成员函数;学会了使用继承和虚函数实现运行时刻的多态;在实现动态多态时,必须使用基类类型的指针或引用,是该指针指向基类的不同派生类的对象,并通过该指针指向虚函数才能实现动态的多态性。
如果未声明为虚函数,则普通的派生类的新成员函数会覆盖基类同名成员函数,将不能实现运行时刻多态性。