改了一下,问题解决了,但是到现在都不知道原因是什么,先贴上来看看,希望以后能明白
原代码:
#include<stdio.h>
int main(){
int max(int,int);
int a,b,c;
int (*p)(int,int);
p=max;
printf("please enter a and b:");
scanf("%d%d",&a,&b);
c=(*p)(a,b);
printf("a=%d\n,b=%d\nmax=%d\n",a,b,c);
return 0;
}
int max(int x,int y){
int z;
if(x>y) z=x;
else z=y;
return z;
}
修改后:
#include<stdio.h>
int main(){
int max(int,int);
int a,b,c;
int (*p)(int,int);
p=max;
// printf("please enter a and b:");
scanf("%d%d",&a,&b);
c=(*p)(a,b);
printf("a=%d\n,b=%d\nmax=%d\n",a,b,c);
return 0;
}
int max(int x,int y){
int z;
if(x>y) z=x;
else z=y;
return z;
}