C语言程序设计 实验报告5--函数
更新时间:2024-06-25 08:58:01 阅读量: 综合文库 文档下载
- c语言程序设计课后题答案推荐度:
- 相关推荐
福建农林大学金山学院实验报告
系(教研室): 专业: 年级:
实验课程: 姓名: 学号: 实验室号: _
计算机号: 实验时间: 指导教师签字: 成绩:
实验5:函数
一、 实验目的和要求
1.掌握定义函数的方法
2.掌握函数实参与形参的对应关系,以及“值传递”的方式 3.掌握函数递归调用的方法
二、 实验内容和原理
1. 写一个判素数的函数,在主函数输入一个整数,输出是否素数的信息。
2. 编写一个函数,将一个字符串中的元音字母复制到另一个字符串中,然后输出。 3. 用递归调用的方法写一个求n! 的函数,在主函数中输入一个整数,输出该数的阶乘。 4. 函数编写,使其按给出的表达式计算分段函数。|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 > 30 例如:fun( 0.3 ) = 3.643 fun( 1.5 ) = 567.000 fun( 5.15 )= 7.982
5. 编写函数,求1+3+5+7+?+99。
6. 写两个函数,分别求两个整数的最大公约数和最小公倍数,用主函数调用这两个函
数,并输出结果。
三、 实验环境
1. 硬件:PC机;
2. 软件:Windows操作系统、Visual C++ 6.0 。
四、 算法描述及实验步骤
1、 用scanf函数输入,用for(i=2;i<=sqrt(n)&&flag==1;i++)判断该数是不是素数,当n到能
整除i时,输出0结束,最后判断完输出相应的语句。
2、 用char来输入一个空字符串,用gets获得另一个字符串,用 for语句,另i=0,j=0且s[i]
从1开始,当s[i]==大小写aeiou中的任意一个,若是j++,用c[j]=s[i]复制字母,最后输出字符串。
3、 先用scanf函数输入n,调用fac函数来求值,用for语句来选择条件,当n<0时输出错
误,当n=0或1时,时递归终结,若fac f=fac(n-1)*n,求值最后返回结束。
4、 用scanf函数输入x,调用fabs绝对值函数用if语句的嵌套来算出各个区间不同算式所
对应的值,用fun函数反复调用函数,最后返回结束。
5、 定义i、s、n,用for语句对i进行限制,i=1;i<=n;i=i+2 ,再用s=s+i老、i求和,最后
输出且将n赋值为99。
6、先对hcf和lcd函数进行声明且定义uvhl,将u和v比较,另u为大者,让u当被除数,用while((r=u%v)!=0)让除数v为被除数u,余数r为除数v,然后输出最大公约数人,和最小公倍数u*v/最大公约数r,结束。
五、 调试过程
第四题中,漏掉了scanf函数输入,导致编程错误。
六、 实验结果
1、
2、
3、
4、5、
、、
6、
七、 总结
6、 通过这次上机实验让我更深一步的连接和掌握定义函数的方法、函数的递归调用、怎么
样实际的去运用函数编程解决题目。
附录:
1、#include
printf(\scanf(\if(prime(n))
printf(\else
printf(\return 0; }
int prime(int n) {int flag=1,i;
for(i=2;i<=sqrt(n)&&flag==1;i++) if(n%i==0) flag=0; return(flag); }
2、#include
{void cpy(char[],char[]); char str[80],c[80]; printf(\ gets(str); cpy(str,c);
printf(\ return 0; }
void cpy (char s[],char c[]) { int i,j;
for (i=0,j=0;s[i]!='\\0';i++)
if(s[i]=='a'||s[i]=='A'||s[i]=='e'||s[i]=='E'||s[i]=='i'||s[i]=='I'||s[i]=='o'||s[i]=='O'||s[i]=='u'||s[i]=='U') {c[j]=s[i]; j++; }
c[j]='\\0'; }
3、#include
{ long fac(int n); int n; long y;
printf(\ scanf(\ y=fac(n);
printf(\ return 0; }
long fac(int n) {
long f; if(n<0)
printf(\ else if(n==0||n==1) f=1;
else f=fac(n-1)*n; return(f); }
4、#include
{float fun(float x); float x,y;
printf(\请输入数值:\ scanf(\ y=fun(x); printf(\
%f,%6.3f\\n\}
float fun(float x) {float f; if(x<1)
f=0.336*x+0.015*x*x+3.541; else if(x>3)
f=1.55*(fabs(10-x)+0.3); else f=567; return(f); }
5、#include
for(i=1;i<=n;i=i+2) s=s+i; return s; }
int main()
{printf(\
}
6、#include
{int hcf(int,int); int lcd(int,int,int); int u,v,h,l;
scanf(\ h=hcf(u,v);
printf(\ l=lcd(u,v,h);
printf(\ return 0; }
int hcf(int u,int v) {int t,r; if(v>u)
{t=u;u=v;v=t;} while((r=u%v)!=0) { u=v; v=r;} return (v); }
int lcd(int u,int v,int h) { return(u*v/h); }
正在阅读:
C语言程序设计 实验报告5--函数06-25
建设工程规划竣工验收申请表12-17
宪法就在我们身边作文800字06-17
GYB导入试题库2016.1006-19
大学校园网络数字广播方案08-27
小学生学雷锋广播稿02-23
模板施工方案06-14
土地利用规划作业212-05
导游大赛题库一答案10-09
成长,一种美丽的痛作文04-02
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 程序设计
- 函数
- 语言
- 实验
- 报告
- 自然博物馆讲解大纲
- 2017消防安全技术综合能力考前冲刺卷(1)
- 新疆羊肉营销策划方案
- 2016-2022年中国内蒙古风力发电产业深度调研及十三五盈利战略研
- 2015江西省选调生考试时间
- 研究生英语模拟题(附答案)(4)
- 年度绩效评估表 - 图文
- 文科综合模拟四川省成都经济技术开发区实验高级中学校2018届高三
- 事业单位财务管理
- C语言程序设计参考答案与复习题
- 杰图市政管线协同软件简明操作手册.
- 南京瞻园铭楼项目市场调研报告
- 2017年一级建造师水利水电工程全真模拟卷(七)
- 建筑构造习题 - 图文
- 2016年固体废弃物处理设备现状及发展趋势分析
- 电子制造行业生产企业职业病危害主要因素及防控措施
- 简历模板
- 桂建质16号-广西安全文明施工费使用管理细则
- 电大法学毕业论文
- 物业管理面临挑战与物业管理创新