#includestdio.h
創(chuàng)新互聯(lián)是一家專注于網(wǎng)站設計制作、做網(wǎng)站與策劃設計,寶安網(wǎng)站建設哪家好?創(chuàng)新互聯(lián)做網(wǎng)站,專注于網(wǎng)站建設10余年,網(wǎng)設計領域的專業(yè)建站公司;建站業(yè)務涵蓋:寶安等地區(qū)。寶安做網(wǎng)站價格咨詢:18982081108
#includemath.h
#define PI 3.1415
void sx()/*計算扇形面積及周長*/
{ float r,j,S,C;
do{
printf("請輸入半徑r=");
scanf("%f",r);
printf("請輸入角度(360制)j=");
scanf("%f",j);
}while(r0||j0);
/*運算*/
S=PI*r*r*j/360;
C=2*PI*r*j/360+2*r;
printf("該扇形面積S=%f\n周長C=%f\n",S,C);
}
void wb()/*計算正5邊形面積及周長*/
{ float a,S,C;
do{
printf("請輸入邊長a=");
scanf("%f",a);
}while(a0);
/*運算*/
S=1.72*a*a;
C=5*a;
printf("該正5邊形面積S=%f\n周長C=%f\n",S,C);
}
void lb()/*計算正6邊形面積及周長*/
{ float a,S,C;
do{
printf("請輸入邊長a=");
scanf("%f",a);
}while(a0);
/*運算*/
S=2.598*a*a;
C=6*a;
printf("該正6邊形面積S=%f\n周長C=%f\n",S,C);
}
void qg()/*計算球冠表面積及體積*/
{ float r,h,S,V;
do{
printf("請輸入半徑r=");
scanf("%f",r);
printf("請高度h=");
scanf("%f",h);
}while(r0||h0);
/*運算*/
if(h=r)
{
S=2*PI*r*h;
V=PI*(h*h)*(r-h/3);
}
else
{
S=4*PI*r*r-2*PI*r*h;
V=(4/3)*PI*r*r*r-PI*(h*h)*(r-h/3);
}
printf("該球冠面積S=%f\n體積V=%f\n",S,V);
}
void smt()/*計算正4面體的表面積及體積。*/
{ float a,S,V;
do{
printf("請輸入邊長a=");
scanf("%f",a);
}while(a0);
/*運算*/
S=a*a*sqrt(3);
V=0.11111111*(S/4)*a*sqrt(6);
printf("該正4面體面積S=%f\n體積V=%f\n",S,V);
}
void zy()/*計算正圓面積及周長*/
{ float r,S,C;
do{
printf("請輸入半徑r=");
scanf("%f",r);
}while(r0);
/*運算*/
S=PI*r*r;
C=2*PI*r;
printf("該正圓面積S=%f\n周長C=%f\n",S,C);
}
void main()
{ int a;
char c;
do{
printf("請選擇計算對象(選擇數(shù)字)\n");
printf("1:扇形 2:正5邊形 3:正6邊形 4:球冠 5:正4面體 6:正圓\n");
scanf("%d",a);
switch(a)
{
case 1:sx();break;
case 2:wb();break;
case 3:lb();break;
case 4:qg();break;
case 5:smt();break;
case 6:zy();
}
printf("是否繼續(xù)(y or n)\n");
scanf("%s",c);
}while(c=='y');
}
#include
int
main()
{
char
ch;
ch=getchar();
while(ch='1'ch='9')
{
printf("請在此輸入(在此運行功能函數(shù))\n");//switch(語句實現(xiàn))
fflush(stdin);
ch=getchar();
}
printf("程序退出\n");
return
0;
}
輸入1-9之外任何數(shù)都退出
#include?stdio.h
int?add(int?a,?int?b)
{
return?a+b;
}
int?sub(int?a,?int?b)
{
return?a-b;
}
int?mul(int?a,int?b)
{
return?a*b;
}
int?process(int?(*fun)(int,int),?int?a,?int?b)
{
return?fun(a,b);
}
int?main()
{
int?a,b,r;
printf("輸入a、b兩數(shù):\n");
scanf("%d%d",a,b);
printf("兩數(shù)之和:%d\n",?process(add,a,b));
printf("兩數(shù)之差:%d\n",?process(sub,a,b));
printf("兩數(shù)之積:%d\n",?process(mul,a,b));
}
int doit(int x, int y,int (*fun)(int ,int ))
{
......................
a=(*fun)(x,y);
..................調用一個函數(shù);
return(a);
}
int max(int x,int y)
{
............
}
int min...................
...........連續(xù)四個函數(shù);
void mian()
{
.................
將tingcase=max ,min, .,............其中一個;就可以實現(xiàn)你要的功能了;
result=doit(x,y,tingcase);
}
主干部分就是這樣了,函數(shù)的實現(xiàn)部分。應該知道了吧,望采納哦。嘻嘻
函數(shù)是用戶與程序的接口,在定義一個函數(shù)前,首先要清楚以下三個問題。1) 函數(shù)的功能實現(xiàn)及算法選擇。算法選擇會在后續(xù)文章詳細講解,本節(jié)重點關注函數(shù)的功能實現(xiàn)。一般選取能體現(xiàn)函數(shù)功能的函數(shù)名,且見名知意,如求和函數(shù)的函數(shù)名可取為 add,求最大值的函數(shù)名可取為 max,排序函數(shù)可取名為 sort 等。2) 需要用戶傳給該函數(shù)哪些參數(shù)、什么類型,即函數(shù)參數(shù)。3) 函數(shù)執(zhí)行完后返回給調用者的參數(shù)及類型,即函數(shù)返回值類型。 函教定義格式 函數(shù)定義的一般格式為: 返回類型 函數(shù)名 (類型參數(shù)1,類型參數(shù)2,…) {函數(shù)體 }也可以不含參數(shù),不含參數(shù)時,參數(shù)表中可寫關鍵字 void 或省略,為規(guī)范起見,教程中對沒有參數(shù)的函數(shù),參數(shù)表中統(tǒng)一寫 void。例如: 類型 函數(shù)名 () {函數(shù)體 }等價于: 類型 函數(shù)名 (void) //建議的書寫方式 {函數(shù)體 } 如果該函數(shù)沒有返回類型,則為 void 類型。例如: void add (int x,int y) {printf ("sum=%d\n", x+y); } 除了 void 類型外,在函數(shù)體中,均需要顯式使用 return 語句返回對應的表達式的值。 函教返回值 函數(shù)的值是指調用函數(shù)結束時,執(zhí)行函數(shù)體所得并返回給主調函數(shù)的值。 關于函數(shù)返回值說明如下。1) 帶返回值的函數(shù),其值一般使用 return 語句返回給調用者。其格式為: return 表達式;或者 return (表達式);例如: int add (int a, int b) {return (a + b); //return 后為表達式 } 函數(shù)可以含一個或多個 return 語句,但每次調用時只能執(zhí)行其中一個 return 語句。例如,求整數(shù)絕對值的函數(shù): int f (int n) //含多個return語句,但每次調用只執(zhí)行一個 {if (n = 0)return n;elsereturn -n; }
一、//調用函數(shù)事例
#includestdio.h
#includestring.h
二、//計算加法函數(shù)
int add(int a, int b)
{
return a+b;
}
三、//計算減法函數(shù)
int subtract(int a, int b)
{
return a-b;
}
四、//計算乘法函數(shù)
int multiply(int a, int b)
{
return a*b;
}
擴展資料:
函數(shù)作為另一個函數(shù)調用的實際參數(shù)出現(xiàn)。這種情況是把該函數(shù)的返回值作為實參進行傳送,因此要求該函數(shù)必須是有返回值的。例如: printf("%d",max(x,y)); 即是把max調用的返回值又作為printf函數(shù)的實參來使用的。在函數(shù)調用中還應該注意的一個問題是求值順序的問題。
參考資料來源:百度百科-函數(shù)調用