实验三 模块化程序设计_第1页
实验三 模块化程序设计_第2页
实验三 模块化程序设计_第3页
实验三 模块化程序设计_第4页
实验三 模块化程序设计_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

实验三 模块化程序设计【实验目的】1理解和掌握多模块的程序设计与调试的方法;2掌握函数的定义和调用的方法;3学会使用递归方法进行程序设计。【实验内容】1编写一个函数,判断一个数是不是素数。在主函数中输入一个整数,输出是否是素数的信息。实验步骤与要求:(1) 编写一个函数isprime(n),如果n是素数返回1,否则返回0。(2) 编写一个主函数,输入一个整数,调用isprime( )函数,判断此整数是否为素数,并输出结果。函数isprime(n)算法说明:(1) k = sqrt(n)(2) i = 2(3) 当i = k时,执行(3.1)(3.2),否则转(4)(3.1) if ( m % i = 0 ) return 0(3.2) i=i+1(4) return 1#include#includeint isprime(int n) int i; double k; i=2; k = sqrt(n); while(i=k) if(n%i=0) return 0; i+; return 1;main()int a;int t=1; printf(请输入一个整数n); scanf(%d,&a);t=isprime(a); printf(%d,a);if(t=0) printf(不是素数n); else printf(不是素数n);2编写函数Celsius返回华氏温度对应的摄氏温度,函数Fahrenheit返回摄氏温度对应的华氏温度。用这些函数编写程序,打印从0到100的所有摄氏温度及对应的华氏温度,32到212度的所有华氏温度及对应的摄氏温度。实验步骤与要求:(1)用整齐的表格形式输出。(2)尽量减少输出行数,但要保持可读性。#includemain()int fahr,celsius;int lower,upper;lower=0;upper=100;fahr=lower;while(fahr=upper)celsius=5*(fahr-32)/9;printf(%dt%dn,fahr,celsius);fahr+;main();int celsius,fahr;int lower,upper;lower=32;upper=212;celsius=lower;while(celsius=upper)fahr=9*celsius/5+32;printf(%dt%dn,celsius,fahr);celsius+;3使用随机函数编写一个猜数字游戏程序。实验步骤与要求:由程序随机生成一个1到1000的随机数,游戏者输入猜测值以后,如果正确,则显示“太棒了”;如果猜错了,则会显示“太高了”或“太低了”这样的提示信息,然后进入循环,直到猜对为止。说明:使用rand()和srand()函数编程,这两个函数的原型在stdlib.h头文件中。4用梯形法求函数f(x)=1+x2在0到1上的定积分。实验步骤与要求:(1)编制一个函数sab(a,b,n)求函数f(x)在a,b上的定积分,其中n为区间a,b的等分数。(2)编制一个主函数及计算被积函数值的函数f(x),在主函数中调用sab()函数计算并输出积分值。说明:用梯形法求f(x)在a,b区间的定积分,即求f(x)与x=a、x=b和y=0围成的区间的面积,将此区间分为n份,每一小份可以近似看成一个梯形,将所有梯形面积累加求和,得到球积分公式为:s=hf(a)+f(b)/2+hf(a+kh),其中,h=(b-a)/n5用递归方法编写程序,求n阶勒让德多项式的值,递归公式为实验步骤与要求:(1)根据递归公式编制计算n阶勒让德多项式的递归函数p(n,x)(2)编制一个主函数,由键盘输入n,x,调用函数p(n,x)计算n阶勒让德多项式的值。(3)输入(n,x)=(4,2)运行该程序。然后自定义几组数据再运行该程序。P(n,x)递归函数算法说明:if (n=0) p=1else if (n=1) p=xelse p=(2*n-1)*x*p(n-1,x)-(n-1)*p(n-2,x)/n程序调试说明:多模块的调试除了可以采用前面实验中采用的各种调试方法以外,还可以采用“回声打印”的调试方法。当函数之间要传递的数据较多时,容易出错。这时,在有关的输入数据之后加上输出语句,以便反映数据输入的情况。在函数之间有数据传递后,再用输出语句把传递后的数据输出,这样可以找到数据的错误处,以便分析原因,对于多函数程序,可以把这些函数存在不同的磁盘文件中分别进行编译,然后再连接、运行。如果编译有错时,可分别修改,这样便于调试。

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论