指向函数的指针

指向函数的指针 #include  " stdio.h "
指向函数的指针#include 
" conio.h "
指向函数的指针
#define  M 8
指向函数的指针
float  max( float  a[], int  n);     /*函数声明*/
指向函数的指针
void  main()
指向函数的指针
{
指向函数的指针  clrscr();
指向函数的指针  
float sumf,sump;
指向函数的指针  
float a[M]={11,2,-3,4.5,5,69,7,80};
指向函数的指针  
float (*p)(float a[],int);   /*定义指向函数的指针 p*/
指向函数的指针  p
=max;                       /*函数名(函数入口地址)赋给指针p*/
指向函数的指针  sump
=(*p)(a,M);              /*用指针方式调用函数*/
指向函数的指针  sumf
=max(a,M);               /*用函数名调用max()函数*/
指向函数的指针  printf(
"sump=%.2f\n",sump);
指向函数的指针  printf(
"sumf=%.2f\n",sumf);
指向函数的指针}

指向函数的指针
指向函数的指针
float  max( float  a[], int  n)
指向函数的指针
{
指向函数的指针  
int k;
指向函数的指针  
float s;
指向函数的指针  s
=a[0];
指向函数的指针  
for(k=0;k<n;k++)
指向函数的指针    
if(s<a[k]) s=a[k];
指向函数的指针  
return s;
指向函数的指针}

在主函数中输入三角形的两条直角边,求三角形的面积、斜边长

指向函数的指针 #include  " stdio.h "
指向函数的指针#include 
" conio.h "
指向函数的指针#include 
" math.h "
指向函数的指针
float  area( int , int );
指向函数的指针
float  length( int , int );
指向函数的指针
float  f( int , int , float  ( * p)( int , int ));
指向函数的指针
void  main()
指向函数的指针
{
指向函数的指针  clrscr();
指向函数的指针  
int m,n;
指向函数的指针  
float s,l;
指向函数的指针  
float (*q)(int,int);
指向函数的指针  scanf(
"%d,%d",&m,&n);
指向函数的指针  q
=area;
指向函数的指针  s
=f(m,n,q);
指向函数的指针  l
=f(m,n,length);
指向函数的指针  printf(
"Area of the right triangle is %.2f\n",s);
指向函数的指针  printf(
"Length of the hypotenuse is %.2f\n",l);
指向函数的指针}

指向函数的指针
指向函数的指针
float  area( int  a, int  b)
指向函数的指针
{
指向函数的指针  
float z;
指向函数的指针  z
=a*b/2;
指向函数的指针  
return z;
指向函数的指针}

指向函数的指针
指向函数的指针
float  length( int  a, int  b)
指向函数的指针
{
指向函数的指针  
float z;
指向函数的指针  z
=sqrt(a*a+b*b);
指向函数的指针  
return z;
指向函数的指针}

指向函数的指针
指向函数的指针
float  f( int  a, int  b, float  ( * p)( int , int ))
指向函数的指针
{
指向函数的指针  
float y;
指向函数的指针  y
=(*p)(a,b);
指向函数的指针  
return y;
指向函数的指针}

你可能感兴趣的:(函数)