?? 例10.24.txt
字號:
例10.24設一個函數process,在調用它的時候,每次實現不同的功能。輸入a和B兩個數,第一次調用process時找出a和b中大者,第二次找出其中小者,第三次求a與b之和。
程序如下:
main()
{int max(int,int); /* 函數聲明 */
int min(int,int); /* 函數聲明 */
int add(int,int); /* 函數聲明 */
int a,b;
printf("enter a and b:");
scanf("%d,%d",&a,&b);
printf("max=");
process(a,b,max);
printf("min=");
process(a,b,min);
printf("sum=");
process(a,b,add);
}
max(int x,int y) /* 函數定義 */
{int Z;
if(x>y)Z=x;
else Z=y;
return(Z);
}
min(int x,int y) /* 函數定義 */
{int Z;
if(x<y)Z=x;
else Z=y;
return(Z);
}
add(int x,int y) /* 函數定義 */
{int Z;
Z=x+y;
return(Z);
}
process(int x,int y,int (*fun)(int,int)) /* 函數定義。int (*fun)(int,int) 表示fun是指向函數的指針,該函數是一個整型函數,有兩個整型形參*/
{int reSult;
reSult=(*fun)(x,y);
printf("%D\n",reSult);
}
運行情況如下:
enter a and B:2,6
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -