收藏 分销(赏)

C语言实验报告6——函数.doc

上传人:天**** 文档编号:4362128 上传时间:2024-09-13 格式:DOC 页数:15 大小:317KB
下载 相关 举报
C语言实验报告6——函数.doc_第1页
第1页 / 共15页
C语言实验报告6——函数.doc_第2页
第2页 / 共15页
点击查看更多>>
资源描述
学生实验报告 学号 : 日期 : 20140622 系别 计算机科学与技术 专业 计算机科学与技术(师) 班级 姓 名 课程 名称 程序设计基础 课程 类型 专业课 学时数 2 实验 名称 函数 实验目得: 掌握C语言函数得定义与调用方法; 理解C语言函数得调用过程; 学会编写函数构造程序、。 实验要求: 实验后写实验报告。 1. 实验内容: 1. 阅读下列程序并执行,理解程序得功能并记录程序运行结果 #include "stdio、h" int x,y; void num { int a = 15,b = 10; x = a b; y = a + b; } void main { int a = 7,b = 5; x = a + b; y = a b; num; printf("%d,%d\n",x,y); } 运行结果: 2、阅读下面程序并执行,理解程序并记录程序运行结果 #include "stdio、h" void main { int a=2,i; for (i=0;i<3;i++)printf("%4d",f(a)); } f(int a) { int b=0; int c=3; b++; c++; return(a+b+c); } 运行结果: 3、 调试运行教材146页156页例7、1例7、3页程序,理解并掌握程序改进所采用得程序设计技术。 7、1题 #include "stdio、h" /*函数功能:用迭代法计算n!*/ long Fact (int n) { int i; long result=1; for(i=2;i<=n;i++) { result*=i; } return result; } int main { int m; long ret; printf("Input m:"); scanf("%d",&m); ret=Fact(m); printf("%d!=%ld\n",m,ret); return 0; } 运行结果: 7、2题 #include "stdio、h" long Fact(int n); int main { int m; long ret; printf("Input m:"); scanf("%d",&m); ret=Fact(m); if (ret==1) printf("Input date error!\n"); else printf("%d!=%ld\n",m,ret); return 0; } /*函数功能:用迭代法计算n!当您n>=0时,返回n!得值;否则返回1*/ long Fact(int n) { int i; long result=1; if (n<0) { return1; } else { for (i=2;i<=n;i++) result*=i; return result; } } 运行结果: 7、3题 #include "stdio、h" unsigned long Fact(unsigned int n); int main { int m; do{ printf("Input m(m>0):"); scanf("%d",&m); }while (m<0); /*增加对输入数据得限制,确保输入得数据未无符号整数*/ printf("%d!=%lu\n",m,Fact(m));/*无符号长整形格式输出阶乘值*/ return 0; } /*函数功能:用迭代法计算无符号整型变量n得阶乘*/ unsigned long Fact(unsigned int n) { unsigned int i; unsigned long result=1; for (i=2;i<=n;i++) result*=i; return result; } 运行结果; 4、编程设计教材186页7、7题(1)、(2),并在VCC++环境下运行、 7、7 (1) 穷举法:源程序 #include "stdio、h" int Gcd(int a,int b); /*函数声明*/ int main { int a,b,t; printf("Input two numbers\n:"); scanf("%d,%d",&a,&b); printf("%d\n",Gcd(a,b)); /*调用函数*/ } /*计算量个正整数得最大公约数*/ int Gcd(int a,int b) { int t,c; if(a<b) { c=a; } else { c=b; } for (t=c;;t) /*最大数不会比这两个数得最小值大*/ { a%t==0; b%t==0; if(a%t==0&&b%t==0) return t; } } 在VCC++环境下运行: 运行结果: (2) 欧几里得算法 #include "stdio、h" int Gcd(int a,int b); /*函数声明*/ int main { int a,b; printf("Input two numbers(a>b):"); scanf("%d,%d",&a,&b); do{ printf("Error!\n"); printf("Input two numbers(a>b):"); scanf("%d,%d",&a,&b); }while(a<=0||b<=0||a<b); printf("%d\n",Gcd(a,b)); /*调用函数*/ } /*函数功能:计算量个正整数得最大公约数*/ int Gcd(int a,int b) { int r; int c; r=a%b; if(r==0) return b; else while(r!=0) { c=b; /*保存当前得除数*/ b=r; /*将当前得余数复制给下一次运算得除数*/ a=c; /*将当前得除数福中给下一次运算得被除数*/ r=a%b; /*记录当前得余数*/ } return b; /*输出两数得最大公约数*/ } 在VCC++环境下运行; 实验总结: 通过本节实验课,进一步熟悉了函数得基本用法与功能,初步学会了函数得调用方法,并且掌握了用迭代法编程计算一些简单得实际问题。函数就是程序得基本单元,要学好这门课就要从基本工作做起,学好每一块语言知识,慢慢总结经验,掌握更多得编程技巧。 成绩 批阅老师 批阅日期
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传
相似文档                                   自信AI助手自信AI助手

当前位置:首页 > 教育专区 > 其他

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4009-655-100  投诉/维权电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服