例10.24.txt

来自「C语言课件,清华大学出版的书的配套的.很好用,尽管下载.」· 文本 代码 · 共 40 行

TXT
40
字号
例10.24设一个函数process,在调用它的时候,每次实现不同的功能。输入a和B两个数,第一次调用process时找出a和b中大者,第二次找出其中小者,第三次求a与b之和。
  程序如下:
main()
     {int max(int,int);  /* 函数声明 */
         int min(int,int);              /* 函数声明 */
         int add(int,int);              /* 函数声明 */
      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);
           }
      max(int x,int y)           /* 函数定义 */
    {int Z;
      if(x>y)Z=x;
      else Z=y;
      return(Z);
    }
      min(int x,int y)          /* 函数定义 */
    {int Z;
     if(x<y)Z=x;
     else Z=y;
     return(Z);
   }
    add(int x,int y)           /* 函数定义 */
   {int Z;
     Z=x+y;
       return(Z);
   }
    process(int x,int y,int (*fun)(int,int)) /* 函数定义。int (*fun)(int,int) 表示fun是指向函数的指针,该函数是一个整型函数,有两个整型形参*/
   {int reSult;
      reSult=(*fun)(x,y);
      printf("%D\n",reSult);
     }
 运行情况如下:
enter a and B:2,6

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?