C++输入输出流实验报告
实验一 P1口输入、输出实验
实验一P1口输入、输出实验一.实验要求1.P1口做输出口,接八只发光二极管,编写程序,使发光二极管循环点亮。
2.P1口做输入口,接八个拨动开关,以实验机上74LS273做输出口,编写程序读取开关状态,将此状态,在发光二极管上显示出来。
二.实验目的1.学习P1口的使用方法。
2.学习延时子程序的编写和使用。
三. 实验电路及连线实验一时,P1.0-P1.7接L0-L7。
实验二时,P1.0-P1.7接K0-K7,PO0-PO7接L0-L7。
CS273接8300H。
四.实验说明1.P1口是准双向口。
它作为输出口时与一般的双向口使用方法相同。
由准双向口结构可知当P1口作为输入口时,必须先对它置高电平使内部MOS管截止。
因为内部上拉电阻阻值是20KΩ~40KΩ,故不会对外部输入产生影响。
若不先对它置高,且原来是低电平,则MOS管导通,读入的数据是不正确的。
2.延时子程序的延时计算问题对于程序DELAY:MOV R0,#00HDELAY1:MOV R1,#0B3HDJNZ R1,$DJNZ R0,DELAY1查指令表可知MOV,DJNZ 指令均需用两个机器周期,而一个机器周期时间长度为12/11.0592MHz,所以该段程序执行时间为:((0B3+1)×256+1)×2×12÷11059200=100.002mS五.实验框图程序框图:TP1A.ASM主程序框图TP1B.ASM主程序框图六.附加实验内容1、用P1口的P1.0-P1.3作输出口接4个发光二极管,P1.4-P1.7作输入口接4个拨动开关,将开关的状态读进来并在发光二极管上显示。
七.实验报告要求1、书写实验目的、实验内容、实验连线、以及实验中的观察结果;2、画出流程图、编写实验程序,写出实验的心得体会。
c语言实验报告实验
c语言实验报告实验C 语言实验报告实验一、实验目的本次 C 语言实验的主要目的是通过实际操作和编程实践,加深对 C 语言基本语法、数据类型、控制结构、数组、指针等重要概念的理解和掌握,提高编程能力和解决实际问题的能力。
二、实验环境本次实验使用的编程环境为 Visual Studio 2019,操作系统为Windows 10。
三、实验内容1、基本数据类型和运算符的使用定义不同类型的变量,如整数型(int)、浮点型(float、double)、字符型(char)等,并进行赋值和运算操作。
熟悉各种运算符的优先级和结合性,包括算术运算符(+、、、/、%)、关系运算符(>、<、>=、<=、==、!=)、逻辑运算符(&&、||、!)、位运算符(&、|、^、~、<<、>>)等。
2、控制结构的应用使用ifelse 语句实现条件判断,根据不同的条件执行相应的代码块。
运用 switch 语句进行多分支选择,处理不同的情况。
利用 for 循环、while 循环和 dowhile 循环实现重复执行的操作,例如计算数列的和、打印特定的图案等。
3、数组和字符串的操作定义和使用一维数组、二维数组,进行数组元素的访问、赋值和遍历。
掌握字符串的存储和处理方式,使用字符数组和字符串函数(如strlen、strcpy、strcmp 等)进行字符串的操作。
4、指针的应用理解指针的概念和指针变量的定义,通过指针访问变量和数组元素。
实现指针与数组、指针与函数的结合使用,体会指针在程序中的灵活运用。
5、函数的定义和调用编写自定义函数,实现特定的功能,如计算阶乘、判断素数等。
掌握函数的参数传递方式(值传递和地址传递),理解函数的返回值。
6、结构体和共用体的使用定义结构体类型,创建结构体变量,访问结构体成员。
了解共用体的概念和使用场景,比较结构体和共用体的区别。
四、实验步骤1、实验准备打开 Visual Studio 2019 开发环境,创建一个新的 C 语言项目。
c++实验报告【范本模板】
面向对象程序设计(C++)实验报告指导老师:***学生:吴健班级:软131学号:*********目录实验一、VC6.0环境入门与简单程序设计实验报告 (3)实验二、函数的应用实验报告 (7)实验三、类与对象实验报告 (14)实验四、C++程序结构实验报告 (22)实验五、数组、指针与字符串实验报告 (26)实验六、继承和派生实验报告 (33)实验七、多态性实验报告 (42)实验八、面向对象综合实验实验报告 (48)实验一、VC6.0环境入门与简单程序设计实验报告系软件工程班级 131 学号 139074164 姓名吴健同组者指导教师柯栋梁一、实验目的:1、熟悉VC++6.0开了环境并编写简单的C++程序。
3、使用C++语言编写简单的输入输出程序。
4、使用VC++6.0的DEBUG调试功能:单步执行、设置断点、观察变量值。
二、实验内容:1、使用VC++建立一个标准C++程序,编译、运行如下程序:#include<iostream〉Int main(){Cout〈<”Hello World!\n";Cout<<”Welcome to C++!\n";}2、编程计算图形的面积。
程序可计算圆形、长方形、正方形等的面积,运行时首先提示用户选择图形类型,然后根据不同图形类型,输入相关参数计算其面积,并将其显示出来.3、使用DEBUG功能观察任务2程序运行中变量值的变化情况.三、实验要求:1、任务1要求熟悉VC++开发环境,并能够使用其建立第一个C++程序.2、实验前要做好充分准备,包括程序清单、调试步骤、调试方法,以及对程序结果的分析等。
四、实验报告:1.程序运行截图2.面积计算1、程序说明。
用if -else语句进行选择程序功能,while语句实现功能的循环实现程序如下:#include〈iostream>#include〈cmath〉using namespace std;int main(){cout〈<”1计算圆面积”<〈endl〈<"2计算矩形面积"<〈endl〈<"3计算正方形面积”〈〈endl<<"4退出"〈〈endl<<"请选择相应功能代码:”;int x; //x对应编号cin〉>x;double area;while(x!=4){if(x==1){double r;cout〈〈"半径:";cin〉>r;area=3。
C语言实验报告
学生实验报告册(理工类)课程名称:C语言程序设计专业班级:13电气工程及其自动化学生学号:1304102013 学生姓名:孙健所属院部:机电工程学院指导教师:胡盈盈20 13 ——20 14 学年第二学期金陵科技学院教务处制实验报告书写要求实验报告上交电子稿,标题采用四号黑体,正文采用小四号宋体,单倍行距。
实验报告书写说明实验报告中实验目的和要求、实验仪器和设备、实验内容与过程、实验结果与分析这四项内容为必需项。
教师可根据学科特点和实验具体要求增加项目。
填写注意事项(1)细致观察,及时、准确、如实记录。
(2)准确说明,层次清晰。
(3)尽量采用专用术语来说明事物。
(4)外文、符号、公式要准确,应使用统一规定的名词和符号。
(5)应独立完成实验报告的书写,严禁抄袭、复印,一经发现,以零分论处。
实验报告批改说明实验报告的批改要及时、认真、仔细,一律用红色笔批改。
实验报告的批改成绩采用五级记分制或百分制,按《金陵科技学院课堂教学实施细则》中作业批阅成绩评定要求执行。
实验项目名称:初级程序设计实验学时: 6实验地点: A206 实验日期: 4.10---4.24 实验成绩:批改教师:胡盈盈批改时间:实验1 初级程序设计一、实验目的和要求(1)熟悉Visual C++集成环境,进行编辑、保存、编译、连接及运行,并能进行简单程序调试;(2)掌握C语言中各种运算符的使用;(3)掌握C语言中各种数据类型的区别与应用;(4)熟练掌握C语言中变量的定义、赋值和使用,表达式语句、输入/输出语句的使用;(5)掌握C语言中输入/输出函数的使用;(6)掌握C语言中控制语句的使用,含if-else、for、while、do-while语句的使用。
二、实验仪器和设备奔腾以上计算机,装有windows XP以上版本操作系统和Visual C++ 6.0软件。
三、实验内容与过程1、程序调试(1)#include <stdio.h>main(){ int s,t,p,sum;scanf(“%d%d%d”,&s,&t,&p);sum=s+t+p;printf(“sum=%d\n”,sum);}(2)#include <stdio.h>main(){ int k=3;if(k=3) printf(“***”);else printf(“###”);}(3)#include <stdio.h>main(){int k=0;do{ printf(“k=%d\n”,k);}while(k++>0);}2、程序改错下面是判断一个学生考试成绩及格与否的程序(成绩A,或B,或C者为及格;成绩为D者不及格),调试并改进如下程序使其能满足上述输出的需要。
C语言程序设计实验报告
南京邮电大学通达学院程序设计(上机)报告题目: R015M专业通信工程学生姓名班级学号指导教师日期 2020.11.18给定n个点的坐标,这n个点依次围成一闭合多边形,再给一点(x,y),判断它是否在多边形中。
课题分析:1、Double函数的应用:double是C语言的一个关键字,代表双精度浮点型。
占8 个字节(64位)内存空间。
其数值范围为1.7E-308~1.7E+308,精度完全保证的有效数字是15位,16位只是部分数值有保证。
可以用格式化输入输出语句scanf和printf进行double类型的输入输出,格式化字符为%lf。
2、赋值中的类型转换当赋值运算符两边的运算对象类型不同时,将要发生类型转换,转换的规则是:把赋值运算符右侧表达式的类型转换为左侧变量的类型。
3、利用自定义的函数实现叉乘4、Input():input属于printf()函数中的式样化字符串,将输出结果格式化并将输入的参数返回到程序中。
printf()函数用于向准则输出设备按规定式样输出消息。
正在编写步骤时经常会用到此函数。
printf()函数的挪用式样为: printf("<式样化字符串>",<参数表>)。
输入n个点,例如:三角形,那n就为3。
矩形,n就为4。
其中,n有限制条件,n至少大于等于3,为一个三角形。
这n个点必须按多边形顺时针或逆时针依次输入,这个多边形必须是凸多边形。
在最后运行过程中,输入n 个点的坐标。
再定义一个(x,y),判断此(x,y)是否在n个点构成的图形当中。
首先先计算两个向量(a,b),(c,d)的叉乘。
2个向量的叉乘就是计算向量的位置是在左边还是右边。
如果这个定义点在多边形内部的话,它就会始终在多边形边框的左侧或者右侧。
int n;double x, y;/输入n个点和坐标(x,y)。
void input()/定义一个input函数。
{int a,b,c,d,k;printf("请输入第一个向量");scanf("%d%d",&a,&b);printf("请输入第二版个向量");scanf("%d%d",&c,&d);k=ac+bd;printf("叉乘结果为权%d",k);}利用上方熟悉的叉乘公式进行改编,最终算出需要的(a,b)点与(c,d)点的叉乘结果。
c++输入输出流实验报告要点
实验四输入输出流实验课程名:面向对象程序设计(C++)专业班级:学号:姓名:实验时间:实验地点:指导教师:代码分析:1)在输入时调用getline()以换行符作为输入姓名时的结束标志,已达到输入空格的目的2)输出时采用resetiosflags(ios::right)实现结束向左对齐,用setw(8)实现输出域宽为8,使用一系列的格式控制字符来实现输出格式的控制。
2. 重载运算符“<<”和“>>”,使其能够输入一件商品的信息和输出这件商品的信息。
商品的信息由编号、商品名和价格。
假如商品类Merchandise的框架如下:class merchandise{public:Merchandiss();~Merchandiss();friend istream& operator>>(istream& in,Merchandiss& s);friend ostream&operator<<(ostream& out,Merchandiss& s);private:int no;char *name;double price;};要求实现该类,并编写以下的main函数对该类进行操作。
int main(){ Merchandise mer;cin>>mer;cout<<mer;return 0;}实验代码:#include<iostream>using namespace std;class merchandise{out<<s.no<<' '<<<<' '<<s.price<<endl;return out;}int main(){merchandise mer;cin>>mer;cout<<mer;return 0;}实验结果:实验分析:先定义一个商品的类,构造函数定义为无参函数在函数体中将name置为空,其他为0.在重载>>时使用getline函数,输入name以’\n’作为结束标记重载<<时直接输出。
实验报告
实验1 C程序设计入门一、实验目的1、熟悉C程序环境2、掌握简单C程序的编辑、编译和运用方法二、知识要点1、用printf函数输出指定字符串(转义字符的使用)2、计算并输出表达式的值3、程序书写风格三、实验内容(要求提供:①算法描述或流程图②源程序)1、编程输出“我的信息”,包括姓名、性别、专业名称和课程名称,格式为:姓名:性别:专业名称:课程名称:2编程:定义一个名为all的整形变量并为其赋值100.分别计算all的两倍及all的平方,用文字什么的方法输出结果,即:All的两倍是:(计算结果)All的平方式:(计算结果)16²-153编程求以下表达式的值:23+—————9+14(注意表达式的书写)4、编程求以下表达式的值(要求:分别定义一个int和float类型的变量计算的结果存入该二变量并输出,分析结果。
)(1)3/2+4/3+5/4+6/5(2)3.0/2+4.0/3+5.0/4+6.0/5四、实验结果要求写出运行界面并输出运行结果注意事项:实验分析与实验结果部分1)流程图或NS图2)可以运行的程序代码3)运行结果4)纸张不够写背面实验2-3数据类型、常量变量及顺序结构程序设计一、实验目的1、掌握常量和变量的概念以及使用1、掌握变量的定义、赋值与引用2、掌握顺序结构相关语句的使用3、掌握scanf和printf输入、输出数据的方法二、知识要点1、变量与常量概念2、数据输入、输出的格式控制3、标准库函数与头文件的使用4、算术运算与赋值运算5、数据类型转换三、实验内容(要求提供:①算法描述或流程图②源程序)1、输入两个人的身高,计算并输出他们的平均身高。
(身高以米为单位,最后结果保留两位小数)2、编程计算并输出16.8与27.5两个数的和、差、积、商,要求输出界面为:(步骤:定义变量—计算并赋值—按格式输出结果)和是:(计算结果)差是:积是:商是:3、输入三个整数给变量a,b,c, 输出a+2b+3c的值,之后交换a和b的值再计算a+2b+3c的值并输出结果。
大学c语言实验报告-1基本输入输出
实现程序流程
写程序代码
调试验证代码
四、实验原始纪录(源程序、数据结构等)
11.原程序:
12.原程序:
13.原程序:
14.原程序:
五、实验结果及分析(计算过程与结果、数据曲线、图表等)
11题输出结果:
12题输出结果:
13题输出结果:1ຫໍສະໝຸດ 题输出结果:六、实验总结与思考
1.本次试验初步了解了输入与输出函数在实际程序中的运行及VC++的使用。
2.对逻辑运算了解的更加深刻。
教师评语:
二实验主要仪器和设备计算机三实验方法与步骤需求分析算法设计思路流程图等分析题目实现程序流程写程序代码调试验证代码四实验原始纪录源程序数据结构等11
实验报告
课程名称程序设计基础——c语言
实验项目名称实验1基本输入输出
实验学生班级
实验学生姓名
学 号
同组学生姓名\
实验时间
实验地点
实验成绩评定
指导教师签字年月日
一、实验目的和要求
1.理解该部分的概念。包括:
掌握该部分的用法,熟练编写程序应用
2.上机调试之前必须携带已经编写完毕的程序源代码,实验过程中主要是进行调试。
3.上机时间不足以完成实验项目的同学利用课外时间做完所有项目。
4.根据所选实验内容完成实验报告。
二、实验主要仪器和设备
计算机
三、实验方法与步骤(需求分析、算法设计思路、流程图等)
java输入输出流实验报告总结】
java输入输出流实验报告总结】Java输入输出流实验报告总结在本次实验中,我们学习了Java的输入输出流的概念和用法。
输入输出流是Java中用于处理输入和输出操作的工具。
通过输入流,我们可以将外部数据输入到程序中进行处理,通过输出流,我们可以将程序中的数据输出到外部文件或设备上。
在本次实验中,我们通过几个具体的示例来探索输入输出流的不同用法和特性,以期更好地理解和掌握它们的使用。
首先,我们学习了如何使用FileInputStream和FileOutputStream这两个类来进行字节流的输入和输出操作。
这两个类分别用于从指定文件中读取字节数据和将字节数据写入到指定文件中。
通过这两个类,我们可以实现文件的拷贝、移动、创建等功能。
同时,我们还了解了如何使用BufferedInputStream和BufferedOutputStream这两个类来提高读写效率。
这两个类可以通过缓存数据来减少对底层系统的IO操作次数,从而提高读写速度。
接下来,我们学习了如何使用FileReader和FileWriter这两个类进行字符流的输入和输出操作。
这两个类与字节流的输入输出类似,但它们处理的是字符数据。
通过这两个类,我们可以读取和写入文本文件中的字符数据。
我们还了解了字符编码和字符集的概念,并学习了如何使用InputStreamReader和OutputStreamWriter来进行字符流和字节流之间的转换。
除了字节流和字符流,我们还学习了对象流的使用。
对象流可以将Java 对象直接写入到文件中,也可以从文件中读取Java对象。
这在处理一些复杂的对象数据时非常有用。
我们通过使用ObjectInputStream和ObjectOutputStream这两个类,实现了对象的读写操作。
需要注意的是,被写入和读取的对象必须实现Serializable接口,否则会抛出NotSerializableException异常。
在实验过程中,我们还探索了如何使用标准输入输出流。
c语言实验报告分析总结
c语言实验报告分析总结实验是科学研究和学习的重要手段之一,通过实验可以验证理论,探索问题的解决方案,并提取实验数据进行分析和总结。
本次实验是关于C语言的,以下是对这次实验进行分析和总结的报告。
一、实验目的及原理:本次实验的目的是通过编写C语言程序来实现特定的功能,进一步了解和掌握C语言的基本语法和编程思想。
具体的实验内容包括:实现简单的算术运算、条件判断、循环结构以及函数调用等基本操作。
C语言是一种广泛应用的程序设计语言,具有简单、高效、灵活的特点。
它使用结构化编程方法,支持面向过程和面向对象的编程风格。
C语言的核心思想是利用变量、表达式、控制流结构和函数等基本元素来构建程序。
二、实验过程和方法:1. 编写算术运算的C程序。
2. 编写条件判断的C程序。
3. 编写循环结构的C程序。
4. 编写函数调用的C程序。
5. 运行程序,观察输出结果。
三、实验结果分析与讨论:通过对实验所编写的C程序进行运行,可以得到相应的输出结果。
下面对实验结果进行分析和讨论。
1. 算术运算的C程序算术运算是C语言的基本操作之一,可以实现加、减、乘、除等数学运算。
在实验中,我们编写了一段简单的算术运算的C 程序,实现了两个数的加法、减法、乘法和除法运算,并输出相应的结果。
通过运行实验程序,可以观察到加法、减法、乘法和除法运算的结果是正确的,符合数学运算规则。
这说明我们编写的算术运算的C程序是正确的。
2. 条件判断的C程序条件判断是C语言中一种重要的控制结构,可以根据特定条件的成立与否来执行不同的操作。
在实验中,我们编写了一段简单的条件判断的C程序,根据输入的数字判断其正负性,并输出相应的结果。
通过运行实验程序,可以观察到当输入的数字为正数时,程序输出“正数”,当输入的数字为负数时,程序输出“负数”,当输入的数字为0时,程序输出“零”。
这符合我们编写程序时设定的条件判断逻辑,说明我们编写的条件判断的C程序是正确的。
3. 循环结构的C程序循环结构是C语言中一种常用的控制结构,可以重复执行特定的操作。
单片机《输入输出口》实验报告
实验一I/O口输入输出实验一、实验目的1. 掌握单片机的并行I/O口的接口结构、驱动能力特点和应用处理方法;2. 掌握单片机I/O引脚作为输出引脚的使用方法;3. 掌握单片机I/O口配置方法4. 掌握利用单片机I/O口设计单片机应用程序用输入控制输出的方法;5. 掌握单片机控制程序的结构。
二、实验原理及实验内容实验要求:利用单片机并行口做不规则花样流水灯,流水花样不低于16个。
实验原理:1.LED原理图2.STC15的IO口原理P6m0为0时,P6m1为0时,IO口模式为准双向口(传统8051 I/O口模式,弱上拉)灌电流可达20mA,拉电流为270微安,由于制造误差,实际为270~150微安* P6m0为0时,P6m1为1时,为推挽输出(强上拉输出,可达20mA,要加限流电阻)* P6m0为1时,P6m1为0时,(为高阻输出电流既不能流入也不能流出)P6m0为1时,P6m1为1时,为开漏(Open Drain),内部上拉电阻断开。
开漏模式即可读取外部状态也可以对外输出(高低电平)。
按照表格寄存器内容,我们对8个LED1,也就是P6口进行配置,当P6输出低电平时LED被点亮。
所以配置如下:P6M1 &= 0x00;P6M0 &= 0x00; //作为普通IO口,为弱上拉sbit KEY1=P2^0;sbit KEY2=P2^1;//定义两个按键由于STC15F2K60S2寄存器初始化时默认是:P6M1=0x00;P6M0 = 0x00;3.程序流程图主循环程序流程图三、实验程序#include <STC15.h>#include <intrins.h>#define Uchar unsigned char#define Uint unsigned intint LED[]={0xfc,0xf3,0xcf,0x3f,0xe7,0xdb,0xbd,0x7e,0x7e,0xbd,0xdb,0xe7, 0xfe,0xfb,0xef,0xbf,0xfd,0xf7,0xdf,0x7f};void P6Init()//IO口初始化函数{P6M0=0X00;P6M1=0X00;}void delay3s(void) //误差0us{unsigned char a,b,c;for(c=189;c>0;c--)for(b=230;b>0;b--)for(a=33;a>0;a--);}void main(){Uchar i=0;P0Init();while(1){for(i=0;i<20;i++){P6=LED[i];delay3s();}}}四、实验仪器和设备4.使用了keil软件Proteus 8 Professional软件。
实验报告
实验报告学号:15281183 姓名:李明安实验一1.实验目的:简单数值计算体验题,编写程序验证并打印输出。
2.实验内容,算法,流程图及主要符号说明。
(1)调用函数名“math.h”进行数学运算(2)在计算结果前加上(int)表示强行将结果用整数表示;0x表示16进制数。
(3)pow(m,n)表示m的n次方;log表示ln;sqrt(n)表示n的算术平方根。
3.完整的程序清单。
int_tmain(int argc, _TCHAR* argv[]){int key1, key2, key3, key4, key5;key1 = 5 * (0x10 + 12 / 3) - 012 + 0x2f;key2 = (int)sin(30 * 3.14159 / 180) - (int)cos(60 * 3.14159 / 180);key3 = (int)log(pow('z' - 'a' + 1.0, 2)) + (int)log10(pow(10.0, 3));key4 = sqrt(pow(3.1415926, 2) + 1);key5 = 23.582 / (7.96 / 3.67);printf("key1=%d\nkey2=%d\nkey3=%d\nkey4=%d\nkey5=%d\n", key1, key2, key3, key4, key5);return 0;}4.输出结果。
5.调试分析、体会及存在的问题。
不了解0和0x在数前表示什么意思实验二1.实验目的:用scanf函数输入如下结果2.实验内容、算法流程图及主要符号说明(1)整数型、int、%d;字符型、char、%c;小数型、float、%f 3.完整程序清单#include"stdafx.h"int_tmain(int argc, _TCHAR* argv[]){int a, b;char c1, c2;float x, y, z;printf("input a\n");scanf_s(" %d", &a);printf("input b\n");scanf_s(" %d", &b);printf("input c1\n");scanf_s(" %c", &c1);printf("input c2");scanf_s(" %c", &c2);printf("input x\n");scanf_s(" %f", &x);printf("input y\n");scanf_s(" %f", &y);printf("input z\n");scanf_s(" %f", &z);printf("%d,%d,'%c','%c',%f,%f,%f\n", a, b, c1, c2, x, y, z);return 0;}4输入、输出结果。
C语言实验报告-实验2 顺序结构程序设计
实验2 顺序结构程序设计一、实验目的1. 学会使用自然语言或伪代码描述算法2. 掌握变量、运算符、表达式的使用3. 熟悉顺序结构程序中语句的执行过程4. 掌握标准输入流对象cin及标准输出流对象二、实验内容编写程序在屏幕上显示如图2-1所示的菜单。
图2-1 学生选课管理系统主界面实验步骤:范例:1)在VS2008中新建项目,在项目中新建C++源文件,输入下面程序,并且编译、连接。
//***************************************************************//* 程序名:实训2_1.cp *//* 主要功能: *//* 显示主菜单,并获取用户输入的模块编号 *//***************************************************************#include <iostream> // 包含输入输出接口文件using namespace std; // 引用标准命名空间void mainMenu();int main() // 定义主函数{ // 主函数开始mainMenu();return 0;}void mainMenu(){system("cls");cout<<"\n\n\n\n\n";cout<<"\t\t|---------------学生选课系统(学生版)------------|\n";cout<<"\t\t|\t 0. 退出 |\n";cout<<"\t\t|\t 1. 学生信息管理 |\n";cout<<"\t\t|\t 2. 教师信息管理 |\n";cout<<"\t\t|\t 3. 课程信息管理 |\n";cout<<"\t\t|\t 4. 学生选课管理 |\n";cout<<"\t\t|\t 5. 学生成绩管理 |\n";cout<<"\t\t|\t 6. 信息统计模块 |\n";cout<<"\t\t|-----------------------------------------------|\n\n";cout<<"\t\t\t请输入模块编号(0-6):";}2)运行范例所示程序,观察输出结果实训1要求编写程序在屏幕上显示如图2-2所示的菜单。
实验一 三极管输入输出特性实验报告
三极管输入输出特性姓名:班级:学号:指导老师:1.实验背景输入特性曲线(共射极)i=f(v BE) v CE=const.B(1)当v CE=0V时,相当于发射结的正向伏安特性曲线。
(2)当v CE≥1V时,v CB= v CE - v BE>0,集电结已进入反偏状态,开始收集电子,基区复合减少,同样的v BE下i B减小,特性曲线右移。
图1输出特性曲线(共射极)iC=f(vCE) iB=const.饱和区:vCE很小,iC iB,三极管如同工作于短接状态,一般vCE vBE,此管压降称为饱和压降。
此时,发射结正偏,集电结正偏或反偏电压很小。
截止区:iB=0,iC= iCEO0,三极管如同工作于断开状态,此时, vBE小于死区电压。
放大区: vBE >Vth,vCE反电压大于饱和压降,此时,发射结正偏,集电结反偏。
图22.实验目标1.掌握不同连接时的三极管的伏安特性曲线2.掌握利用PSpice A/D仿真功能中提供直流扫描分析(DC Sweep)以及参数分析(Parametric Analysis)3.实验方法1> 电路图中的参数用花括号括起,如下图中的{VCE}等2> 图中的PARAMETERS: place→part→add library后,添加special.olb3> 双击PARAMETERS:出现property editor,选择New column, name 中写入相应的参数名,例如下图中的VCE,初始值VCE=0V,IB=10uA,IE=1mA4> 仿真过程,需要先进行DC Sweep 设定,然后options中选择parametric sweep, 在sweep varaible栏中选择GLOBAL PARAMETER,在parameter name中将相应的参数名写入。
在sweep type栏中分别写入参数的变化,包括该参数的初始值、终值以及增量值。
c++输入输出流实验报告
实验四输入输出流实验课程名:面向对象程序设计(C++)专业班级:学号:姓名:实验时间:实验地点:指导教师:代码分析:1)在输入时调用getline()以换行符作为输入姓名时的结束标志,已达到输入空格的目的2)输出时采用resetiosflags(ios::right)实现结束向左对齐,用setw(8)实现输出域宽为8,使用一系列的格式控制字符来实现输出格式的控制。
2. 重载运算符“<<”和“>>”,使其能够输入一件商品的信息和输出这件商品的信息。
商品的信息由编号、商品名和价格。
假如商品类Merchandise的框架如下:class merchandise{public:Merchandiss();~Merchandiss();friend istream& operator>>(istream& in,Merchandiss& s);friend ostream&operator<<(ostream& out,Merchandiss& s);private:int no;char *name;double price;};要求实现该类,并编写以下的main函数对该类进行操作。
int main(){ Merchandise mer;cin>>mer;cout<<mer;return 0;}实验代码:#include<iostream>using namespace std;class merchandise{out<<s.no<<' '<<<<' '<<s.price<<endl;return out;}int main(){merchandise mer;cin>>mer;cout<<mer;return 0;}实验结果:实验分析:先定义一个商品的类,构造函数定义为无参函数在函数体中将name置为空,其他为0.在重载>>时使用getline函数,输入name以’\n’作为结束标记重载<<时直接输出。
c语言实验报告心得总结(精选14篇)
c语言实验报告心得总结(精选14篇)(经典版)编制人:__________________审核人:__________________审批人:__________________编制单位:__________________编制时间:____年____月____日序言下载提示:该文档是本店铺精心编制而成的,希望大家下载后,能够帮助大家解决实际问题。
文档下载后可定制修改,请根据实际需要进行调整和使用,谢谢!并且,本店铺为大家提供各种类型的经典范文,如工作报告、合同协议、心得体会、演讲致辞、规章制度、岗位职责、操作规程、计划书、祝福语、其他范文等等,想了解不同范文格式和写法,敬请关注!Download tips: This document is carefully compiled by this editor. I hope that after you download it, it can help you solve practical problems. The document can be customized and modified after downloading, please adjust and use it according to actual needs, thank you!Moreover, our store provides various types of classic sample texts, such as work reports, contract agreements, insights, speeches, rules and regulations, job responsibilities, operating procedures, plans, blessings, and other sample texts. If you want to learn about different sample formats and writing methods, please pay attention!c语言实验报告心得总结(精选14篇)【第1篇】c语言实验报告心得总结900字在初学c语言的一个学期后,我们进行了c语言实训阶段,尝试编写一个比较复杂的程序系统。
C++程序设计实验报告
C++程序设计实验报告一、实验目的(1)学习编写简单的C++程序,并掌握C++程序的基本格式与规范,理解C++程序结构的特点。
(2)掌握函数的定义和调用方法。
(3)练习重载函数、函数模板、系统函数的使用。
(4)学习使用VC ++的debug调试功能,使用step into追踪到函数内部。
(5)学习类与对象的定义和使用方法以及对象的声明。
(6)学习具有不同属性的数据成员与成员函数的访问方式。
(7)理解构造函数和析构函数的定义与执行过程。
(8)掌握运算符重载的方法。
(9)学习使用虚函数实现动态多态性。
(10)熟悉流类库中常用的类及其成员函数的用法。
(11)学习标准输人输出及格式控制。
(12)学习对文件的应用方法(二进制文件、文本文件)。
二、实验内容与实验步骤实验一:(1)输人并运行所给的参考程1,并将程序中的注释部分也输人计算机,体会和理解程序的基本格式规范。
(2)编写一个函数把华氏温度转换为摄氏温度,转换公式为C= (F一32)*5/9。
(3)编写重载函数Maxl可分别求取两个整数,三个整数,两个双精度数,三个双精度数的最大值。
(4)使用重载函数模板重新实现上小题中的函数Maxl。
(5)使用系统函数pow(x,y)计算x y的值,注意包含头文件math.h。
(6)用递归的方法编写函数求Fibonacci级数,观察递归调用的过程。
实验二:(1)定义一个CPU类,包含等级(rank)、频率(frequency)、电压(voltage)等属性,有两个公有成员函数run、stop,其中rank为枚举类型CPU_ Rank,定义为enum CPU_ Rank(P1 = 1,P2,P3,P4,P5,P6,P7),frequency为单位是MHz的整型数,voltage为浮点型的电压值。
观察构造函数和析构函数的调用顺序。
(2)定义一个简单的Computer类,有数据成员芯片(CPU),内存(ram),光驱(cdrom)等等,有两个公有成员函数run、stop,CPU为CPU类的一个对象,ram为RAM类的一个对象,cdrom为CDROM类的一个对象,定义并实现这个类。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
深圳大学实验报告实验课程名称:程序设计实验与课程设计实验项目名称:实验10 C++流输入与流输出学院:计软专业:计科报告人:学号:班级: 3同组人:无指导教师:朱安民实验时间:2014年6月16日提交时间:2014年6月16声明:本次实验内容由报告人和同组人独立完成,所有涉及到他人的工作均已说明。
报告人和同组人均同意教师及学校为教学活动而引用本实验的内容,且无需事先征得同意和特别说明。
教务处制一、实验目的1.掌握标准输入输出(iostream库中标准对象cin、cout)的使用2.掌握IO流类成员函数输入输出(cin.get, cin.getline, cin.read; cout.put, cout.write)的使用3.掌握输出格式(标准控制符、IO流类成员函数、iomanip头文件中的控制符)控制方法4.掌握磁盘文件的输入输出方法二、实验说明和实验环境1.在奥特曼类的基础上,编写一个程序,重载运算符“》”和“《”,使得用户可以直接(格式化)输出奥特曼的状态。
在主程序中输入若干个(3个)奥特曼的状态,并分别将它们保存到文件RecordU.txt中。
然后读取并显示文件中的内容。
2.奥特曼和怪物都具有属性:等级, 生命, 攻击, 经验, 金钱,都具有方法:初始化initial和显示状态display在奥特曼的初始化中,需要接受外来等级参数,生命, 攻击的数值初始化为等级的10倍,金钱为等级的100倍,经验恒为0在怪兽的初始化中,需要接受外来等级参数,生命, 攻击的数值初始化为等级的8倍,经验为等级的80倍,金钱为等级的800倍对怪兽和奥特曼的状态输出采用运算符《重载的方法,并结合display方法使用,注意本题目要求怪兽和奥特曼的状态输出必须使用重载运算符《,不能直接使用display方法。
注意:为了实现运算符《重载,需要包含头文件<iomanip>经常天降怪石会砸中奥特曼或怪兽,如果被幸运石砸中,就会处于“鸿运当头”状态,被砸对象除等级外其它属性全部翻倍;如果被厄运石砸中,就会陷入“倒霉透顶”状态,被砸对象除等级外其它属性全部减半。
把“鸿运当头”封装成操作,并用重载运算符++来实现;“倒霉透顶”封装成操作,并用重载运算符--来实现。
两个重载都需要用友元方法。
3.奥特曼和怪物经过一番战斗斗,需要中场休息,休息时把各自的属性值存放到一个文件中,休息结束时需要从文件中读取之前的状态继续战斗。
奥特曼和怪物都具有属性:等级, 生命, 攻击, 经验, 金钱,都具有方法:初始化initial和显示状态display奥特曼和怪兽的属性值均来自于文件(文件的第一行是奥特曼的数据,初始状态为:等级是8,生命, 攻击的数值初始化为等级的10倍,金钱为等级的100倍,经验恒为0,文件的第二行是怪兽的数据,初始状态为等级是4,生命, 攻击的数值初始化为等级的8倍,经验为等级的80倍,金钱为等级的800倍)对怪兽和奥特曼的状态输出采用运算符《重载的方法,并结合display方法使用,注意本题目要求怪兽和奥特曼的状态输出必须使用重载运算符《,不能直接使用display方法。
把信息直接从文件读出来并赋值给奥特曼和怪兽,需要重载》运算符作为友元;把奥特曼和怪兽的值写入文件,要求重载《运算符作为友元三、实验分析设计.四、核心代码说明第一题#include<fstream>#include<iostream>using namespace std;//类的定义与实现class Ultraman{public:Ultraman();friend istream & operator >>(istream &input,Ultraman &u){input>>u.rank>>u.hp>>u.damage>>u.exp>>u.money;return input;} friend ostream & operator <<(ostream &output,Ultraman &u){output<<u.rank<<" "<<u.hp<<" "<<u.damage<<" "<<u.exp<<" "<<u.money<<" ";return output;}int rank;int hp;int damage;int exp;int money;};Ultraman::Ultraman(){rank=0;hp=0;damage=0;exp=0;money=0;}//主函数int main(){Ultraman u1,u2,u3;ofstream outfile("RecordU.txt");cin>>u1>>u2>>u3;outfile<<u1<<u2<<u3;outfile.close();ifstream infile("RecordU.txt");infile>>u1>>u2>>u3;cout<<u1<<endl<<u2<<endl<<u3<<endl;infile.close();return 0;}第二题#include<iostream>using namespace std;//奥特曼类class Ultraman{public:void initial(int);void display();friend ostream& operator<<(ostream& output,Ultraman& u){output<<"u rank="<<u.rank<<" hp="<<u.hp<<" damage="<<u.damage<<" exp="<<u.exp<<" money="<<u.money<<endl;return output;}Ultraman operator ++(){rank=rank;hp=2*hp;damage=2*damage;exp=2*exp;money=2*money;return*this;}Ultraman operator --(){rank=rank;hp=0.5*hp;damage=0.5*damage;exp=0.5*exp;money=0.5*money;return*this;}private:int rank;int hp;int damage;int exp;int money;};//奥特曼类的定义void Ultraman::initial(int a){rank=a;hp=10*a;damage=10*a;exp=0;money=100*a;}void Ultraman::display(){cout<<"u rank="<<rank<<" hp="<<hp<<" damage="<<damage<<" exp="<<exp<<" money="<<money<<endl;}//怪兽类class Monster{public:void initial(int);void display();friend ostream& operator<<(ostream& output,Monster&m){output<<"m rank="<<m.rank<<" hp="<<m.hp<<" damage="<<m.damage<<" exp="<<m.exp<<" money="<<m.money<<endl;return output;}Monster operator ++(){实验名称,实验人姓名,页码rank=rank;hp=2*hp;damage=2*damage;exp=2*exp;money=2*money;return*this;}Monster operator --(){rank=rank;hp=0.5*hp;damage=0.5*damage;exp=0.5*exp;money=0.5*money;return*this;}private:int rank;int hp;int damage;int exp;int money;};//怪兽类的定义void Monster::initial(int b){rank=b;hp=8*b;damage=8*b;exp=80*b;money=800*b;}void Monster::display(){cout<<"m rank="<<rank<<" hp="<<hp<<" damage="<<damage<<" exp="<<exp<<" money="<<money<<endl;}//主函数int main(){Ultraman U;Monster M;char s;int k;U.initial(8);M.initial(4);U.display();cout<<M;int t;cin>>t;while(t--){cin>>s>>k;if(s=='u'){if(k%2==0) ++U;else --U;U.display();}if(s=='m'){if(k%2==0) ++M;else --M;M.display();}}return 0;}第三题#include<iostream>#include<fstream>#include<iomanip>using namespace std;//奥特曼类class Ultraman{public:int getmoney(){return money;}void initial(int);void display();friend istream& operator>>(istream& input,Ultraman& u){input>>u.rank>>u.hp>>u.damage>>u.exp>>u.money;return input;} friend ostream& operator<<(ostream& output,Ultraman& u){output<<"u rank="<<u.rank<<" hp="<<u.hp<<" damage="<<u.damage<<" exp="<<u.exp<<" money="<<u.money<<endl;return output;}Ultraman operator ++(){rank=rank;hp=2*hp;damage=2*damage;exp=2*exp;money=2*money;return*this;}Ultraman operator --(){rank=rank;hp=0.5*hp;damage=0.5*damage;exp=0.5*exp;money=0.5*money;return*this;}private:int rank;int hp;int damage;int exp;int money;};//奥特曼类的定义void Ultraman::initial(int a){rank=a;hp=10*a;damage=10*a;exp=0;money=100*a;}void Ultraman::display(){cout<<"u rank="<<rank<<" hp="<<hp<<" damage="<<damage<<" exp="<<exp<<" money="<<money<<endl;}//怪兽类class Monster{public:int getmoney(){return money;}void initial(int);void display();friend istream& operator>>(istream& input,Monster& m){input>>m.rank>>m.hp>>m.damage>>m.exp>>m.money;return input;} friend ostream& operator<<(ostream& output,Monster&m){output<<"mrank="<<m.rank<<" hp="<<m.hp<<" damage="<<m.damage<<" exp="<<m.exp<<" money="<<m.money<<endl;return output;}Monster operator ++(){rank=rank;hp=2*hp;damage=2*damage;exp=2*exp;money=2*money;return*this;}Monster operator --(){rank=rank;hp=0.5*hp;damage=0.5*damage;exp=0.5*exp;money=0.5*money;return*this;}private:int rank;int hp;int damage;int exp;int money;};//怪兽类的定义void Monster::initial(int b){rank=b;hp=8*b;damage=8*b;exp=80*b;money=800*b;}void Monster::display(){cout<<"m rank="<<rank<<" hp="<<hp<<" damage="<<damage<<" exp="<<exp<<" money="<<money<<endl;}//主函数int main(){Ultraman U1,U2;Monster M1,M2;char s;int t,k;U1.initial(8);cout<<U1;M1.initial(4);cout<<M1;cin>>t;while(t--){cin>>s>>k;if(s=='u'){if(k%2==0) ++U1;else --U1;cout<<U1;}if(s=='m'){if(k%2==0) ++M1;else --M1;cout<<M1;}}ofstream fout("c:\\123\\um.txt");fout<<U1;fout<<M1;fout.close();ifstream fin2("c:\\123\\um.txt");fin2>>U2;fin2>>M2;fin2.close();cout<<U1.getmoney()+M1.getmoney()<<endl;return 0;}五、测试与结果1和2题通过网上测评系统;第三题时间时间未掌握好,没有进行测评,但通过vc6.0六、总结与分析1. 实验基本达到了实验要求,第三题应该能通过测评系统。