语言实验指导3用函数进行程序设计.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
语言实验指导3用函数进行程序设计.doc

软工2010级2班 mao SWU 实验环境 Windows, Visual C++ 实验目录 第3周 实验一:C语言编程基础 3 验证 必做 任务h运行环境 任务2:数据类型 任务3:结构化程序设计 第4周 实验二:用数组编程 3 验证 必做 第5周 实验用函数进行程序设计 3 验证 必做 第6周 实验四:用指针编程 3 设计 必做 第7周 实验五:结构体编程 3 设计 必做 第8周 实验六:文件操作 3 设计 必做 实验三用函数进行程序设计 实验目的 1、 掌握C语言函数定义及调用的规则,理解参数传递的过程。 2、 掌握函数嵌套调用过程及递归调用过程。 3、 理解数组元素作参数和数组名作参数的不同。 4、 编程验证全局变量、局部变量,动态变量、静态变量。 实验内容 1、编程验证基本的函数定义和调用 下面的程序,在主函数main中输入2个整数,并传给函数max。函数max返回最大值。 #include stdio. h int max(int x, int y) { /*本函数返回x和y中的最大值*/ int z; if(xy) z=x; else z=y; return z; B main() { int a, b; printf (请输入a和b,用空格分幵:\n); scanf (%d %d〃,a,b); printf (〃最大值是%d\n〃, max (a, b)); 2、编程验证函数嵌套调用的执行过程 执行下凹的程序,分析嵌套调用的过程。再分析一下,如果没有函数声明,编译时有何问题。 #includestdio.h void f 1 (void) ;/*这3行是函数声明*/ void f2 (void); void f3(void); void f 1 () { printf(T am fl\n); f2(); } vo i d f2 () { | f3(); printfC’I am f2\n); a void f3 () { printfCl am f3\n〃); main() { fl(); f2 (): 3、编程验证函数的递归调用过程 #include stdio. h int f (int a[], int n) { if(n=l) { printf (〃要计算 f (a, %d),先计算 f (a, %d) \n〃, n,n-1); return f(a, n-l)+a[n-l]; } else return 0; a main() { int aa[5] = {l, 2, 3, 4, 5},sum; sum=f (aa, 5); printf (〃数组aa[5]中5个元素的总和是%d\n, sum); 4、编程验证数组元素及数组名作参数有何不同 数组元素作参数以及数组名作参数 (1)把数组元素作参数。 下面的程序,main函数中有数组a[6]。其中a[0]~a[4]这5个元素赋了初值。要获得其中 最大值,放到元素a[5]中。 ^include stdio. h int max (int xO, int xl, int x2, int x3, int x4) {/*获得 5 个变量的最大值*/ int i, m, b[5]; m=b[0]=x0;b[l]=xl;b[2]=x2;b[3]=x3;b[4]=x4; for(i=l;i〈5;i++) if(b[i]〉m) m=b[i]; return m; a main() { int m,a[6] = {23,45,89, 12,34};/*a[5]没有赋初值,系统自动初始化为0*/ a[5]=max(a[0],a[l],a[2], a[3],a[4]) ;/*将 a[0]?a[4]的最大值放到已[5]中*/ printf (数组a的最大值已经放到a[5]中,值是%d\n〃, a[5]); (2)把数组名作参数。 #include〈stdio.h〉 void max(int b口,int n) {/*获得数组b□中的前n个元素的最大值,放到b[n]中*/ int i, m; m=b[0]; for(i=l;i5;i++) if(b[i]〉m) m=b[i]; b[n]=m;/*修改了 b[5],实际上就修改了 a[5]*/ a main() { int m,a[6] = {23,45,89, 12,34};/*a[5]没有赋初值,系统自动初始化为0*/ max (a, 5) ;/*将a□中前5个元素的最大值放到8[5]中*/ printf (数组a的最大值己经放至!) a[5]屮,值是%d\n,a[5]); 5、编程验证全局变量、局部变量,动态变量、静态变量。 下面的程序,main屮是个循环,每次输入a和b的值,输出这是第儿次,并输出最大 值。max函数中有

文档评论(0)

ggkkppp + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档