《面向对象程序设计》实验报告(一)1到100素数

合集下载

面向对象程序设计实习报告

面向对象程序设计实习报告

《面向对象程序设计》实习报告班级:电子商务学号:xx姓名xx指导教师:实习时间:2011.12.26-2012.1.6一、实习目的经过两个周的面向对象程序设计的实习,让我再次复习了SQL和VB 的相关知识,因为自己这这学期的课程中对VB和SQL都有学习。

虽然我们的上机课是有限的,但是在这次的实习中让我更加的对自己多掌握的知识做了个很详细的补充。

由于两个周基本上都是自己在电脑上亲自操作完成任务,所以我就更加熟悉和掌握其具体应用的方法。

当然在这个任务完成的工程中会遇到很多的难题,所以就要靠自己努力不懈的看书弄懂,还有问老师和四周的同学,把不懂的地方尽量通过这几种渠道把它弄懂。

在整个实习过程中,我清楚并掌握了SQL Server的集成环境、系统的菜单、工具栏、企业管理器、查询分析器的具体使用方法还有掌握了创建数据库、数据表等的方法,了解并知道数据表的操作命令以及T-SQL命令的使用。

在编写代码的时候,我大概了解VB基本命令的使用方法;掌握常用函数、表达式的使用方法,掌握程序控制结构的使用和程序设计,掌握变量的作用范围和自定义函数的使用。

以及熟悉了VB与数据库管理系统的连接方法等。

这些都是要通过自己的实际操作中慢慢的的熟悉和了解的。

我觉得这样的实习不仅让我在这两门重要的编程课中加深自己的知识,同时在以后的工作中能够有更大的用途。

这次的实习,在我自己来看,虽然还存在很多的问题,但是总体的效果还是很好的。

老师的逐渐提醒和同学们之间的共同商量,都能够让我受益匪浅。

还有还渐渐的掌握了一些小的程序的编程,这让我在vb和sql上有更加深刻的掌握,对我的以后工作还是学习上都是百利无一害的。

二、实验内容在这次的实习中我完成了SQL SERVER的基本操作,如创建学生情况表等三个表以及录入记录;SQL Server 与程序设计语言连接,从中对之前的三个表的录入信息等;程序设计语言基本算法中的求素数和自然数对、最大公约数和公倍数问题、百钱百鸡问题等;常用统计算法中的成绩统计和字符统计问题;常用排序方法中的选择排序法和二维数组排序问题;以及加密解密、数值转换问题;矩阵的综合运算;学生管理信息系统、集成界面已经程序封面的设计等问题。

《面向对象程序设计》实验报告[一]

《面向对象程序设计》实验报告[一]

计算机科学与工程学院《面向对象程序设计》实验报告[一]1.编写一个函数,将整数得各位数字反序输出,编写另一个函数实现正序输出。

例如整数352867,反序输出7、6、8、2、5、3,正序输出3、5、2、8、6、7、2.定义一组重载函数,分别计算2个、3个、4个参数中得最大值3.求出1~100之间得质数,并存放在vector容器中。

ﻬ实验结果题目一:#include<iostream〉usingnamespace std;voiddiamond(intn,charc1,char c2) {int i,j;ﻩfor(i=1;i〈=n;i++){ﻩﻩcout<<"\n\t”;ﻩfor(j=1;j<=n-i;j++)cout<〈c1;ﻩfor (j=1;j<=2*i-1;j++)ﻩcout〈〈c2;ﻩfor (j=1;j〈=n—i;j++)cout<<c1;ﻩﻩ}ﻩfor(i=n-1;i〉0;i-—){ﻩcout<〈"\n\t";ﻩfor(j=1;j<=n-i;j++)ﻩﻩﻩcout<<c1;ﻩfor (j=1;j<=2*i—1;j++)ﻩﻩﻩcout<<c2;ﻩﻩfor(j=1;j<=n—i;j++)ﻩﻩcout<<c1; ﻩ}ﻩcout〈<endl; }int main(){diamond(9,'','*’);ﻩdiamond(20,'#',’ ');cin、get(); }题目二:#include〈iostream〉#include<vector>using namespacestd;voidscan(vector<int〉&a,int);int search(vector<int>&a,vector<int> &b,int);void print(constvector〈int> &b,int);int main(){ﻩint n,m;ﻩcout〈〈"How much numbers will youenter:”;cin>>n;vector <int〉 a(n),b(n);scan(a,n);m=search(a,b,n);ﻩprint(b,m+1);cin、get();cin、get();return 0;}void scan(vector<int>&a,int n){ﻩcout〈<”Enter the numbers:\n";ﻩfor(int i=0;i〈n;i++)cin>〉a[i];}int search(vector<int〉&a,vector<int>&b,int i){intn,m;ﻩbool flag=0;ﻩb[0]=a[0];for(n=1;n<i;n++){for(m=0,flag=0;b[m];m++){ﻩﻩif(b[m]==a[n])flag=1;}if(!flag)b[m]=a[n];}ﻩreturn m;}void print(const vector<int>&b,int n){ cout<〈"Print the number:";ﻩfor(inti=0;i〈n;i++) cout<<b[i]〈<”\t”;}题目三:#include<iostream〉#include〈vector〉usingnamespace std;template〈class T>voidscan(vector〈T〉 &,int);template<classT>void Max(vector〈T〉 &,int);template<class T>void Min(vector<T>&,int);int main(){ﻩintn,m;ﻩcout〈<”How much numbers will you enter a:”;cin>>n;ﻩvector 〈int> a(n);scan(a,n);ﻩMax(a,n);ﻩMin(a,n);ﻩstd::cout<<"Pleaseenter the name:";ﻩﻩgetline(std::cin,name);std::cout〈〈”Please enter the sex:";ﻩstd::cin、get(sex);ﻩstd::cout〈<"Please enter the classand height:";ﻩﻩstd::cin>〉cla>>hei;std::cin、get();student[a]、sca(name,sex,cla,hei);}float sum=0;for(int a=0;a<n;a++){ﻩsum=student[a]、sum(sum);}for(int a=0;a〈n;a++)ﻩstudent[a]、show();std::cout〈<"The average height is "<〈sum/n<<std::endl; ﻩstd::cin、get();ﻩreturn 0;}附加题1:。

C++面向对象程序设计》实验报告

C++面向对象程序设计》实验报告

《C++面向对象程序设计》实验内容实验1 C++程序设计初步1.实验目的(1)了解在C++编译系统(Visual C++6.0)上如何编辑、编译、连接和运行一个C++程序。

(2)通过运行简单的C++程序, 初步了解C++源程序的结构和特点。

(3)掌握简单C++程序的编写和调试方法。

(4)掌握重载函数的定义方法。

(5)能正确使用引用型变量。

2.实验内容和步骤(1)在Visual C++环境下编译和运行C++程序①先进入Visual C++6.0环境。

②在自己指定的子目录中建立一个名为test.cpp的新文件。

③从键盘输入以下程序int main(){int a,b;c=a+b;cout>> “a+b=”>>a+b;}选择Build→Compile test.cpp命令, 对此源程序进行编译。

观察和分析编译信息。

⑤根据编译信息指出的错误, 修改程序。

再进行编译, 如果还有错, 再重复此过程, 直到编译不出错为止。

⑥选择Build→Build test.exe命令, 对程序进行连接, 如果不出错, 就会生成可执行程序test.exe。

⑦选择Build→Execute test.exe命令, 执行可执行程序test.exe。

观察屏幕的变化。

在输出窗口应显示程序运行结果。

⑧分析结果是否正确, 如果不正确或认为输出格式不理想, 可以修改程序, 然后重新执行以上④和⑧步骤。

改过后的程序:#include<iostream>using namespace std;int add(int x,int y){int z;z=x+y;return(z);}int main(){int a,b,c;cin>>a>>b;c=add(a,b);cout<<"a+b="<<c<<endl;return 0;}实验2 C++对C的扩充(2)编一个程序, 用来求2个或3个正整数中的最大数。

《面向对象程序设计》实习报告

《面向对象程序设计》实习报告

《面向对象程序设计》实习报告班级:电子商务0801学号:姓名:XX指导老师:刘光苏建恭龙延秀娟实习时间:2010.1.4-2010.1.10一·实习目的经过一周的实习,让我再次复习了SQL和VB的相关知识,特别是亲自操作,更加熟悉和掌握其具体应用的方法,遇到难题时,经过查阅资料和同学间的探讨,也把许多以前不懂和不会的知识有所掌握。

在整个实习过程中,我清楚并掌握了SQL Server的集成环境、系统的菜单、工具栏、企业管理器、查询分析器的具体使用方法;同时在操作中掌握了创建数据库、数据表的方法;熟悉了数据表的操作命令以及T-SQL命令的使用。

在编写代码是,我熟悉了基本命令的使用方法,以及常用函数、表达式的使用方法,掌握了程序控制结构的使用和程序设计,同时清楚了变量的作用范围和自定义函数的使用。

特别在于VB连接的过程中,我熟悉了VB与数据库管理系统的连接方法,较熟练地掌握了利用向导、数据环境、数据控件等工具开发应用程序的基本操作界面。

同时还熟悉了常用的算法程序、常用统计程序、数据排序方法、简单数据加密和解密程序、矩阵基本操作程序的编写、调试和使用。

在整个实习过程中,受益匪浅。

此次实习,达到了很好的效果。

通过实践让我把书本上的知识更好的应用于实际操作,可以独立的做一些简单小程序,也感觉到SQL和VB的实际操作的重要性,在以后的学习过程中,更应该把这种方法融合,这样才可以真正的掌握所学的知识。

二·程序设计实验一 Sql Server基本操作1·在Stu177数据库中创建下列数据表:学生情况表117:课程情况表117:选课情况表117:实验二 SQLServer 与程序设计语言连接1·利用VB数据窗体向导生成学生情况表117的录入界面如下: 单记录:网格:2·利用VB数据窗体向导生成课程情况表117的录入界面如下:单记录:网格:3·利用VB数据窗体向导生成选课情况表117的录入界面如下:单记录:网格:4·利用VB数据窗体向导生成学生情况表117(主从)的录入界面如下:5·利用VB数据窗体向导生成课程情况表117(主从)的录入界面如下:实验三基本算法练习1·求素数2.对任意偶数进行素数分解(哥德巴赫猜想)3·百钱百鸡问题实验四常用统计练习1·成绩统计2·字符统计实验五常用排序方法1·选择排序法2·冒泡排序法实验六综合设计1·程序封面设计2·系统集成界面设计三·实习总结经过一周的实习,我对SQL和VB的综合运用能力有所提高,特别是经过实际操作,能够很好的将书本知识转化为实践能力。

面向对象程序设计实验报告一

面向对象程序设计实验报告一

课程实验报告课程名称:面向对象程序设计实验名称:面向过程的整型栈编程院系:计算机科学与技术专业班级:CS1203学号:U201214884姓名:肖双指导教师:马光志2015 年 1 月 6 日一、需求分析1.题目要求整型栈是一种先进后出的存储结构,对其进行的操作通常包括判断栈是否为空、向栈顶添加一个整型元素、出栈等。

整型栈类型及其操作函数采用非面向对象的纯C语言定义,请将完成上述操作的所有函数采用纯C语言编程,然后写一个main函数对栈的所有操作函数进行测试。

struct STACK{int *elems; //申请内存用于存放栈的元素int max; //栈能存放的最大元素个数int pos; //栈实际已有元素个数,栈空时pos=0;};void initSTACK(STACK *const p, int m); //初始化p指向的栈:最多m个元素void initSTACK(STACK *const p, const STACK&s); //用栈s初始化p指向的栈int howMany (const STACK *const p); //返回p指向的栈的实际元素个数posSTACK *const push(STACK *const p, int e); //将e入栈,并返回pSTACK *const pop(STACK *const p, int &e); //出栈到e,并返回pSTACK *const assign(STACK*const p, const STACK&s); //赋s给p指的栈,并返回p void print(const STACK*const p); //打印p指向的栈void destroySTACK(STACK*const p); //销毁p指向的栈2.需求分析按题目要求定义一个栈,并完成对栈的各种操作。

二、系统设计1.概要设计1)定义一个整型栈2)完成下列函数:void initSTACK(STACK *const p, int m); //初始化p指向的栈:最多m个元素void initSTACK(STACK *const p, const STACK&s); //用栈s初始化p指向的栈int howMany (const STACK *const p); //返回p指向的栈的实际元素个数posSTACK *const push(STACK *const p, int e); //将e入栈,并返回pSTACK *const pop(STACK *const p, int &e); //出栈到e,并返回pSTACK *const assign(STACK*const p, const STACK&s); //赋s给p指的栈,并返回p void print(const STACK*const p); //打印p指向的栈void destroySTACK(STACK*const p); //销毁p指向的栈3)创建主函数,测试上述函数。

面向对象程序设计实验报告

面向对象程序设计实验报告

《面向对象程序设计实验》实验一、Java实验环境的建立(2学时)1、目的要求(1)掌握Java编程环境的搭建过程;(2)掌握Jcreator pro软件的使用方法;(3)能使用Java doc文档。

2、实验内容(1)下载并安装JDK1.6,配置JDK环境变量;(2)下载Javadoc压缩包并解压在JDK安装路径下;(3)下载Jcreator pro 4.0并安装和配置使用环境;(4)使用实验环境运行书中实例代码,在屏幕上输出“Hello Java”字符串。

①Java application程序代码如下:public class HelloJava{public static void main(String args[]){ System.out.println("Hello Java!"); }}②Java applet程序代码如下:import java.awt.*;public class Hello extends java.applet.Applet{public void paint(Graphics g){ g.drawString("Hello!",30,30); }}3、仪器与材料:计算机实验二、Java语言程序设计训练(2学时)1、目的要求(1)输入、输出操作实现原理和方法;(2)掌握程序流程控制的实现方法;(3)掌握数组的定义和操作方法。

2、实验内容(1)计算Result=1!+2!+3!+...+10!。

public class Test3 {public static void main(String[] args) {int sum = 0, fact, n, i;for (n = 1; n <= 10; n++) {fact = 1;for (i = 1; i <= n; i++)fact *= i;sum += fact;}System.out.println("sum=" + sum);}}(2)计算1---50之间所有素数的和。

面向对象程序设计实验报告1

面向对象程序设计实验报告1
/*结果都是什么字符?,也就是说字符可以自由的表示成几种形式?*/
printf("c1=%d,c2=%d,c3=%d,c4=%d\n",c1,c2,c3,c4);
/*看看这些字符的10进制ASCII码,哦,ASCII码一样,同一种字符*/
/*字符型数据参与算术运算*/
c=c1+32; /*字符怎么参加了数学运算,哦,是字符对应的ASCII码-整数
if(a[j] < a[j + 1])
{
int tmp = a[j];
a[j] = a[j+1];
a[j+1] = tmp;
}
int result = 0;
int cou = 100;
for(i = 0;i < 3;i++)
{
result += a[i] * cou;
cou /= 10;
}
cout<<"the result is :"<<result<<endl;
main()
{
int x=010,y=10,z=0x10; /*整型数据表示*/
char c1='M',c2='\x4d',c3='\115',c4=77,c; /*字符型数据表示*/
/*整型数据的输出*/
printf("x=%o,y=%d,z=%x\n",x,y,z);
/*数据以原进制输出,注意是否有前导0或0x */
c++;
else
if(score>=60)
d++;
else e++;

面向对象程序设计实验报告

面向对象程序设计实验报告

面向对象程序设计实验报告实验报告(1)2015.6【实验作者】学号:姓名:班级:教学站:【实验名称】实验一:熟悉C++程序的风格和C++程序的上机全过程【实验目的】1.熟悉C++程序的风格,熟悉实验环境。

2.练习C++程序的输入、修改、编译、连接与运行的全过程。

3.本实验有4个程序【实验内容】1. 习题2.2下面是一个C程序,改写它,使它采用C++风格的I/O语句。

(1)该程序做什么工作?输入两个整数,求两个整数的大于1 的最小公约数[(另外请教下毛老师:如果最小公约数与最小数相等时,我觉得也有可能这个数是两个数的大于1 的最小公约数)即7与14的公约数为1,7按题意的话,要大于1,那么7也是这两个数的最小公约数,但程序不认为它们具有公约数]。

(2)该程序中那几个数是由键盘输入的?那几个数是输出的?那几个数是临时变量?a与b 由键盘输入;d 是输出的;a,b,d,min 都是临时变量。

(3)用C++风格的I/O语句是什么?#include <iostream.h> cout<<与cin>>(4)写出该程序的算法(用流程图表示)框图1:(5)该程序你有否上机编译、连接、运行通过。

有上机编译连接并运行通过,但有些疑问!2. 习题 2.20分析下面程序的输出结果:(1)该程序做什么工作?利用引用函数改变一个变量的值。

(2)该程序有几个函数?其中f函数是什么函数?其功能是什么?一个函数,F函数是一个引用返回值的函数,并且该函数参数也为一个引用,函数功能是送入一个对变量引用,将变量+10后送回。

成为对返回值的引用。

(3)写出该程序的算法(用流程图表示)框图2:(4)该程序你有否上机编译、连接、运行通过。

该程序有上机编译并连接运行通过。

3. 习题2.23 建立一个被称为sroot( )的函数,返回其参数的二次根。

重载sroot( )三次,让它分别返回整数、长整数与双精度数的二次根(为了实际计算二次根,可以使用标准库函数sqrt( ))。

面向对象程序设计》C实验报告

面向对象程序设计》C实验报告

面向对象程序设计》C实验报告《面向对象程序设计》实验报告学院:专业:班级学号:姓名:学期:教师:实验一 C++基础练习院(系):课程名称:面向对象程序设计教师签名:实验目的和要求1.掌握C++程序的基本格式与规范,学会编写简单的C++程序。

2.理解C++程序结构的特点。

3.熟悉C++程序基本的输入和输出操作。

4.掌握C++数据类型常量和变量以及修饰符的使用方法。

5.掌握函数定义、函数调用和函数说明的方法。

6.熟悉作用域运算符的功能和基本使用方法。

7.掌握C++内存的动态分配与释放方法。

8.理解引用的概念,掌握引用的使用方法。

实验内容和步骤1. 调试如下的代码并回答问题。

#include <iostream.h>void main(){//First c++ programchar name[10];cout<<"please input your name:";cin>>name;cout<<"welcome "<<name<<endl;}(1)C++的注释和C有何不同?答:C语言的注释有一种,用/*……….*/作为注释分界符号C++除保留了这种注释方式之外,还提供了一种更有效的注释方式,该注释以“//”开始,到行尾结束。

(2)C++的输入和输出所使用的函数及其相应头文件与C有何不同?答:在C中进行输入输出操作时,常使用函数scanf和printf。

C++除了可以照常使用这两个函数进行输入输出外,还增加了标准输入流对象cin和标准输出流对象cout来进行输入和输出。

Iostream是C++系统定义的一个头文件,在这个文件中声明了程序所需要的输入和输出操作的有关信息。

在C语言中头文件中用“.h”作为后缀,如stdio.h、math.h等。

2. 单步调试如下的代码并回答问题。

#include <iostream.h>inline int f(int x){ return 2*x*x+4*x+5; }inline double f(double x){ return 2*x*x+4*x+5; }void main(){ int x=5;double y=5.2;cout<<f(x)<<endl;cout<<f(y)<<endl;}(1)inline的含义和作用是什么?答:含义:在函数说明前冠以关键字“inline”,该函数就被声明为内联函数,每当程序中出现对该函数的调用时C++编译器使用函数体中的代码插入到调用该函数的语句处,同时用实参取代形参。

面向对象程序设计实验报告

面向对象程序设计实验报告

面向对象程序设计实验报告姓名Name学号Student No.班级Class代码总行数Code Lines 实验名称Item1.实验目的综合应用所学的知识分析问题、解决问题,提高实际编程能力及程序调试能力。

2.实验内容设计并实现一个个人通信录,能记录人员的各种通信信息。

支持通信录条目的添加、查找、删除、修改。

要求:1)通信录需记录的个人信息自行设计。

2)要求采用图形用户界面(GUI),界面效果及事件处理方式自行设计,尽量考虑美观与易用性。

3)系统结构设计应采用面向对象的思想,发现问题域中的事物(常称为实体),抽象成类,建立实体类之间的关系。

同时建立实体类与界面类之间的关系。

要求程序结构设清晰合理。

3.关键代码public class AddressBook extends Frame implements ActionListener{private MenuItem noteAdd=new MenuItem("添加");private MenuItem noteDel=new MenuItem("删除");Private MenuItem noteEdit=new MenuItem("修改");private MenuItem noteSearch=new MenuItem("查找");private MenuItem noteExit=new MenuItem("退出");private List noteList=new List();private String[][]message=new String[1000][4];public Info notes=new Info();public AddressBook(){super("通讯录");Menu note=new Menu("编辑");note.add(noteAdd);note.add(noteDel);note.add(noteEdit);note.add(noteSearch);note.addSeparator();note.add(noteExit);MenuBar bar=new MenuBar();bar.add(note);setMenuBar(bar);add(noteList);noteAdd.addActionListener(this);noteDel.addActionListener(this);noteEdit.addActionListener(this);noteExit.addActionListener(this);noteSearch.addActionListener(this);noteList.addActionListener(this);addWindowListener(new WindowCloser());setSize(400,600);setVisible(true);}public void actionPerformed(ActionEvent e){if(e.getSource()==noteAdd){notes.mail=null;=null;notes.address=null;notes.telephone=null;int index=noteList.getItemCount();EditDialog dlg=new EditDialog(this,"通讯录",notes,false);if(dlg.isOk){message[index][0]=dlg.textName.getText();message[index][1]=dlg.text Address.getText();message[index][2]=dlg.textEmail.getText();message[index][3]=dlg.textTelephone.getText();if(message[index][0]!=null){String s="姓名:"+message[index][0]+"地址:"+message[index][1]+"E-mail:"+message[index][2]+"电话:"+message[index][3];noteList.add(s);}}dlg.dispose();}else if(e.getSource()==noteEdit||e.getSource()==noteList){int i=noteList.getSelectedIndex();if(i!=-1){=message[i][0];notes.address=message[i][1];notes.mail=message[i][2];notes.telephone=message[i][3];面向对象程序设计实验报告EditDialog dlg=new EditDialog(this,"修改通讯录",notes,false);if(dlg.isOk){message[i][0]=dlg.textName.getText();message[i][1]=dlg.textAddress.getText();message[i][2]=dlg.textEmail.getText();message[i][3]=dlg.textTelephone.getText();String s="姓名:"+message[i][0]+"地址:"+message[i][1]+"E-mail:"+message[i][2]+"电话:"+message[i][3]; noteList.replaceItem(s,i);}dlg.dispose();}}else if(e.getSource()==noteDel){ConfirmDialog cd=new ConfirmDialog(this,"确认删除?","确认要删除这条通讯录信息吗?");if(cd.close){int index=noteList.getSelectedIndex();for(int i=index;i<noteList.getItemCount()-1;i++){for(int j=0;j<4;j++)message[i][j]=message[i+1][j];}noteList.remove(index);}}else if(e.getSource()==noteSearch){EditDialog dlg=new EditDialog(this,"查找通讯录",notes,true);if(dlg.isOk){for(int i=0;i<noteList.getItemCount();i++){String thisname=noteList.getItem(i).toString().split("")[0].split(":")[1];String thistelephone=noteList.getItem(i).toString().split("")[30].split(":")[1];if((.equals(thisname)&&dlg.telephone.equals(thistelephone))||(.equal s(thisname)&&(dlg.telephone.equals("")))||((.equals(""))&&dlg.telephone.equ als(thistelephone))){String show="查找成功!信息为:"+noteList.getItem(i).toString();JOptionPane.showMessageDialog(null,show);return;}}。

电子与及信息工程学院 《面向对象程序设计》实验报告

电子与及信息工程学院 《面向对象程序设计》实验报告

面向对象程序设计上机实验报告实验名称:C++语言程序设计班级:电子2017年 6 月14 日一、实验目的运用一个C++程序输出一个简单的程序语句。

了解C++与C语言的区别二、实验内容运用一个C++程序输出一个程序三、源代码与注释#include<iostream>using namespace std;class A{public:int i,j;void t(){cout<<"hello boy!!!"<<endl;}};int main(){A x,y;x.t();return 0;}四、实验结果(程序运行截图)五、实验心得C++,首要考虑的是如何构造一个对象模型,让这个模型能够契合与之对应的问题域,这样就可以通过获取对象的状态信息得到输出或实现过程(事务)控制。

所以C与C++的最大区别在于它们的用于解决问题的思想方法不一样。

所以说C++比C更先进面向对象程序设计上机实验报告实验名称:设计类及测试程序班级:电子1612学号:16200106207姓名:张亦然成绩:2017年 6 月14 日一、实验目的1.掌握类的概念以及定义对象的方法2.掌握用类的对象编制基于对象的程序3.学习检查和调试基于对象的程序二、实验内容定义一个类,使用简单的程序输出姓名和对应的成绩三、源代码与注释#include <iostream>using namespace std;class Student{public:Student(char *name, int age, float score); public:friend void show(Student *pstu);private:char *m_name;int m_age;float m_score;};Student::Student(char *name, int age, float score):m_name(name), m_age(age), m_score(score){ }void show(Student *pstu){cout<<pstu->m_name<<"的年龄是"<<pstu->m_age<<",成绩是"<<pstu->m_score<<endl;}int main(){Student stu("小明", 15, 90.6);show(&stu);Student *pstu = new Student("李磊", 16, 80.5);show(pstu);return 0;}四、实验结果(程序运行截图)五、实验心得C++ 大大增强了对字符串的支持,除了可以使用C风格的字符串,还可以使用内置的string 类。

素数的数学实验报告(3篇)

素数的数学实验报告(3篇)

第1篇一、实验背景素数,又称质数,是指在大于1的自然数中,除了1和它本身以外不再有其他因数的数。

素数在数学、计算机科学、密码学等领域都有着广泛的应用。

为了更好地理解素数的性质,我们设计了一系列实验,旨在探究素数的分布规律、筛选方法及其应用。

二、实验目的1. 探究素数的分布规律;2. 学习和应用素数筛选方法;3. 理解素数在数学及实际应用中的重要性。

三、实验内容1. 素数的分布规律(1)实验方法:利用编程语言(如Python)编写程序,生成1~n(n取一定范围内的整数)的素数列表,并统计每100个连续整数中素数的个数。

(2)实验结果:实验结果显示,随着n的增大,每100个连续整数中素数的个数逐渐增多,但增长速度逐渐减慢。

这表明素数在自然数中的分布是不均匀的,且存在某种规律。

2. 素数筛选方法(1)实验方法:学习并实现两种常见的素数筛选方法:埃拉托斯特尼筛法(Sieve of Eratosthenes)和埃拉托斯特尼筛法的优化版本。

(2)实验结果:埃拉托斯特尼筛法能够快速筛选出小于等于n的所有素数,但时间复杂度较高。

通过优化,可以降低时间复杂度,提高筛选效率。

3. 素数在实际应用中的重要性(1)实验方法:结合密码学、计算机科学等领域,探究素数在实际应用中的重要性。

(2)实验结果:素数在密码学中具有重要作用,如RSA加密算法、椭圆曲线密码体制等。

在计算机科学中,素数可以用于生成伪随机数、优化算法等。

1. 素数在自然数中的分布是不均匀的,但存在某种规律。

2. 埃拉托斯特尼筛法是一种高效的素数筛选方法,但可以通过优化降低时间复杂度。

3. 素数在数学及实际应用中具有重要作用,如密码学、计算机科学等领域。

五、实验心得1. 通过本次实验,我对素数的性质有了更深入的了解,掌握了素数筛选方法。

2. 实验过程中,我学会了如何运用编程语言解决实际问题,提高了自己的编程能力。

3. 本次实验让我认识到数学与实际应用之间的紧密联系,激发了我对数学及计算机科学领域的兴趣。

面向对象程序设计实验报告

面向对象程序设计实验报告

面向对象程序设计实验报告实验一C++基础1.1实验目的1.了解并熟悉开发环境,学会调试程序;2.熟悉C++中简单的标准输入输出函数的使用方法;3.理解const修饰符的作用并学会应用;4.理解内联函数的优缺点并学会其使用场合;5.理解并学会函数重载;6.理解并熟练掌握使用new和delete来分配内存;7.理解并熟练掌握引用的使用方法。

1.2实验内容1.2.1程序阅读1.理解下面的程序并运行,然后回答问题。

#include<iostream.h>int max_def(int x,int y){return(x>y?x:y);}int max_def(int x,int y,int z){int temp=0;return(temp=(x>y?x:y))>z?temp:z;}double max_def(double x,double y){return(x>y?x:y);}int main(){int x1=0;int x2=0;double d1=0.0;double d2=0.0;x1=max_def(5,6);x2=max_def(2,3,4);d1=max_def(2.1,5.6);d2=max_def(12.3,3.4,7.8);-------------------------------------------------------①cout<<"x1="<<x1<<endl;cout<<"x2="<<x2<<endl;cout<<"d1="<<d1<<endl;cout<<"d2="<<d2<<endl;--------------------------------------------------------②return 1;}问题一:上述程序的输出结果是什么?答:输出结果为问题二:①处调用的是哪个函数?答:①处调用的是double max_def(double x,double y)函数问题三:②处的输出结果为什么是d2=12,而不是d2=12.3?答:因为调用的int max_def(int x,int y,int z)函数返回值为整型。

《面向对象程序设计》实验报告

《面向对象程序设计》实验报告
【实验内容】
1.了解变量的使用范围 (1)建立 Exp2_1.java 文件,通过本程序了解变量的使用范围,源代码如下。 public class Exp2_1 {
static int i=10; public static void main(String args[]) {
{ int k=10; System.out.println("i="+i); System.out.println("k="+k);
class Vehicle { 【代码 1】//声明 double 型变量 speed,刻画速度 【代码 2】//声明 int 型变量 power,刻画功率 【代码 3】// 为 Vehicle 类定义一个空的构造函数 Vehicle(int power){ 【代码 4】 //将参数 power 的值赋值给成员变量 power; } Vehicle(double speed, int power){ 【代码 5】 //将参数 speed 的值赋值给成员变量 speed; 【代码 6】 //将参数 power 的值赋值给成员变量 power; } void speedUp(int s) { 【代码 7】 //将参数 s 的值与成员变量 speed 的和赋值给成员变量 speed } void speedDown(int d) { 【代码 8】 //将成员变量 speed 与参数 d 的差赋值给成员变量 speed } void setPower(int p) {
6
【实验报告】
实习时间:
实习地点:
实习机号:
具 体 实 验 内 容
7
程 序 调 试 过 程
实 习 小 结
8
实验三 类与对象 【实验目的】

面向对象程序设计实验报告

面向对象程序设计实验报告

实验一 Visual C++环境实验名称:实验一Visual C++环境实验目的:⒈熟悉VC++的集成开发环境,学习运行一个C++程序的步骤。

⒉了解几种运算符的使用规则。

⒊掌握变量命名规则,学会变量的定义和使用。

实验原理:利用VC++编辑环境的便利来编写程序。

实验设备:电脑,VISUAL C++6.0实验内容:⒈通过一个最简单的程序熟悉用VC++来调试Dos程序的步骤:⑴使用Visual C++6.0对一个C++程序进行编辑、编译、连接和运行。

#include <iostream.h>void main(){cout<<”I am a student”<<endl;}实验代码:#include <iostream.h>void main(){cout<<"I am a student"<<endl;cout<<"THIS IS A 。

"<<endl;}实验结果:I am a student实验心得:THIS IS A 。

通过实验,我熟悉了VC++编辑环境,以及C++运算符及变量的特点。

整个实验过程为:1.开始、Microsoft visual sduio 6.0、Microsoft visual C++ 6.0打开创天中文VC++。

2.文件、新建、C++ source file输入程序、保存为meng.cpp。

3.编译、程序没有错误,(如有按要求修改)。

4.编译菜单下的执行meng.exe。

5.屏幕中弹出结果窗口。

实验二结构化程序设计实验名称:实验二结构化程序设计实验目的:⒈熟悉和理解C++语言中的类型简单数据(整型、实型、字符型)、运算、表达式;⒉掌握常见格式控制字符对输出结果的控制作用;⒊能利用学习的数据类型,编制简单的C++程序;⒋初步学习调试方法。

实验原理:利用对条件、循环语句、数组的掌握进行编程。

面向对象程序设计实验报告

面向对象程序设计实验报告

面向对象程序设计实验报告网络工程专业《面向对象程序设计》实验报告要求:1、封面信息要完整(,班级、姓名、学号等)。

2、每次实验报告的时间为:实验一:10月15日实验二:10月26日实验三:11月6日实验四:11月20日实验五:11月30日实验一C++程序对C的内容扩充一、实验目的1.掌握使用VC++集成开发环境开发程序的过程,熟悉常用的功能菜单命令,学习使用VC++环境的帮助。

2. 掌握重载函数的概念及函数参数在重载函数中的作用。

3. 理解函数模板和模板函数的概念,并会编写简单的函数模板。

4.掌握动态内存分配和释放的方法;理解引用的概念。

二、实验原理1. 利用函数重载可以增加程序的灵活性和通用性。

2. 使用引用作为函数参数,可以减少参数传递时的时间和空间开销。

三、实验环境应用软件:Visual C++ 6.0开发环境操作系统:Windows XP四、实验步骤(写下题目)1、理论教材P19:2-32、理论教材习题2:P61,“编程题:3”3、实验教材P10:2五、实验记录:(以上程序代码)六、讨论及问题回答1.引用和指针的区别。

2.内联函数的优点及使用注意事项。

实验二、类和对象一、实验目的1.掌握类的定义方法。

2.理解构造函数和析构函数的定义、作用和调用机制。

3.掌握拷贝构造函数的作用和用法。

4.掌握堆对象的概念及创建和删除堆对象的方法。

5.掌握友元、静态成员的作用及用法。

二、实验原理1. 利用构造函数创建对象更加符合客观实际。

2. 利用拷贝构造函数可以复制一个已经存在的对象。

3. 利用友元、静态成员可以增强类之间的联系。

三、实验环境应用软件:Visual C++ 6.0开发环境操作系统:Windows XP四、实验步骤(写下题目)1、理论教材P78:3-5。

⑴在本例中增加拷贝构造函数,实现深拷贝。

⑵改动代码,实现从键盘输入一个数组,用此数组创建一个数组对象,再用此数组对象创建另一个新的数组对象,深拷贝实现。

面向对象程序设计实验报告

面向对象程序设计实验报告
using System;
namespace _1
{
class Program
{
static void Main(string[] args)
{
int[][] jagArray=new int[2][]{new int[5],new int[3]};
for (int i = 0; i < jagArray.GetLength(0); i++)
(2)在代码编辑窗口内的Main()方法中添加如下代码:
using System;
namess HelloWorld
{
public static void Main()
{
Console.WriteLine("Hello world!");
}
}
}
(1)选择“调试” “启动调试”命令,或按【F5】键,或单击工具栏上的 按钮,运行程序,查看运行结果。
}
for (int i = 0; i < 5; i++)
{
for (int j = 0; j <= i;j++ )
Console.WriteLine("{0}\t", a[i, j]);
Console.WriteLine();
}
Console.Read();
}
}
}
(10)分析程序,写出程序的运行结果,并上机进行验证。
Console.Write("{0,-3}",jagArray[k][m]);
Console.WriteLine();
}
Console.Read();
}

《面向对象程序设计》实验报告(一)1到100素数

《面向对象程序设计》实验报告(一)1到100素数

《面向对象程序设计》实验报告(一)姓名江琛学号11 班级计本二班实验地点软件实验室2 指导教师丁德武实验时间2012-2-27(注:一到五条在实验预习时填写,六、七条在实验当中或之后填写)一、实验项目名称:熟悉C++程序的运行环境二、实验目的及要求目的:1.了解和使用Visual C++ 6.0的集成开发环境。

2.熟悉Visual C++ 6.0环境的基本命令和功能键,熟悉常用的菜单命令。

3.学习使用Visual C++ 6.0环境的帮助。

4.学会完整的C++程序开发过程(编辑、编译、连接、调试、运行、查看结果)。

要求:熟悉VC++上机环境,通过简单的输入输出程序,掌握利用VisualC++ 6.0进行面向对象程序设计的基本步骤。

三、实验环境及要求:多媒体计算机一台Windows XP操作系统Visual C++ 6.0四。

试验原理及步奏原理:(for循环的嵌套)#include <stdio.h>#include "math.h"void main (){int m,i,j,n=0;for(i=1;i<=100;i++){ m=sqrt(i);for(j=2;j<=m;j++)if(i%j==0) break;if(j>m+1){ printf("%5d ",i);n=n+1;}}if(n%10==0) printf("\n");}五、实验注意事项:1.注意到标点符号,不要遗漏!注意程序的格式等细节。

2.熟练掌握for循环的结构!尽量使程序简洁!3.使用数学函数时,应该在该资源文件中使用以下命令行:#include <.math.h>或#include "math.h"六、实验数据记录:七、结果分析与讨论:1.程序编写较易但运行比较麻烦!!2.平时要多练就会熟悉才能编得更快~~~~多运行才能做得更好!八、教师批阅意见:成绩:指导教师签名:年月日。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

《面向对象程序设计》实验报告(一)
姓名江琛学号11 班级计本二班
实验地点软件实验室2 指导教师丁德武实验时间2012-2-27
(注:一到五条在实验预习时填写,六、七条在实验当中或之后填写)
一、实验项目名称:熟悉C++程序的运行环境
二、实验目的及要求
目的:
1.了解和使用Visual C++ 6.0的集成开发环境。

2.熟悉Visual C++ 6.0环境的基本命令和功能键,熟悉常用的菜单命令。

3.学习使用Visual C++ 6.0环境的帮助。

4.学会完整的C++程序开发过程(编辑、编译、连接、调试、运行、查看结果)。

要求:
熟悉VC++上机环境,通过简单的输入输出程序,掌握利用Visual
C++ 6.0进行面向对象程序设计的基本步骤。

三、实验环境及要求:多媒体计算机一台
Windows XP操作系统
Visual C++ 6.0
四。

试验原理及步奏
原理:(for循环的嵌套)
#include <stdio.h>
#include "math.h"
void main ()
{
int m,i,j,n=0;
for(i=1;i<=100;i++)
{ m=sqrt(i);
for(j=2;j<=m;j++)
if(i%j==0) break;
if(j>m+1)
{ printf("%5d ",i);
n=n+1;
}
}
if(n%10==0) printf("\n");
}
五、实验注意事项:
1.注意到标点符号,不要遗漏!注意程序的格式等细节。

2.熟练掌握for循环的结构!尽量使程序简洁!
3.使用数学函数时,应该在该资源文件中使用以下命令行:#include <.math.h>或#include "math.h"
六、实验数据记录:
七、结果分析与讨论:
1.程序编写较易但运行比较麻烦!!
2.平时要多练就会熟悉才能编得更快~~~~多运行才能做得更好!
八、教师批阅意见:
成绩:指导教师签名:年月日。

相关文档
最新文档