c语言数组实验报告湖北理工学院,湖北理工学院c语言实验报告实验五

41528d3028836879cd698677c3999917.gif湖北理工学院c语言实验报告实验五

实验五 函数与编译预处理 实验课程名:高级语言 程序设计 专业班级: 软件工程 学号: 姓名: 高敏 实验时间: 11.25-12.2 实验地点: K4-208 指导教师: 刘天印 一、实验目的和要求 1. 掌握函数定义的方法; 2. 掌握函数实参与形参的对应关系以及“值传递”的方式; 3. 掌握函数的嵌调用和递归调用的方法; 4. 掌握全局变量和局部变量动态变量、静态变量的概念和使用方法。 5. 学习对多文件程序的编译和运行。 二、实验内容 1. 阅读下面程序,通过调试该程序,熟悉函数的调用方法及单步跟踪键 F7 和 F8 的不同。 #include void main() { void fun(int i, int j, int k);int x,y,z;x=y=z=6;fun(x,y,z);printf(“%x=%d;y=%d;z=%d\n“,x,y,z); } void fun(int i, int j, int k) { int t;t=(i+j+k)*2;printf(“t=%d\n“,t); } 解答: (1)源代码 #include void main() { void fun(int i, int j, int k);int x,y,z;x=y=z=6;fun(x,y,z);printf(“%x=%d;y=%d;z=%d\n“,x,y,z); } void fun(int i, int j, int k){ int t;t=(i+j+k)*2;printf(“t=%d\n“,t); } (2)运行结果: (3)运行结果分析:f7 是持行调试 f8 是选择调试的语句 2. 阅读下面程序,注意在调试时 F11 和 F10 的区别,还要注意函数调用过程中形参、实参的 关系。 #include void main(){ int x=10,y=20; void swap (int ,int); printf(“(1)in main :x=%d,y=%d\n“,x,y); swap(x,y); printf(“(4)in main :x=%d,y=%d\n“,x,y);} void swap (int m,int n){ int temp; printf(“(2)in main :m=%d,n=%d\n“,m,n); temp=m;m=n;n=temp; printf(“(3)in main :m=%d,n=%d\n“,m,n); } 解答: (1)源代码: #include void main(){ int x=10,y=20; void swap (int ,int); printf(“(1)in main :x=%d,y=%d\n“,x,y); swap(x,y); printf(“(4)in main :x=%d,y=%d\n“,x,y); } void swap (int m,int n){ int temp; printf(“(2)in main :m=%d,n=%d\n“,m,n); temp=m;m=n;n=temp; printf(“(3)in main :m=%d,n=%d\n“,m,n); } (2)运行结果:(3)运行结果分析: 3. 下面程序是实现求素数的,请填空完成该程序,并上机运行测试。 #include #include void main(){ int m;; /* 申明求素数函数 */ printf(“Please a data m=:“); scanf(“%d“,; /* 调用求素数函数 */} void prime(int n){ int i,k;k=sqrt(n);for(i=2;i=k+1) printf(“This is a prime number“); else printf(“This isn’t a prime number“); } 解答: (1)源代码: #include #include void main(){ int m;void prime(int n); /* 申明求素数函数 */ printf(“Please a data m=:“); scanf(“%d“,prime(m); /* 调用求素数函数 */} void prime(int n){ int i,k;k=sqrt(n);for(i=2;i=k+1) printf(“This is a prime number“); else printf(“This isn t a prime number“); } (2)运行结果: (3)运行结果分析: 4. 下面程序的功能是从键盘上输入的若干个数并求出最大值。请填空完成该程序。 #include void main( ) { int i; int s[10], max;/* Findmax()函数的申明 */; printf(“ 10 number : \n“); /* 输入 10个数据到 s 数组中 */; /* 调用 Findmax 函数 */; for (i=0;i void main( ) { int i; int s[10], max; /* Findmax()函数的申明 */int Findmax( int x[ ], int n ); printf(“ 10 number : \n“); /* 输入 10 个数据到 s 数组中 */for(i=0;i<10;i++)scanf(“%d“, /* 调用 Findmax 函数 */max=Findmax(s,10); for (i=0;i<10; i++) printf(“%4d“, s[i]); printf(“the max is %d \n“,max); } int Findmax( int x[ ], int n ) { int max,i;max=x[0];for ( i=1; i

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值