C实验六函数.doc

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C实验六函数

实验六 函数 实验目的 熟练掌握函数的定义和使用方法。 熟练掌握调用函数与被调用函数之间的数据传递。 掌握函数的返回值和类型。 掌握函数的嵌套调用和递归调用。 实验内容 读程序、写结果 ⑴/***** s6-1.c *****/ #includestdio.h main() { void func(int a,int b); int a=2,b=10; func(a,b); printf(a=%d,b=%d\n ,a,b); } void func(int a,int b) { int temp; temp=a; a=b; b=temp; } 上机前分析结果: 实际上机结果(分析原因): ⑵/***** s6-2..c *****/ #includestdio.h int a=1,j=2; main() { void func(); int i=2; func(); printf(a=%d,i=%d,j=%d\n ,a,i,j); } void func() { int n,i=5; printf(a=%d,i=%d\n ,a,--i); i++; a++; if(a4) func(); a--; j+=3; printf(a=%d,j=%d\n ,a,j); } 提示:注意函数递归调用的过程。 上机前分析结果: 实际上机结果: (3)/***** s6-3.c *****/ #includestdio.h int qian1( int x, int y ) { int qian2(int x,int y); int c, s, t ; s=x+y; t=x-y; c=qian2(s, t); return (c); printf(c=%d\n, c); } int qian2( int x , int y ) { return ( x + y ) ; } main() { int a=1, b=2, c ; c=2*qian1(a, b); printf(c = %d\n, c); } 上机前分析结果: 实际上机结果: 2. 完善程序 (1)给定程序中,函数fun的功能是:计算下式前n项的和作为函数值返回。(s6-4.c) /***** s6-4.c*****/ #include stdio.h double fun(int n) { int i, k; double s, t; s=0; k=1; for(i=1; i=n; i++) { t=2*n; s=s+k*(2*i-1)*(2*i+1)/(t*t); k=k*(-1); } return s; } main() { int n=-1; while(n0) { printf(Please input(n0): ); scanf(%d,n); } printf(\nThe result is: %lf\n,fun(n)); } 例如:当行参n的值为10时,函数返回-0.204491。 /***** s6-4.c*****/ #include stdio.h double fun(int n) { int i, k; double s, t; s=0; k=1; for(i=1; i=n; i++) { t=2*n; s=s+k*(2*i-1)*(2*i+1)/(t*t); k=k*(-1); } return s; } main() { int n=-1; while(n0) { printf(Please input(n0): ); scanf(%d,n); } printf(\nThe result is: %lf\n,fun(n)); } (2)以下函数的功能是:求100(不包括100)以内能被2或5整除,但不能同时被2或5整除的自然数。结果保存在数组bb中,函数fun()返回数组bb元素的个数。(s6-5.c) /***** s6-5.c *****/ #include stdio.h #define N 100 int fun(int bb[]) { int i,j; for (j=i=0; i100;i++) if ((i%2!=0i%5==0)||(i%2==0i%5!=0)) bb[j++]=i; return j; } main() { int i,n; int bb[N]; n=fun(bb); for (i=0;in;i++) { if (i%10==0) printf(\n); printf(%4d,bb[i]); } } 改错 (1)以下fun()函数用以判断n是否为素数。fun()函数中有逻辑错。main()函数完成从键盘接收一个整数,再以该数为参数调用fun()函数,修改fun()函数

文档评论(0)

qwd513620855 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档