1. c語言中max,min具體用法是怎麼樣的
max()不是一個C語言里提供給你的函數,而是程序員自己定義的。
是你看的那個程序源代碼上,寫程序的人自己定義了一個名為max的函數。它和main()函數不一樣,main()才是C語言函數庫里已經定義好的,main()已經被賦予了意義,那就是每個C程序的主函數。而這個max()只是寫那個源代碼的人自己定義的。
比方說,可以定義一個宏來完成這個計算:
#include<stdio.h>
#define max(a,b) ((a)>(b)?(a):(b))
int main()
{int a,b,c;
scanf("%d %d",&a,&b);
c=max(a,b);
printf("%d",c);
return 0;
}
2. C語言中「max」和「min」如何使用
1、max函數
用於求數組中的最大元素。暫時用到的語法形式有以下3種:
C = max(A);
C = max(A, B);
C = max(A, [], dim);
描述:
C = max(A)返回數組不同維度的最大元素。如果A是一個向量,max(A)返迴向量A中的最大元素;如果A是一個矩陣,max(A)將矩陣A的每一列視為向量,最後返回一個行向量,這個行向量的每個元素是對應列向量的最大元素;如果A是一個多維數組,max(A)將第一個尺寸不為1的維度里的值視為向量,然後返回每個向量的最大值。
C = max(A, B)返回一個數組,該數組的尺寸與A和B相同,該數組的元素取自A和B中的最大值。A和B的維度必須要匹配,或者它們都是標量。
C = max(A, [], dim)根據指定標量dim返回矩陣A中的最大元素。比如dim=1,則返回行向量,其中每個元素都是對應列的最大元素;比如dim=2,則返回列向量,其中每個元素都是對應行的最大元素。
2、min函數
用於求數組中的最小值。暫時用到的語法形式有3種:
C = min(A);
C = min(A, B);
C = min(A, [], dim);
(2)c語言min函數擴展閱讀:
C語言編寫注意事項:
1、每個程序中一定包含main()函數, 盡管C語言中對函數命名沒有限制。
2、printf函數永遠不會自動換行,只能用 來實現, 回車鍵進行的換行在編譯中會出現錯誤信息。
3、在vs2008中編譯,測試需要加 system("pause");來暫停dos自動退出導致的printf無法顯示。
4、所有自定義變數必須聲明才能使用。
3. c語言定義max_min求一個數組最大值和最小值,利用調用函數void max_min(int[],int n,int *map,int *minp)
#include<stdio.h>
//max_min函數定義太亂了,應該是這樣的:
voidmax_min(inta[],intn,int*maxp,int*minp)
{
inti;
*maxp=a[0];
*minp=a[0];
for(i=1;i<=n-1;i++)
{
if(a[i]>=*maxp)
*maxp=a[i];
elseif(a[i]<*minp)
*minp=a[i];
}
}
intmain()
{
inta[100],n,i,max,min;
printf("pleaseinputn:");
scanf("%d",&n);
printf("pleaseinputnumber:");
for(i=0;i<=n-1;i++)//去掉分號
scanf("%d",&a[i]);
max_min(a,n,&max,&min);//應該是傳變數地址,max_min(a,n,maxp,minp);
printf("themaxandminis:%d&%d ",max,min);//maxp,minp沒定義,應該是max,min
return0;
}
結果:
4. c語言編程,請編寫程序實現:max()函數功能是求任意3個數中最大值,min()
#include「stdio.h」
ints_max(inta,intb,intc)/*求最大值函數*/
{
intmax;
if(a>=b)
max=a;
else
max=b;
if(max<c)
max=c;
returnmax;
}
ints_min(inta,intb,intc)/*求最小值函數*/
{
intmin;
if(a>=b)
min=b;
else
min=a;
if(min>c)
min=c;
returnmin;
}
floats_pin(inta,intb,intc)/*求平均值函數*/
{
floatpin;
pin=(a+b+c)/3.0;
returnpin;
}
mian()
{
inta,b,c;
printf("請輸入三個整數:");
scanf("%d,%d,%d",&a,&b,&c);
printf("這三個整數中的最大值是:%d",s_max(a,b,c));
printf("這三個整數中的最小值是:%d",s_min(a,b,c));
printf("這三個整數的平均值是:%f",s_pin(a,b,c));
getch();
}
(4)c語言min函數擴展閱讀
11H1333:三個數的最大值
#include<bits/stdc++.h>
usingnamespacestd;
intmain(){
inta,b,c;
cin>>a>>b>>c;
cout<<max(max(a,b),max(b,c));
return0;
}
5. 初學C語言,為什麼我的max,min函數無法調用啊
你的這兩個都函數寫的不對。應該要重新改寫才可以。
6. c語言中max,min函數問題及switch
double類型輸入的時候不是用%f,把a,b,c,d定義時改成float就可以。
7. 編寫函數min(int b[10]) ,用來求數組a中元素的最小值。C語言
主要個子函數
Min在c語言中系統沒有定義,需要我們自己定義,安題目傳參是一個數組,10個元素,
其實跟比較大小一樣,
Int min(int b[10])
Int i,m;
M=b[0];
For(i=1;i<10;i++)
If(m>b[i])
M=b[i];
Return m;
這樣子函數就好了
主函數應該沒問題,
輸入數組a
調用min(a[10]),記得這里傳參是實參,要用a
8. c語言中,為什麼宏定義寫#define MIN(a,b) a<ba:b 不能定義一個min函數
這就涉及到函數與宏的優缺點了
宏會在編譯器在對源代碼進行編譯的時候進行簡單替換,不會進行任何邏輯檢測,即簡單代碼復制而已,既然是單純的替換,如果你括弧去掉由於優先順序的關系,就有可能出現問題。
之所以用宏是因為 宏的效率高,不需要壓棧 和出棧
9. c語言怎麼編寫求10個數中最小的函數min,要求函數有返回值。(用數組作為形參求)
以前怎麼變成一個叫最強,叫他交錢就反胃,只剩數字作為這個東西的話,我也不知道,然後這個東西你看怎麼樣?