函數(shù)的定義有一定的問題,如果在main函數(shù)內部定義外面肯定調用不到,所以說的函數(shù)定義錯誤,函數(shù)一般定義在前面,也可以聲明然后再實現(xiàn)。改正后的代碼如下:
網站建設哪家好,找創(chuàng)新互聯(lián)建站!專注于網頁設計、網站建設、微信開發(fā)、成都微信小程序、集團企業(yè)網站建設等服務項目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了甌海免費建站歡迎大家使用!
int GetMax(int a[6])
{
int i;int max=a[0];
for(i=1;i6;i++)if(maxa[i])max=a[i];return max;
}
int GetMin(int a[6])
{
int i;int min=a[0];
for(i=1;i6;i++)if(mina[i])min=a[i];return min;
}
float GetAvg(int a[6])
{
int sum=0,i;float average=0;
for(i=0;i6;i++)sum+=a[i];average=(float)sum/6;return average;
}
int main()
{
int a[6],min=0,max=0,i;float average=0.0f;printf("請輸入6個整數(shù):");
for( i=0;i6;i++)scanf("%d",a[i]);
max = GetMax(a);min=GetMin(a);average=GetAvg(a);
printf("min=%d,max=%d\n",min,max);printf("average=%.2f\n",average);return 0;
}
擴展資料:
函數(shù)是一組一起執(zhí)行一個任務的語句。每個 C 程序都至少有一個函數(shù),即主函數(shù)?main()?,所有簡單的程序都可以定義其他額外的函數(shù)。
函數(shù)聲明告訴編譯器函數(shù)的名稱、返回類型和參數(shù)。函數(shù)定義提供了函數(shù)的實際主體。
C 語言中的函數(shù)定義的一般形式如下:
return_type function_name(parameter list){body of the function}。
當程序調用函數(shù)時,程序控制權會轉移給被調用的函數(shù)。被調用的函數(shù)執(zhí)行已定義的任務,當函數(shù)的返回語句被執(zhí)行時,或到達函數(shù)的結束括號時,會把程序控制權交還給主程序。
調用函數(shù)時,傳遞所需參數(shù),如果函數(shù)返回一個值,則可以存儲返回值。
C 使用傳值調用來傳遞參數(shù)。一般來說,這意味著函數(shù)內的代碼不能改變用于調用函數(shù)的實際參數(shù)。
#include?"stdio.h"
#include?"stdlib.h"
int?*?getMax(int?*p,int?n)//求數(shù)組最大值的指針函數(shù)
{
int?i;
int?*max=(int?*)malloc(sizeof(int));
*max=*p;
for(i=1;in;i++)
? ?if(*(p+i)*max)
? ? ? *max=*(p+i);
return?max;
}
void?main()
{
int?a[]={92,45,3,87,99,24};
int?*p=getMax(a,6);?//?int?*p=a;
printf("%d\n",*p);
free(p);
}
結果:
可以寫一個get_max函數(shù)返回兩數(shù)較大的一個:int get_max(int a, int b){return ab?a:b;}
第五個。由于array數(shù)組不是全局定義的數(shù)組導致你不能這么傳進函數(shù)里。
int *array 的意思是將mark數(shù)組的頭指針傳進來,這樣你才能用mark數(shù)組里的東西。
第八個。由于函數(shù)的聲明是int getmax( int *array ) ,所以必須要傳進去一個地址,而mark的意思除了表明數(shù)組名稱還代表了數(shù)組的頭地址,即mark等價于(mark[0]).
不知道你明白了否?
--------------NO.1----------------
c語言:
int
max(int
a,int
b,int
c)
{
int
t;
if(ab)
t=a;
else
t=b;
if(tc)
t=c;
return
t;
}
main()
{
int
a,b,c,t;
scanf("%d,%d,%d",a,b,c);
t=max(a,b,c),
printf("max=%d",t);
}
-------------NO.2----------------
#include
iostream
using
namespace
std;
int
GetMax(int
a,
int
b,
int
c)
{
int
max
=
a;
if(ab)
{
max
=
b;
if(bc)
max
=
c;
}
else
if(ac)
max
=
c;
return
max;
}
int
main()
{
int
a,
b,
c;
int
maxNum;
a
=
4;
b
=
6;
c
=
10;
maxNum
=
GetMax(a,
b,
c);
cout
maxNum
endl;
return
0;
}
這個是C++的格式
要是c的話
把cout
換成
printf就行了
函數(shù)GetMax()用了最容易理解的方法
里面還可以改成逗號表達式應該也沒問題的
--------------NO.3--------------------
#includeiostream.h
main()
{
int
a,b,c,temp,max;
L:
cout"輸入第一個整數(shù):";
cina;
coutendl;
cout"輸入第二個整數(shù):";
cinb;
coutendl;
cout"輸入第三個整數(shù):";
cinc;
coutendl;
if(ab)
temp=a;
else
temp=b;
if(tempc)
max=temp;
else
max=c;
cout"最大的數(shù)為:"maxendl;
goto
L;
}
輸入第一個整數(shù):589
輸入第二個整數(shù):154
輸入第三個整數(shù):487
最大的數(shù)為:589