c语言函数与程序结构实验

上传人:第*** 文档编号:32684292 上传时间:2018-02-12 格式:DOC 页数:6 大小:50KB
返回 下载 相关 举报
c语言函数与程序结构实验_第1页
第1页 / 共6页
c语言函数与程序结构实验_第2页
第2页 / 共6页
c语言函数与程序结构实验_第3页
第3页 / 共6页
c语言函数与程序结构实验_第4页
第4页 / 共6页
c语言函数与程序结构实验_第5页
第5页 / 共6页
点击查看更多>>
资源描述

《c语言函数与程序结构实验》由会员分享,可在线阅读,更多相关《c语言函数与程序结构实验(6页珍藏版)》请在金锄头文库上搜索。

1、 C 语言程序设计实验报告专业:计算机科学与技术 班级:ACM 班日期:2011 年 12 月 15 日成绩 实验组别 6 第 次实验 4 指导老师: 卢萍 学生姓名: 陈绍鹏 学号: U201114349 同组人姓名: 实验名称: 函数与程序结构实验 一、 实验目的(1 ) 熟悉掌握函数的定义、声明,函数调用与参数传递方法,以及,函数返回值类型的定义和返回值使用。(2 ) 熟悉和掌握不同存储类型变量的使用。(3 ) 熟悉多文件编译技术。二、 实验内容1. 源程序改错下面是计算 s=1!+2!+3!+n!的源程序。要求:在计算机上对这个源程序进行调试修改,使之能够正确完成指定任务。2. 源程序

2、修改替换(1 ) 修改上述源程序中的 sum_fac 函数,使其计算量最小。(2 ) 修改上述源程序中的 sum_fac 函数,计算s=1+1/2!+1/3!+1/n!3. 跟踪调试下面是计算 fabonacci 数列前 n 项和的源程序,现要求单步执行该程序,并观察 p,i,sum,n 值。(1 ) 刚执行完”scanf(“%d”,”语句时,p,i 值是多少?(2 ) 从 fabonacci 函数返回后,光条停留在哪个语句上?(3 ) 进入 fabonacci 函数时,watch 窗口显示的是什么?(4 ) 当 i=3 时,从调用 fabonacci 函数到返回,n 值如何变化?4. 程序设

3、计编写并上机调试运行实现以下功能的程序:(1 ) 编写一个程序,让用户输入两个整数,计算两个数的最大公约数并输出之。要求用递归函数实现求最大公约数,同时以单步执行方式执行改程序,观察其递归过程。(2 ) 编写一个程序,验证歌德巴赫猜想:一个大于等于 4 的偶数都是两个素数之和。(3 ) 编写一个程序,证明对于在符号常量 BEGIN 和 END 之间的偶数这一猜测成立。例如,如果 BEGIN 为 10,END 为 20,则程序的输出应为:GOLDBACHS CONJECTURE:Every even number n=4 is the sum of two primes.10=3+712=5+7

4、20=3+175. 选做题假设一个程序由 file1.c 和 file2.c 两个源文件及一个 file.h 头文件组成,试编辑该多文件 c 程序,并编译和链接,然后运行生成可执行文件。三、 实验步骤及结果1. 正确源程序:#includeint main()int k;long sum_fac(int);for(k=1;kint main()int k;long sum_fac(int);for(k=1;k1;n-)s=(s+1)*(n-1);return s;输出结果为:k=1 the sum is 1k=2 the sum is 3k=3 the sum is 9k=4 the sum

5、is 33k=5 the sum is 153k=6 the sum is 873Press any key to continue(2) 正确源程序:#includefloat main()int k;float sum_fac(int);for(k=1;kvoid main()int m,n,t,r;printf(输入两个正整数:);scanf(%d,%d,if(nlong pri(long k);void main()long x,m;int found=0;printf(输入大于等于 4 的偶数 x:);scanf(%ld,for(m=2;m#define BEGIN 10#defin

6、e END 20int pri(int k);void main()int i,n,found;printf(GOLDBACHS CONJECTURE:n);printf(Every even number n=4 is the sum of two primes.n);for(n=(BEGIN+1)/2*2;n=4 is the sum of two primes.10=3+712=5+714=3+1116=3+1318=5+13Press any key to continue5.文件为file1.c#includefile.hint x,y;char ch;int main(void)x

7、=10;y=20;ch=getchar();printf(in file1 x=%d,y=%d,ch is %cn,x,y,ch);func1();return 0;file2.c#includefile.hvoid func1(void)x+;y+;ch+;printf(in file2 x=%d,y=%d,ch is %cn,x,y,ch);file.h#includeextern int x,y;extern char ch;void func1(void);输出为:yin file1 x=10,y=20,ch is yin file2 x=11,y=21,ch is zPress any key to continue四、 实验体会本次实验收获颇丰:1;源程序改错,使我更加熟悉了一些基础的算法,和函数的调用方法。2:源程序修改替换,更加让我获益匪浅,使我明白了算法可以变得更简洁,并且怎样设计可以使程序的计算量最小。我认为这很好的锻炼了我的思维。3:跟踪调试,更是让我学会了怎样使用单步执行,以前一直不是很会用,不过做了此题之后,我深刻的了解了单步执行的使用方法。4:程序设计,这 3 道题锻炼了我的程序设计能力,使我掌握了一些基本程序的设计思路,程序设计成功后,颇有成就感。5,6 :多文件编辑,让我更好的掌握了 vc 的用法和工程的建立,多文件的编译和链接,等等。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 中学教育 > 职业教育

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号