因为max和min函数形式一样,又因为要调用两个函数,所以用指向函数的指针会更加好用,由1和2来选择
#include<stdio.h>
int main(void)
{
int max(int,int);
int min(int,int);
int(*p)(int,int);
int a,b,c,e;
printf("输入两个整数:\n");
scanf("%d%d",&b,&c);
printf("输入1或2:\n");
scanf("%d",&a);
if(a==1)
{
p=max;//指向max函数的入口地址
}
else if(a==2)
{
p=min;//指向min函数的入口地址
}
e=(*p)(b,c);//调用p指向的函数
printf("b=%d\tc=%d\t",b,c);
if(a==1)
{
printf("max=%d\t\n",e);
}
else printf("min=%d\t\n",e);
return 0;
}
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 z;
if(x<y)
{
z=x;
}
else z=y;
return z;
}