2022年实验五函数与编译预处理定义 .pdf
《2022年实验五函数与编译预处理定义 .pdf》由会员分享,可在线阅读,更多相关《2022年实验五函数与编译预处理定义 .pdf(10页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、实验五函数与编译预处理实验课程名:高级语言程序设计(C)专业班级:学号:姓名:实验时间:实验地点:指导教师:一、实验目的和要求1. 掌握定义函数的方法。2. 掌握函数实参与形参的对应关系以及“ 值传递 ” 的方法。3. 掌握函数的嵌套调用和递归调用的方法。4. 掌握全局变量和局部变量,动态变量、静态变量的概念和使用方法。二、实验内容1、任务名称 : 阅读 c60101.c 程序,通过调试该程序,熟悉函数的调用方法及单步跟踪键F7和 F8 的不同。源代码:#include void main() void fun(int i, int j, int k); int x,y,z; x=y=z=6;
2、 fun(x,y,z); printf(%x=%d;y=%d;z=%dn,x,y,z); void fun(int i, int j, int k) int t; t=(i+j+k)*2; printf(t=%dn,t); 运行结果:(需要截图)运行结果分析:对于实参,在调用函数中对其进行定义时,不仅指明它的类型,而且系统还为其分配存储单元2、任务名称阅读 c60102.c 程序,注意在调试时F11 和 F10 的区别,还要注意函数调用过程中形参、实参的关系。源代码: #include void main() int x=10,y=20; void swap (int ,int); print
3、f(1)in main :x=%d,y=%dn,x,y); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 10 页 - - - - - - - - - swap(x,y); printf(4)in main :x=%d,y=%dn,x,y); void swap (int m,int n) int temp; printf(2)in main :m=%d,n=%dn,m,n); temp=m;m=n;n=temp; printf(3)in main :m=%d,n=%d
4、n,m,n); 运行结果:(需要截图)运行结果分析:形参具有“用之则建,用完则撤”的特点3、任务名称 : 程序 c60103.c 是实现求素数的,请填空完成该程序,并上机运行测试。源代码: #include #include void main() int m; void prime(int); printf(Please input a data m=:); scanf(%d,&m); prime(m); printf(n); void prime(int n) int i,k; k=sqrt(n); for(i=2;i=k+1) printf(This is a prime number)
5、; else printf(This isnt a prime number); 运行结果:(需要截图)运行结果分析:素数函数4、任务名称 : 程序 c60104.c 的功能是从键盘上输入的若干个数并求出最大值。请填空完成该程序。源代码: #include 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 10 页 - - - - - - - - - void main( ) int i; int s10, max; int Findmax( int x, int n );
6、 printf(Input 10 number : n); for(i=0;i10;i+) scanf(%d,&si); max=Findmax(s,10); for (i=0;i10; i+) printf(%4d, si); printf(nthe max is %dn ,max); int Findmax( int x , int n ) int max,i; max=x0; for ( i=1; in; i+) if(maxxi) max=xi; return max; 运行结果:(需要截图)运行结果分析:练习形参是数组的函数申明、调用格式;复习数组的输入方法5、任务名称 : 程序 c
7、60105.c 的功能是从键盘上输入的若干个数按升序排序。请调试检查该程序中的错误,程序如下:源代码: #include void main( ) int i , k; void sort(int x,int n); float s100, j ; printf( Input number : n); for (i=0; scanf(%f,&j); i+) si=j; sort(s, i); for (k=0; ki; k+) printf( %f, sk); printf(n); void sort( int x, int n ) int i, j, temp,min; for ( i=0;
8、 in-1; i+) 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 10 页 - - - - - - - - - min=i; for(j=i+1;jn;j+) if ( xj xmin) min=j; if(min!=i) temp=xi; xi=xmin; xmin=temp; 运行结果:(需要截图)运行结果分析:一般形参数组在说明时不指定数组的长度,而仅给出类型、 数组名和一对方括号6、任务名称 : 编写程序,实现由主函数输入m 、n,按下述公式计算并输出nmC的
9、值。)!(!nmnmCnm源代码: #include void main( ) float fac(int n); int n,m; float C; printf( 输出两个整数: ); scanf(%d,%d,&n,&m); if(mn) C=fac(m)/(fac(n)*fac(m-n); printf(C=%f,C); else printf( 数据错误 ); printf(n); float fac(int n) float f; if(n0) printf(n0, 错误); else if (n=0|n=1) 名师资料总结 - - -精品资料欢迎下载 - - - - - - - -
10、 - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 10 页 - - - - - - - - - f=1; else f=fac(n-1)*n; return(f); 运行结果:(需要截图)运行结果分析:主函数中调用三次即可求得7、任务名称 : 阅读如下递归程序c60107.c,其功能是什么?上机调试。源代码: #include void main( ) int m, k; void dtoo( int n ,int r ); printf(Pleae input the decimal number:); scanf(%d,&m); print
11、f( nPlease input a number in (2,8,16):); scanf(%d,&k); dtoo(m,k); void dtoo( int n ,int r ) if(n=r) dtoo(n/r,r); printf(%dn,n%r); 运行结果:(需要截图)运行结果分析:求余8、任务名称 : 预习 c60201.c 程序,写出预习结果,上机验证并写出分析源代码: # define LOW 10 # define HIGH 5 # define CHANGE 2 int i = LOW ; #include void main( ) int workover ( int
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年实验五函数与编译预处理定义 2022 实验 函数 编译 预处理 定义
限制150内