江南大学《面向对象的程序设计》大作业报告.docx
- 文档编号:11879024
- 上传时间:2023-04-08
- 格式:DOCX
- 页数:40
- 大小:234.41KB
江南大学《面向对象的程序设计》大作业报告.docx
《江南大学《面向对象的程序设计》大作业报告.docx》由会员分享,可在线阅读,更多相关《江南大学《面向对象的程序设计》大作业报告.docx(40页珍藏版)》请在冰豆网上搜索。
江南大学《面向对象的程序设计》大作业报告
《面向对象的程序设计》大作业报告
班级姓名总学号
题目2-1
题目要求:
用穷举法找出1~100间的质数,显示出来。
分别使用while,do-while,for循环语句实现。
设计思路:
通过判断整除比自己小的数的余数是否为零来判别质数由于非平方数的因素必有一个小于其平方根值故可以只验算那些比根值小的数来更快获得结果
程序代码:
使用while:
voidmain()
{inti,j,k,flag;
i=2;
while(i<=100)
{
flag=1;
k=sqrt(i);
j=2;
while(j<=k)
{
if(i%j==0)
{flag=0;
breake;
}
j++;
}
if(flag)
cout<
i++;
}
}
使用dowhile:
voidmain()
{inti,j,k,flag;
i=2;
do
{
flag=1;
k=sqrt(i);
j=2;
do
{
if(i%j==0)
{flag=0;
breake;
}
j++;
}while(j<=k);
if(flag)
cout<
i++;
}while(i<=100);
}
使用for循环:
voidmain()
{
inti,j,k,flag;
for(i=2;i<=100;i++)
{
flag=1;
k=sqrt(i);
for(j=2;j<=k;j++)
If(i%j==0)
{flag=0;
breake;
}
}
if(flag)
cout<
}
}
运行结果:
心得体会:
举一反三
题目:
2-2
题目内容:
输入一个有符号的十进制数,转换成机内二进制数输出(求用位操作运算)。
屏蔽低4位,再以2进制显示。
设计思路:
进行进制转换按位进行右移
程序代码:
voidmain()
{
chara;
intt[8];
inti;
cout<<"请输入一个十进制数:
\n";
cin>>a;
for(i=0;i<8;i++)
{
t[i]=a&0x01;
a=a>>1;
}
for(i=7;i>=0;i--)
cout< cout< system("pause"); } 运行结果: 心得体会: 熟悉进制的意义即可 题目3-1 题目: 观察下面程序的运行输出,与你设想的有何不同? 仔细体会引用的用法。 源程序: #include intmain() { intintOne; int&rSomeRef=intOne; intOne=5; cout<<"intOne: \t\t"< cout<<"rSomeRef: \t"< intintTwo=8; rSomeRef=intTwo;//notwhatyouthink! cout<<"\nintOne: \t\t"< cout<<"intTwo: \t\t"< cout<<"rSomeRef: \t"< return0; } 程序运行输出: 心得体会: 与设想一样 题目3-2 题目要求: 用递归的方法编写函数求n阶勒让德多项式的值,在主程序中实现输入、输出; 设计思路: 程序代码: intmain() { intx,n; floatpolya(int,int); cout<<"输入X和N: "; cin>>x>>n; cout< return0; } floatpolya(intx,intn) { if(n==0)return1; elseif(1==n)returnx; elsereturn((2*n-1)*x*polya(n-1,x)-(n-1)*polya(n-2,x))/n; } 输出结果: 心得体会: 搞懂递归的意义即可 题目3-3 题目要求: 求任意2(3或n)个数之和,要求分别用函数: 缺省参数,重载和模板函数完成 设计思路: 定义不同的函数让两个数相加,然后让其根据数据类型相加。 设计相加的函数,然后用主函数调用函数,运行结果。 程序代码: 函数重载: intsum(intm,intn) { returnm+n; } doublesum(doublem,doublen) { returnm+n; } intmain() { intm,n; cout<<"输入两个数: "; cin>>m>>n; cout<<"他们的和为: "< doublex,y; cout<<"输入另外两个数: "; cin>>x>>y; cout<<"他们的和为: "< return0; } 缺省参数: intSum(inta,intb=0,intc=0) { returna+b+c; } intmain() { intconstx=3,y=2,z=1; cout< cout< cout< return0; } 函数模版: Tsum(Tx,Ty) { returnx+y; } intmain() { inta=3,b=2; doublec=3.2,d=2.3; cout<<"他们的和: "< cout<<"他们的和: "< return0; } 输出结果: 心得体会: 函数重载比较简洁 题目4-1 题目要求定义一个Dog类,包含的age、weight等属性,以及对这些属性操作的方法。 实现并测试这个类。 设计思路: 程序代码: classdog { private: intitsAge; intitsWeight; public: dog(): itsAge(0),itsWeight(0){} voidsetAge(inti){itsAge=i;} voidsetWeight(inti){itsWeight=i;} intage(){returnitsAage;} intweight(){returnitsWeight;} }; intmain() { dogd;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 面向对象的程序设计 江南 大学 面向 对象 程序设计 作业 报告