C语言设一个函数process,调用它时,实现不同功能。

C语言设一个函数process,调用它时,实现不同功能。


2023年12月9日发(作者:1156针cpu有哪些)

C语言设一个函数process,调用它时,实现不同功能。

输入a, b,第一次调用process找最大值,第二次调用process找最小值,第三次调用求和。

方法1:

1 #include

2 //求最大

3 int max(int x,int y){

4 return x>y?x:y;

5 }

6 //求最小

7 int min(int x,int y){

8 return x

9 }

10 //求和

11 int add(int x,int y){

12 return x+y;

13 }

14 //类似多态

15 void process(int x,int y,int (*fun)){

16 int z;

17 if(fun==max)

18 z=max(x,y);

19 if(fun==min)

20 z=min(x,y);

21 if(fun==add)

22 z=add(x,y);

23 printf("%dn",z);

24 }

25

26 void main(){

27 int a,b;

28 printf("Please input a and b:n");

29 scanf("%d %d", &a, &b);

30 printf("max=");

31 process(a,b,max);

32 printf("min=");

33 process(a,b,min);

34 printf("sum=");

35 process(a,b,add);

36 }

方法2:

1 #include

2 //求最大

3 int max(int x,int y){

4 return x>y?x:y;

5 }

6 //求最小

7 int min(int x,int y){

8 return x

9 }

10 //求和

11 int add(int x,int y){

12 return x+y;

13 }

14

15 void main(){

16 int a,b;

17 int (*process)(int, int);

18

19 printf("Please input a and b:n");

20 scanf("%d %d", &a, &b);

21

22 process=max;

23 printf("max=%dn",process(a,b));

24

25 process=min;

26 printf("min=%dn",process(a,b));

27

28 process=add;

29 printf("sum=%dn",process(a,b));

30 }

结果为:


发布者:admin,转转请注明出处:http://www.yc00.com/num/1702076063a1173290.html

相关推荐

发表回复

评论列表(0条)

  • 暂无评论

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信