有两个整数a和b,由用户输入1,2,3。如输入1,那么输出最大值,如输入2那么输出最小值,输入3那么输出相加的值。
#include<stdio.h>
#include<math.h>
void main(){
//可变格式输出函数
char *format;
int a=10,b=3,c;
//普通方法调用函数
int max(int x,int y);
int min(int x,int y);
int sum(int x,int y);
printf("输入:1.最大值\t2.最小值\t3.合计\n");
int k;
scanf("%d",&k);
int func(int x,int y,int (*p)(int a,int b));
if(k==1){
c=func(a,b,max);
}else if(k==2){
c=func(a,b,min);
}else{
c=func(a,b,sum);
}
printf("%d ",c);
}
int func(int x,int y,int (*p)(int a,int b)){
return (*p)(x,y);
}
int max(int x,int y){
return x>y?x:y;
}
int min(int x,int y){
int z;
if(x>y){
z=y;
}else{
z=x;
}
return z;
}
int sum(int x,int y){
int z;
z=x+y;
return z;
}