西安交大C++随堂练习5Word文档格式.docx
- 文档编号:5124713
- 上传时间:2023-05-04
- 格式:DOCX
- 页数:15
- 大小:253.20KB
西安交大C++随堂练习5Word文档格式.docx
《西安交大C++随堂练习5Word文档格式.docx》由会员分享,可在线阅读,更多相关《西安交大C++随堂练习5Word文档格式.docx(15页珍藏版)》请在冰点文库上搜索。
0)
{
y=x*x;
}
else
y=x*x*x+2*x*x+x;
y="
y<
endl;
return0;
}
(二)实验题目二:
计算n!
intn,i=0,mul=1;
请输入非负整数n="
n;
if(n>
=0)
for(i=1;
i<
=n;
i++)
mul=mul*i;
n!
="
mul<
cout<
输入的数不合法"
(三)实验题目三:
Fabonacci数列
(1)、#include<
intfib(intn)
if(n==0)return0;
elseif(n==1)return1;
returnfib(n-1)+fib(n-2);
inti,n,u=0;
请输入待求的斐波那契数列项数n:
for(i=1;
u=u+fib(i);
斐波那契数列的第"
n<
项是:
fib(n)<
斐波那契数列的前"
项和是:
u<
(2)、#include<
cmath>
doublesum,u,n;
sum=0;
u=0;
n=1;
do
u=1/(u+1);
sum=sum+u;
n++;
}while(fabs(u-1/(u+1))>
10E-8);
变式斐波那契数列的所求n为:
变式斐波那契数列的所求第n项为:
变式斐波那契数列的所求前n项和为:
sum<
(四)、实验题目四:
数学计算
inta,n,u,i,sum;
i=1;
请输入1-9的整数a和任意正整数n:
a>
u=a;
u=10*u+a;
i++;
}while(i<
=n);
a+aa+aaa+aaaa+……+="
(五)、实验题目五:
谁是小偷
intmain()
{
inta,b,c,d;
for(a=1;
=0;
a--)//穷举每个人是否是小偷的所有情况
for(b=1;
b>
b--)//1:
是小偷0:
不是
for(c=1;
c>
c--)
for(d=1;
d>
d--)
if((a==0)+(c==1)+(d==1)+(d==0)==3&
&
a+b+c+d==1)//4人的说法中有3个真的,且只有一个小偷
{
A"
(a?
:
不"
)<
是。
B"
(b?
C"
(c?
D"
(d?
}
}
if((!
a)+(c)+(d)+(!
d)==3&
a+b+c+d==1)//!
a与a==0或a!
=1完全等价,其他同
(六)、实验题目六:
水仙花数
#include<
intn,i,j,k,sum,m;
doubleaverage;
m=0;
for(n=100;
n<
=999;
n++)
{i=n/100;
//取出n的百位数
j=(n/10)%10;
//取数n的十位数
k=n%10;
//取出n的个位数
if(n==i*i*i+j*j*j+k*k*k)
{
cout<
="
^3+"
j<
k<
^3"
sum=sum+n;
m++;
}
所有水仙花数的和sum="
average=sum/m;
所有水仙花数的平均值average="
average<
(七)、实验题目七:
二元一次方程组
intn,i,j,k,t,m=0;
for(n=1000;
=2000;
i=n/1000;
//取出千位
j=n/100-10*i;
//取出n的百位数
k=n/10-100*i-10*j;
//取数n的十位数
t=n%10;
//取出n的个位数
if((i+j)==(k+t))
cout<
n="
\t"
水仙花数的个数m="
m<
三.个人小结
这次的实验明显比前两次难,很多程序都不能直接套用例子,但总体来说还是很基本的。
第三题求斐波那契数列,重点在于最后两位数与新加入数的转换。
第三题其实是斐波那契数列的改版,循环中加一个sum即可。
第四题重点在于n个a到n+1个a的转换(乘十加a)比较简单。
第六题可对求水仙花数程序略作修改,为求和可在循环中加入sum+=n,为求平均值可添加计数器num++。
本此实验最应注意的是循环的次数,循环的条件(停止循环的条件)。
需要在写程序前将结构彻底搞懂,必要时可画流程图。
个人缺点编程速度太慢,主要是第二题调试时间太长。
另外应注意程序的注释,提高可读性。
**********请看下页样例**********
课程计算机程序设计实验名称C++集成开发环境的使用第1页共2页
系别理学院实验日期2007年3月15日
专业班级应数61组别___________实验报告日期2007年3月16日
姓名张三学号06031027报告退发(订正、重做)
同组人_________________________________教师审批签字
(1)掌握集成开发环境的使用方法;
(2)了解C++程序的基本特点。
求解任意两个正整数的最大公因数。
1.要点分析
根据古希腊数学家欧几里德的算法,要求解给定两个正整数p和q的最大公因数可按照如下方法:
步骤1:
如果p<
q,交换p和q;
步骤2:
求p/q的余数r;
步骤3:
如果r=0,则q就是所求的结果;
否则反复做如下工作:
令p=q,q=r,重新计算p和q的余数r,直到r=0为止
则q就是原来的两正整数的最大公因数.
2.程序源代码
//计算两个正整数的最大公因数
iostream.h>
//包含基本输入输出库文件
//说明三个整型变量p,q,r
intp,q,r;
//提示用户由键盘输入两个正整数
"
Pleaseinputtwointegernumbers:
<
endl;
cin>
p>
q;
//如果p<
q,交换p和q
if(p<
q)
r=p;
p=q;
q=r;
//计算p除以q的余数r
r=p%q;
//只要r不等于0,重复进行下列计算
while(r!
=0)
r=p%q;
//输出结果
cout<
Themaximumcommondivisoris"
q<
."
3.实验结果
计算矩形面积
(略)
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 西安 交大 C+ 练习