C语言 设一个函数process,调用它时,实现不同功能。
//凯鲁嘎吉 - 安科网http://www.cnblogs.com/kailugaji/
输入a, b,第一次调用process找最大值,第二次调用process找最小值,第三次调用求和。
方法1:
#include<stdio.h> //求最大 int max(int x,int y){ return x>y?x:y; } //求最小 int min(int x,int y){ return x<y?x:y; } //求和 int add(int x,int y){ return x+y; } //类似多态 void process(int x,int y,int (*fun)){ int z; if(fun==max) z=max(x,y); if(fun==min) z=min(x,y); if(fun==add) z=add(x,y); printf("%d\n",z); } void main(){ int a,b; printf("Please input a and b:\n"); scanf("%d %d", &a, &b); printf("max="); process(a,b,max); printf("min="); process(a,b,min); printf("sum="); process(a,b,add); }
方法2:
#include<stdio.h> //求最大 int max(int x,int y){ return x>y?x:y; } //求最小 int min(int x,int y){ return x<y?x:y; } //求和 int add(int x,int y){ return x+y; } void main(){ int a,b; int (*process)(int, int); printf("Please input a and b:\n"); scanf("%d %d", &a, &b); process=max; printf("max=%d\n",process(a,b)); process=min; printf("min=%d\n",process(a,b)); process=add; printf("sum=%d\n",process(a,b)); }
结果为:
相关推荐
penkgao 2020-10-13
penkgao 2020-06-25
lsfreeing 2020-06-20
Biao 2020-06-17
yunfeitian 2020-06-13
AaronPlay 2020-06-13
chensen 2020-11-14
拉斯厄尔高福 2020-11-04
杜倩 2020-10-29
拉斯厄尔高福 2020-10-19
嵌入式资讯精选 2020-10-15
zhaochen00 2020-10-13
yiyilanmei 2020-10-05
wanshiyingg 2020-09-29
Mars的自语 2020-09-27
shenwenjie 2020-09-24
一个逗逗 2020-09-22
flycony 2020-09-13
zhaochen00 2020-08-20