实验报告

时间:2023-03-05 03:01:16 阅读: 最新文章 文档下载
说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。
实验报告

实验名称 函数 生命科学与健康 专业班级 生物1402 蔡忠宇 20145408 任课教师 实验时间 6 2

1. 实验目的

(1)熟练掌握函数声明,函数设计以及循环结构的步骤与方法(2)在编程的过程中加深函数调用的设计思想

2. 实验内容

编写两个函数,一个函数gcd ( )的功能是求两个整数的最大公约数,另一个函数mul()的功能是求两个整数的最小公倍数。

要求:

(1) 分别画出gcd ( ) mul()算法流程; (2) 两个整数在主函数中输入。

(3)在主函数中调用函数gcd ( ) mul(),首先将两个整数ab为实参传递给函数gcd ( ),求出最大公约数后,将最大公约数与两个整数a,b一起作为实参传递给函数mul(),以此求出最小公倍数。

4)在主函数中输出最大公约数和最小公倍数的值。 3. 源程序 #include int gcd(int a,int b);

int mul(int a,int b,int c); void main() {

int x,y,m,n;

printf("输入两个数:"); scanf("%d%d",&x,&y); m=gcd(x,y); n=mul(x,y,m);

printf("最大公约数为:%d\n最小公倍数为:%d",m,n); }

int gcd(int a,int b) { int i; if(a>b)

for(i=b;i>0;i--) {

if((a%i==0)&&(b%i==0)) break; } else

for(i=a;i>0;i--) {


if((a%i==0)&&(b%i==0)) break; }

return(i); }

int mul(int a,int b,int c) { int d;

c=gcd(a,b); d=a*b/c; return(d); }

4. 运行结果

输入2277,运行结果如下:





5. 出现问题及解决办法 1 在本实验中要求构建两个函数且在主函数中调用函数gcd ( )

mul(),首先将两个整数ab作为实参传递给函数gcd ( )求出最大公约数其程序如下: int gcd(int a,int b) { int i; if(a>b)

for(i=b;i>0;i--) {

if((a%i==0)&&(b%i==0)) break; } else

for(i=a;i>0;i--) {

if((a%i==0)&&(b%i==0))


本文来源:https://www.wddqw.com/doc/a30946cf453610661fd9f408.html