《C语言程序设计》C函数定义和使用
更新时间:2024-03-30 00:34:01 阅读量: 综合文库 文档下载
《C
语言程序设计》实验报告
实验名称:函数定义和使用
系 别: 计算机系 专业:计算机科学与技术 班级:五班
姓 名: 学号: 实验日期: 教师审批签字:
实验5 C函数定义和使用
⒈ 实验目的
⑴ 学习C语言中函数的定义和调用方法。 ⑵ 掌握通过参数在函数间传递数据的方法。
⑶ 熟悉TC集成环境对包含函数调用的程序的调试方法。
⒉ 实验内容或实验题目
A:修改调试题目:
题目⑴:调试下列程序,使之具有如下功能:fun函数是一个判断整数是否为素数的函
数,使用该函数求1000以内的素数平均值。写出调试过程。 #include “stdio.h” void main()
{ int a=0,k; /* a保存素数之和 */
float av; /* av保存1000以内素数的平均值 */ for (k=2;k<=1000;k++)
if (fun(k)) /* 判断k是否为素数 */ a+=k; av=a/1000;
printf(\; }
fun(int n) /* 判断输入的整数是否为素数 */ { int i,y=0;
for(i=2;i 题目⑵:调试以下程序并查看运行结果: #include “stdio.h” void main() { int a=1,b=2,c; c=max(a,b); printf(\is %d\\n\ } max(int x,int y) //请回答:函数功能是什么? { int x; z=(x>y)?x:y; return(z); } 题目⑵:调试以下程序并查看运行结果: int a=5;int b=7; #include “stdio.h” void main() { int a=4,b=5,c; c=plus(a,b); printf(\ } int plus(int x,int y) 请回答:函数功能是什么? { int z; z=x+y; return(x); } B、编程题目: 要求:每道题目分别书写程序,试运行(如何输入,结果如何)。 题目⑴:编写函数求x的n次方的值(提示:有一个参数的函数) 题目⑵:编写一个求水仙花数的函数,求3位正整数的全部水仙花数中的次大值。所 谓水仙花数是指三位整数的各位上的数字的立方和等于该整数本身。例如:153就是一个水仙花数:153 = 13 + 53 + 33 ⒊ 算法说明 (用文字或流程图说明。) 开始 a=0,b=0 k=2 N k<=1000?Y N fun(k)? Y a+=k,b++ k++ av=(float)a/b; 输出av 结束 fun(int n) i=2 N i 开始 a=1,b=2 c=max(a,b) 输出c 结束 开始 a=4,b=5 c=plus(a,b) 输出c 结束 定义整形x,y,z max(x,y) N x>y? Y z=x z=y z plus(int x,int y) z=x+y 输出z result=1,i=1 N i<=n Y result=result*x result i++ power(float x,int n); 开始 输入x,n a=power(x,n) 输出a 结束 开始 d=0 n=999 n>=100 Y n-- NarcissisticNumber(n)!=0 NarcissisticNumber (int n) 定义整形a,b,c,x d++ d=2 a=n/100; b=n0/10; c=n; x=a*a*a+b*b*b+c*c*c e=n 次大值为e N n=x 结束 return 0 return n Y ⒋ 程序清单 A程序1: #include \fun(int n); void main() { int a=0,k,b=0; /* a保存素数之和 */ float av; /* av保存1000以内素数的平均值 */ for (k=2;k<=1000;k++) if (fun(k)) /* 判断k是否为素数 */ { a+=k; b++; } av=(float)a/b; printf(\} fun(int n) /* 判断输入的整数是否为素数 */ { int i,y; for(i=2;i A程序2: #include \max(int x,int y); void main() { int a=1,b=2,c; c=max(a,b); printf(\ } max(int x,int y) { int z; z=(x>y)? x:y; return(z); } A程序3: #include \void main() { int a=4,b=5,c; c=plus(a,b); printf(\ } int plus(int x,int y) { int z; z=x+y; return(z); } B程序1:: #include \float power(float x,int n) { float result=1; int i; for(i=1;i<=n;i++) { result=result*x; } return result; } float power(float x,int n); main() { float a,x; int n; printf(\scanf(\a=power(x,n); printf(\的%d次方为%f\\n\} B程序2:#include\NarcissisticNumber (int n) { int a,b,c; a=n/100; b=n0/10; c=n; if(n==a*a*a+b*b*b+c*c*c) return n; else return 0; } void main() { int n,d=0,e; for(n=999;n>=100;n--) { if(NarcissisticNumber(n)!=0) { d++; printf(\第%d大水仙花数%d\\n\ } if(d==2) e=n; } printf(\所以次大值%d\\n\ } ⒌ 运行结果 (包括原始数据、相应的运行结果和必要的说明。) 求a和b的最大数 求a和b的和 ⒍ 分析与思考 调试过程及调试中遇到的问题及解决办法;调试程序的心得与体会;其他算法的存在与实践等。若最终未完成调试,要认真找出错误并分析原因等。 ①注意循环体具体循环到哪里,别忘了把这一部分循环体括起来。 ②当运行出现错误时,要多在程序中插入打印语句,检查具体是哪里错了,这样可以减少范围去发现问题。 ③当程序运行,开始输入数据时,特别要注意输入格式,即电脑上的输入法,看是否匹配。
正在阅读:
《C语言程序设计》C函数定义和使用03-30
电厂应急预案09-17
试论思想政治教育的科学性10-23
浅论如何发挥宣传来发展红色旅游10-02
科技馆小学生作文06-15
通风管道行业深调查及发展前景研究报告04-19
遗传复习题附答案03-26
OA专家能力培训理论测试题10-27
- 多层物业服务方案
- (审判实务)习惯法与少数民族地区民间纠纷解决问题(孙 潋)
- 人教版新课标六年级下册语文全册教案
- 词语打卡
- photoshop实习报告
- 钢结构设计原理综合测试2
- 2014年期末练习题
- 高中数学中的逆向思维解题方法探讨
- 名师原创 全国通用2014-2015学年高二寒假作业 政治(一)Word版
- 北航《建筑结构检测鉴定与加固》在线作业三
- XX县卫生监督所工程建设项目可行性研究报告
- 小学四年级观察作文经典评语
- 浅谈110KV变电站电气一次设计-程泉焱(1)
- 安全员考试题库
- 国家电网公司变电运维管理规定(试行)
- 义务教育课程标准稿征求意见提纲
- 教学秘书面试技巧
- 钢结构工程施工组织设计
- 水利工程概论论文
- 09届九年级数学第四次模拟试卷
- 义和
- 程序设计
- 函数
- 语言
- 使用
- 煤矿安全基础知识题库0908
- 专题八 解放人类的阳光大道
- 1464661411军事理论题库
- DGBL-MSCOP-003-人力资源控制程序
- 2018法考理论真题考点精解之法的运行
- 11、《秋天的雨》课前预习单
- 9.中频治疗仪产品技术要求
- 2015年新版《中华人民共和国职业分类大典》
- 初一年语文入学摸底测试
- 生物精校版山西省运城市康杰中学2018届高考模拟(五)理科综合(
- 车床刀尖半径补偿的运用
- 衡阳城市公共休闲空间布局优化研究
- 广联达GCL2008构件代码应用技巧
- 大学英语精读第五册课后习题答案
- 班主任如何组织班级活动案例
- 北京市大兴区农村四校2014-2015学年高二上学期期中联考物理试卷
- 2013-2015济宁市中考数学试题《空间与图形》分析
- 英语教师专业技术工作总结
- Nutch 1.0源代码分析
- 《工程水文学》试卷一