第 PAGE 1页共 NUMPAGES 3页
华北水院高级语言程序设计(C语言)实验报告(五)
-- 学年 第 学期
级 专业: 学号: 姓名:
………………………………………………………………………………………………
一、实验题目:函数
二、实验目的:(略)
三、实验内容:
1. 程序验证(略)
2.程序设计
1) 编程实现求两个正整数的最大公约数,要求计算最大公约数用函数
fun(int a,int b)实现。
源代码: 运行结果:
#include
int fun(int,int);
void main()
{
int A,m,n;
printf("please input two number:");
scanf("%d%d",&m,&n);
A=fun(m,n);
printf("最大公约数=%d\n",A);
}
int fun(int m,int n)
{
int t,r;
if(n>m)
{t=n;n=m;m=t;}
while ((r=m%n)!=0)
{
m=n;
n=r;
}
return (n);
}
2) 编程实现打印出2~n之间的所有素数,要求判断素数过程用自定义函数实现。
源代码: 运行结果:
#include
int isprime (int m)
{
int i;
for (i=2;i
if (m%i==0)
return 0;
return 1;
}
void main ()
{
int i,n;
scanf(“%d”,&n);
for(i=2;i<=n;i++)
if(isprime(i)==1)
printf("%d ",i);
}
华北水院高级语言程序设计(C语言)实验报告(五)
-- 学年 第 学期
级 专业: 学号: 姓名:
………………………………………………………………………………………………
3) 编写函数fun(int t),它的功能是:求斐波那契数列中大于t的最小的一个数,结果由函数返回。其中斐波那契数列f(n)的定义为:
f(1)=1,f(2)=1
f(n)= f(n-1)+ f(n-2)(n>2)
例如:当t=1000时,函数值为:1597。
源代码: 运行结果:
#include
int fun(int t)
{
int n;
printf("Please input n:");
scanf("%d",&n);
printf("n=%d,fun=%d\n",n,fun(n));
}
#include
void sort(int i)
sort(i,n);
{
int i;
for(i=3;fun(i)==fun(i-1)+fun(i-2);n++)
if(n<=fun(i))
return (fun(i+1));
}
{
int n;
printf("Input n please:");
scanf("%d",&n);
printf("n=%d,fun=%d\n",n,fun(n));
}