ImageVerifierCode 换一换
格式:DOCX , 页数:28 ,大小:23.44KB ,
资源ID:7777050      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/7777050.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(统考习题答案60.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

统考习题答案60.docx

1、统考习题答案60统考复习题1.编写程序,用牛顿切线法求方程f(x)=x+x-1.56=0的近似实根r,迭代初值为2,精确到0.0001。(注意:x是以e为底的自然对数)(提示:牛顿切线法的计算公式为x=x-f(x)/f(x)).#include stdio.h#include math.hvoid main() float x0,x1; x0=2; x1=x0-(x0+log(x0)-1.56)/(1+1/x0); do x0=x1; x1=x0-(x0+log(x0)-1.56)/(1+1/x0); while(fabs(x0-x1)1e-4); printf(x=%10.4fn,x1);

2、运行结果:x= 1.29872. 编写程序,用牛顿切线法求方程f(x)= x+x-3.18=0的近似实根r,迭代初值为2.5,要求结果保留4位小数。(注意:x是以10为底常用对数lgx)(提示:必须把方程f(x)=0化成其等价形式x=g(x))(本题允许使用其他迭代法)#include stdio.h#include math.hvoid main() float x0,x1; x0=2.5; x1=x0-(x0+log10(x0)-3.18)/(1+1/(x0*log(10); do x0=x1; x1=x0-(x0+log10(x0)-3.18)/(1+1/(x0*log(10); whi

3、le(fabs(x0-x1)1e-4); printf(x=%10.4fn,x1); 运行结果:x=2.7419383.编写程序,用普通迭代法求方程f(x)= x+x-3.18=0的近似实根r,迭代初值为2.5,要求结果保留4位小数。(注意:x是以10为底常用对数lgx)(提示:必须把方程f(x)=0化成其等价形式x=g(x))(本题允许使用其他迭代法)要求:在运行程序时,使用文本框或InputBox函数输入迭代初值,并用适当的方法输出运算结果#include stdio.h#include math.hvoid main() float x0,x1; x0=2.5; x1=3.18-log1

4、0(x0); do x0=x1;x1=3.18-log10(x0); while(fabs(x0-x1)1e-4); printf(x=%fn,x1); 运行结果:x=2.7419384.编写程序,用牛顿切线法求方程f(x)=x3+2x2-14=0(其中表示幂运算),在区间(0,5)上的近似实根r,迭代初值自选,精确到0.0001。提示:牛顿切线法的计算公式为x=x-f(x)/ f(x).#include stdio.h#include math.hvoid main() float x0,x1; x0=2.5; x1=x0-(pow(x0,3)+2*pow(x0,2)-14)/(3*pow(

5、x0,2)+4*x0) ; do x0=x1;x1=x0-(pow(x0,3)+2*pow(x0,2)-14)/(3*pow(x0,2)+4*x0) ; while(fabs(x0-x1)1e-4); printf(x=%fn,x1); 运行结果:x=1.8957065.编写程序,用二分法求一元非线性方程f(x)=x+cosx-2.8=0在区间(0,5)上的近似实根r,精确到0.0001。#include stdio.h#include math.hdouble f(double x) double y; y=x+cos(x)-2.8; return y;double xpoint(doubl

6、e x1,double x2) double y; y=(x1*f(x2)-x2*f(x1)/(f(x2)-f(x1); return y;double root(double x1,double x2) double x,y,y1; y1=f(x1); do x=xpoint(x1,x2); y=f(x); if(y*y10) y1=y;x1=x; else x2=x; while(fabs(y)=0.0001); return x; void main() double x,x1,x2; x1=0; x2=5; if(f(x1)*f(x2)0) printf(此区间无根); else x=

7、root(x1,x2); printf(x=%8.4fn,x ); /*x= 3.6657*/6.编写程序,用矩形法求一元函数f(x)=x3+2x2-12x-6(其中示幂运算),在区间3.5, 5上的积分近似值S,保留2位小数(小区间数n=15,此参数不能改动,否则影响答案)。#include stdio.h#include math.hdouble f(double x) double y; y=x*x*x+2*x*x-12*x-6; return y;void main() int i,n; double a,b,x,h,s; n=15; a=3.5; b=5.0; h=(b-a)/n;

8、x=a; s=0; for(i=1;i=n;i+) x=x+h; s=s+f(x)*h; printf(s=%6.2fn,s);运行结果:s=92.507.编写程序,用矩形法求一元函数f(x)=x3+2x2-12x-6(其中示幂运算),在区间3.5,5上的积分近似值S,保留2位小数(小区间数n=25,此参数不能改动,否则影响答案)#include stdio.h#include math.hdouble f(double x) double y; y=x*x*x+2*x*x-12*x-6; return y;void main() int i,n; double a,b,x,h,s; n=25

9、; a=3.5; b=5.0; h=(b-a)/n; x=a; s=0; for(i=1;i=n;i+) x=x+h; s=s+f(x)*h; printf(s=%6.2fn,s);运行结果:s=90.698. 要求:编写程序,用梯形法求一元函数f(x)= (x+1)+ x/3,在区间1,4上的积分近似值S,保留3位小数(小区间数n=20,此参数不能改动)。(注意:x是以e为底的自然对数)在运行程序时,使用文本框或InputBox函数输入n值,并用适当的方法输出运算结果。#include stdio.h#include math.hdouble f(double x) double y; y=

10、log(x+1)+x/3.0; return y;double integ(double a, double b) double s,x,h; int n=20,i; h=fabs(b-a)/n; s=(f(a)+f(b)/2.0; for(i=1;i=n-1; i+) x=a+i*h; s=s+f(x); s=s*h; return s;void main() double s; s=integ(1.0,4.0); printf(s=%8.3fn,s);运行结果:s= 6.1609.编写程序,用梯形法求一元函数f(x)=7x3+2x2-12x-16(其中表示幂运算),在区间3,5上的积分近似

11、植S,保留2位小数(小区间数n=25,此参数不能改动,否则影响答案)#include stdio.h#include math.hdouble f(double x) double y; y=7*x*x*x+2*x*x-12*x-16; return y;double integ(double a, double b) double s,x,h; int n=25,i; h=fabs(b-a)/n; s=(f(a)+f(b)/2.0; for(i=1;i=n-1; i+) x=a+i*h; s=s+f(x);s=s*h; return s;void main() double s; s=int

12、eg(3.0,5.0); printf(s=%8.2fn,s);运行结果:s=889.5210.编写程序,用矩形法求一元函数f(x)=7x3+2x2-12x-16(其中表示幂运算),在区间5,7上的积分近似值S,保留2位小数(小区间数n=15,此参数不能改动,否则影响答案)#include stdio.h#include math.hdouble f(double x) double y; y=7*x*x*x+2*x*x-12*x-6; return y;void main() int i,n; double a,b,x,h,s; n=15; a=5.0; b=7.0; h=(b-a)/n;

13、x=a; s=0; for(i=1;i=n;i+) x=x+h; s=s+f(x)*h; printf(s=%6.2fn,s);运行结果:s= 3201.4311.编写程序,用矩形法求一元函数f(x)=3x3+2x2+x+1(其中表示幂运算),在区间1,3上的积分近似值S,保留3位小数(小区间数n=15,此参数不能改动,否则影响答案)#include stdio.h#include math.hdouble f(double x) double y; y=3*x*x*x+2*x*x+x+1; return y;void main() int i,n; double a,b,x,h,s; n=1

14、5; a=1.0; b=3.0; h=(b-a)/n; x=a; s=0; for(i=1;i=n;i+) x=x+h; s=s+f(x)*h; printf(s=%8.3fn,s);运行结果:s=89.852 12.编写程序,计算出1到500之间所有满足下列条件的整数的和:该整数的所有因子(包括1,但不包括整数本身)之和等于整数本身。#include stdio.hvoid main() int sum=0,i,j,s; for(i=1;i=500;i+) s=0;for(j=1;j#include stdio.hvoid main()int i,a,b,c,sum=0; for(i=100

15、;i#include stdio.hvoid main()int i;float x,min,max,sum=0,ave;scanf(%f,&x);max=x;min=x;sum=sum+x; for(i=1;imax) max=x; if(xmin) min=x; ave=(sum-max-min)/(i-2); printf( %5.2f ,ave);15.编写程序,计算出300到810之间所有满足下列条件的整数的平方根和:整数能被其每位数字的和整除。要求:运行程序,将结果四舍五入保留4位小数,并采用适当的方式输出。#include stdio.h #include math.h void

16、 main() int i,a,b,c; float sum=0;for(i=300;i17.编写程序,计算出1000到5000之间能被3整除但不能被13整除的整数的所有的整数的平方根的和。保留4位小数#include stdio.h #include math.h void main()int i;float sum=0; for(i=1000;i#include stdio.h void main()int i,a,b,c, sum=0; for(i=100;i=999;i+) a=i/100; b=(i-100*a)/10; /* b=(i%100)/10; */ c=i-100*a-1

17、0*b; /* c=i%10 ; */ if(a+b+c=21)sum+; printf( %d ,sum); 19.编写程序,计算出1000到9900之间所有能被3和7同时整除的整数之和。#include stdio.h void main()int i; long sum=0; for(i=1000;i=9900;i+) if(i%3=0&i%7=0)sum=sum+i; printf(%ld ,sum);20.设计如图所示的运行界面,从键盘输入不少于10个数的任意数据,点击“计算”按钮,输出这些数据中最小的5个数 的平均值(保留两位小数)。21.编写程序,从键盘输入一个3位正整数,试求其

18、个、十、百位数之和(例如:136的各位数之和为10)。要求:用可视化程序设计出如下界面,点击“确认”按钮输出运算结果#include stdio.hvoid main() int i,a,b,c, sum=0; printf( enter i: ); scanf(%d ,&i); a=i/100; b=(i-100*a)/10; /* b=(i%100)/10; */ c=i-100*a-10*b; /* c=i%10 ; */ sum=a+b+c;printf( i=%d,sum=%d ,i,sum);22 编写程序,计算并输出下面数列前n(设n=45)项中所有偶数项的和。1*2*3,3*4

19、*5,5*6*7,(2n-1)*2n*(2n+1),#include stdio.h void main()int n; long sum=0; for(n=2;n=45;n=n+2)sum=sum+(2*n-1)*(2*n)*(2*n+1); printf(%ld ,sum); 23.编写程序,计算下面数列前n项(设n=50)中奇数项的和。结果取4位小数。1/(1*2*3),1/(2*3*4),1/(3*4*5),1/(n(n+1)(n+2),#include stdio.h void main()int n; float sum=0; for(n=1;n=50;n=n+2)sum=sum+

20、1.0/(n*(n+1)*(n+2); printf(%5.4f ,sum);24.编写程序,计算并输出下面数列前n(设n=15)项的和。用科学技术法表示结果,尾数取4位小数。 1!,2!,3!,4!,n!,(其中,!表示求阶乘)。#include stdio.h void main()int n; float sum=0,p=1; for(n=1;n=15;n+) p=p*n; sum=sum+p; printf(%5.4e ,sum); 25.编写程序,计算并输出下面数列前30项的和。1*2*3,3*4*5,5*6*7,(2n-1)*2n*(2n+1),#include stdio.h v

21、oid main()int n; long sum=0; for(n=1;n=30;n+)sum=sum+(2*n-1)*(2*n)*(2*n+1); printf(%ld ,sum); 26.编写程序,计算并输出下面数列前40项的和,结果取6位小数,小数点后第5位四舍五入。2/3,4/5,6/7,8/9,10/11,12/13,14/15,(2n)/(2n+1)要求:在运行程序时,使用文本框或InputBox函数输入n值,并用适当的方法输出运算结果。#include stdio.h void main()int n; float sum=0; for(n=1;n=40;n+)sum=sum+

22、2.0*n/(2*n+1); sum=(int)(sum*10000+0.5)/10000.0; printf(%f ,sum); 27.编写程序,求下面数列前40项的和。结果取4位小数。1,1/24,1/34,1/44,1/n4,(其中,表示幂运算)#include stdio.h (1.0823)#include math.hvoid main()int n; float sum=0; for(n=1;n=40;n+)sum=sum+1.0/pow(n,4); printf(%5.4f ,sum); 28.编写程序,计算并输出下面数列前n项(设n=50)的和。1*2,-2*3,3*4,-4

23、*5,(-1)(n-1)*n*(n+1),(其中,表示幂运算)#include stdio.h void main()int n,s=1; int sum=0; for(n=1;n=50;n+) sum=sum+s*n*(n+1);s=-s; printf(%d ,sum); 29.编写程序,计算并输出下面数列前n (设n=45)项中所有奇数项的和。 1*2,2*3,3*4,4*5,n*(n+1),#include stdio.h void main()int n; int sum=0; for(n=1;n=45;n=n+2)sum=sum+n*(n+1); printf(%d ,sum);3

24、0.编写程序,计算下面数列前n项(设n=50)中奇数的和。结果取4位小数。1/(1*2*3),1/(2*3*4),1/(3*4*5),1/(n(n+1)(n+2),#include stdio.hvoid main()int n; float sum=0; for(n=1;n=50;n=n+2)sum=sum+1.0/(n*(n+1)*(n+2); printf(%5.4f ,sum); 31.编写程序,求下面数列前50项的和。结果取4位小数。1,1/(3*3),1/(5*5),1/7*7),1/(2n-1)*(2n-1),#include stdio.h void main()int n;

25、float sum=0; for(n=1;n=50;n+ )sum=sum+1.0/(2*n-1)*(2*n-1); printf(%5.4f ,sum);32.编写程序,计算并输出如下数列前35项的和。-1*2*3,2*3*4,-3*4*5,(-1)n*(n*(n+1)*(n+2),(其中,(-1)n表示-1的n次方)#include stdio.h void main()int n,s=-1; int sum=0; for(n=1;n=35;n+) sum=sum+s*n*(n+1)*(n+2);s=-s; printf(%d ,sum); 33.编写程序,计算并输出下面数列中前n(设n=8)项的和。结果取四位小数。1/1!,1/2!,1/3!,1/4!,1/n!,(其中,!表示求阶乘)#include stdio.h void main()int n; float sum=0,p=1; for(n=1;n=8;n+)p=n*p;sum=sum+1.0/p; printf(%5.4f ,sum); 34.编写程序,计算并输出下列前35项的和,结果取4位小数。1/2,2/3,3/4,4/5,5/6,6/7,7/8,n/(n+1),#include stdio.h void main

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1