程序设计基础实验报告6 (8000字).doc
文本预览下载声明
程序设计基础实验报告6 (8000字)
福建农林大学金山学院实验报告
系(教研室):__________________专业: 年级:
实验课程: 姓名: 学号: 实验室号:
计算机号:实验时间:指导教师签字:成绩: 实验6:函数
一、 实验目的和要求
1.掌握定义函数的方法
2.掌握函数实参与形参的对应关系,以及“值传递”的方式
3.掌握函数递归调用的方法
二、 实验内容和原理
1. 写一个判素数的函数,在主函数输入一个整数,输出是否素数的信息。
2. 编写一个函数,将两个字符串连接。
3. 函数编写,使其按给出的表达式计算分段函数。|X|表示X的绝对值(利用 fabs( x ) 函数求浮点数x的绝对值)。
0.336x+0.015x+3.541 x < 1 2
fun(x)= 567 1 ≤ x ≤ 3
1.55(|10-x|+ 0.3) x > 3
例如:fun( 0.3 ) = 3.643
fun( 1.5 ) = 567.000
fun( 5.15 )= 7.982
4. 用递归调用的方法写一个求n! 的函数,在主函数中输入一个整数,输出该数的阶乘。
5. 写一个函数,将一个字符串中的元音字母复制到另一个字符串,然后输出。
6. 写一个函数,使输入的一个字符串按反序存放,在主函数中输入和输出字符串
三、 实验环境
1. 硬件:PC机;
2. 软件:Windows操作系统、Visual C++ 6.0 。
四、 算法描述及实验步骤
2.利用while语句将2个数组之间的元素进行复制。
3.先用函数调用,然后再函数下面按题目所给的公式用if else语句来完成。
4.用递归调用,设定一个X,使其从本身一直乘以比前一个数小一的等式若X=1,自动跳出,值为一
五、 调试过程
1. obj - 0 error(s), 0 warning(s);0 error(s), 0 warning(s);
2.obj - 0 error(s), 0 warning(s);exe - 0 error(s), 0 warning(s)
六、 实验结果
七、 总结
掌握定义函数的方法,掌握函数实参与形参的对应关系,以及“值传递”的方式 掌握函数递归调用的方法。
附录:
1. #include lt;stdio.hgt;
void main()
{
void fun(int n);
int n;
scanf(quot;%dquot;,amp;n);
fun(n);
}
void fun(int n)
{
int i,p;
for(i=2;ilt;n;)
{
p=n%i;
if(p==0)
{
printf(quot;不是素数\nquot;);
break;
}
i++;
}
if(p!=0)
printf(quot;是素数\nquot;);
}
2. #includelt;stdio.hgt;
void main()
{ char s1[80],s2[80];
int i=0,j=0;
puts(quot;输入两个字符串:quot;);
gets(s2);
while(s1[i]!=#39;\0#39;) i++;
while((s1[i++]=s2[j++])!=#39;\0#39;);
printf(quot;result:%s\nquot;,s1);
}
3. #include lt;stdio.hgt;
#includelt;math.hgt;
void main()
{
float fun(float x);
float x,t;
scanf(quot;%fquot;,amp;x);
t=fun(x);
printf(quot;%.3fquot;,t);
}
float fun(float x)
{
float t;
if(xlt;1)
t=0.336*x+0.015*x*x+3.541;
else i
显示全部