| 
 | 
 
 
发表于 2014-4-24 12:01:30
|
显示全部楼层
 
 
 
- /******
 
 -  设一个函数PROCESS,在调用它的时候,每次实现不同的功能
 
 -  输入A和B,第一次调用PROCESS时找出大的,
 
 -  第二次找出小的,第三次求和
 
 -  ********/
 
 -  #include <stdio.h>
 
 -  void main()
 
 -  {
 
 -      int max(int, int);
 
 -      int min(int, int);
 
 -      int add(int, int);
 
 -  
 
 -     void process(int x, int y, int(*fun)());
 
 -  
 
 -     int a, b;
 
 -      printf("enter a and b: ");
 
 -      scanf("%d %d", &a, &b);
 
 -  
 
 -     printf("max = ");
 
 -      process(a, b, max);
 
 -  
 
 -     printf("min = ");
 
 -      process(a, b, min);
 
 -  
 
 -     printf("sum = ");
 
 -      process(a, b, add);
 
 -  }
 
 -  int max(int x, int y)
 
 -  {
 
 -      int z;
 
 -  
 
 -     if(x > y)
 
 -      {
 
 -          z = x;
 
 -      }
 
 -      else
 
 -      {
 
 -          z = y;
 
 -      }
 
 -      return z;
 
 -  }
 
 -  int min(int x, int y)
 
 -  {
 
 -      int n = x;
 
 -      if( x>y )
 
 -      {
 
 -          n = y;
 
 -      }
 
 -      return n;
 
 -  }
 
 -  int add(int x, int y)
 
 -  {
 
 -      int sum;
 
 -      sum = x + y;
 
 -      return sum;
 
 -  }
 
  
-  //加上这个行数定义
 
 -  void process(int x, int y, int(*fun)())
 
 -  {
 
 -          printf("%d\n",((int(*)(int,int))fun)(x,y));
 
 -  }
 
 -  
 
  复制代码 |   
 
 
 
 |