如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
实验十三C函数的基本操作目的要求:掌握函数概念及函数的定义与调用。掌握函数实参与形参的对应关系。实验内容:1.定义一个函数,求200~500之间满足“用4除余1,用5除余3,用7除余4”的数,且一行打印6个。#include<stdio.h>intfun(int);main(){intx,i;for(x=200;x<=500;x++){if(fun(x)){printf("%d",x);i++;}if(i%6==0)printf("\n");}}intfun(inta){if(a%4==1&&a%5==3&&a%7==4)return1;return0;}2.编写函数isprime(),用来判断一个整形数a是否为素数,若是素数,函数返回1,否则返回0。#include<stdio.h>intisprime(int);main(){intx;printf("输入");scanf("%d",&x);if(isprime(x))printf("%d是素数\n",x);elseprintf("%d不是素数\n",x);}intisprime(inta){inti;for(i=2;i<=a/2;i++)if(a%i==0)return0;return1;}3.在主函数main()中已有变量定义和函数调用语句:“inta=1,b=-5,c;c=fun(a,,b)”;fun函数的作用是计算两个数之差的绝对值,并将差值返回调用函数。请你:(1)编写fun函数。fun(intx,inty){}(2)写出这个主函数main()#include<stdio.h>fun(intx,inty){intk,w;k=(x-y);w=(k>=0)?k:-k;returnw;}main(){inta=1,b=-5,c;c=fun(a,b);printf("%d\n",c);}4.用函数调用重新实现实验7。即:编写函数求一个整数是否为水仙花数,并编写主程序调用该函数求出所有的水仙花数。#include<stdio.h>fun(intx){inta,b,c;for(x=100;x<1000;x++){a=(x/100)%10;b=(x/10)%10;c=x%10;if(x==a*a*a+b*b*b+c*c*c)printf("水仙花=%d\n",x);}}main(){inty;fun(y);}5.用迭代法求。迭代公式为:迭代到为止,为方程的近似解。#include<stdio.h>#include<math.h>doublefun(){floatx0,x1,a;printf("输入\n");scanf("%f",&a);x0=a/3;x1=2*x0/3+a/(3*x0*x0);do{x0=x1;x1=2*x0/3+a/(3*x0*x0);}while(fabs(x0-x1)>1e-5);returnx1;}main(){floata;printf("x=%.4f\n",fun(a));}6.以下函数p的功能是用递归方法计算x的n阶勒让德多项式的值。已有调用语句p(n,x);请编写p函数。递归公式如下:floatp(intn,intx){}#include<stdio.h>floatfun(intn,intx){if(n==0)return1;if(n==1)returnx;if(n>1)return((2*n-1)*x*fun(n-1,x)-(n-1)*fun(n,x)-2*x/n);}main(){floatk;inta,b;scanf("%d,%d",&a,&b);k=fun(a,b);printf("k=%f\n",k);}