《C语言程序设计》实验报告----------------------------------------------------------------------------------------------(1)掌握定义函数的方法(2)掌握函数实参与形参的对应关系以及“值传递”“地址传递”的方式(3)掌握函数的嵌套调用和递归调用的方法(4)掌握全局变量和局部变量、动态变量、(1)下面程序的功能是计算Cmn=m!/n!*(m-n)!的值。#include<>longintjf(intn){inti;longintt=1; for(i=1;i<=n;i++) t*=i; return(t);}longintcmn(intm,intn){return(jf(m)/(jf(n)*jf(m-n)));}intmain(){intm,n; printf("pleaseentermandn:"); scanf("%d,%d",&m,&n); printf("%d",cmn(m,n)); return0;}反思与总结:注意调用函数cmn(m,n)的格式!这里的m,n指的是作为实参的m,n(2)程序用于求两个正整数m,n之间的非素数之和(包括m和n)#include<>#include<>intprime(intm){inti,k,j;k=sqrt(m); for(j=2;j<=k;j++) if(m%j==0)break; if(j<=k)return0; elsereturn1;}intmain(){intm=2,n=20,i,j,k,s;s=0; for(i=m;i<=n;i++) if(prime(i)==0)s+=i; printf("Sumis:%d\n",s); return0;}(3)程序用于求一维数组a中既不能被3整除也不能被5整除的元素之和。#include<>#include<>intfun(intarr[],intn){inti;ints=0; for(i=0;i<n;i++) if(arr[i]%3!=0&&arr[i]%5!=0) s+=arr[i]; return(s);}intmain(){inta[12]={1,8,5,10,6,18,7,2,4,12,9,11};printf("Theresultis:%ld\n",fun(a,12)); return0;}反思与总结:定义函数时,形参的类型不能省略!调用函数时,形参变实参,类型也省略,如果形参是数组,那么写实参只需写出数组名就可以([]不能写!)。(1)上机调试下面的程序,记录系统给出的出错信息,并指出出错原因。intmain(){intx,y;scanf("%d%d",&x,&y);printf("%d\n",sum(x,y)); return0;}intsum(inta,intb){return(a+b);}(2)给定程序的功能是求一维数组a中值为偶数的元素之和。#include<>sum(intarr[],intn){inti,s;s=0; for(i=0;i<n;i++) if(arr[i]%2==0)
实验8函数 来自淘豆网m.daumloan.com转载请标明出处.