#include "stdio.h"
目前創(chuàng)新互聯(lián)已為數(shù)千家的企業(yè)提供了網(wǎng)站建設、域名、虛擬主機、網(wǎng)站托管維護、企業(yè)網(wǎng)站設計、樊城網(wǎng)站維護等服務,公司將堅持客戶導向、應用為本的策略,正道將秉承"和諧、參與、激情"的文化,與客戶和合作伙伴齊心協(xié)力一起成長,共同發(fā)展。
int main()
{
int x[100],max,min,i,n;
printf("輸入整數(shù)個數(shù):");
scanf("%d",n);
printf("輸入一組正整數(shù):");
scanf("%d",x[0]);
max=0;min=0;
for(i=1;in;i++)
{
scanf("%d",x[i]);
if(x[max]x[i]) max=i;
if(x[min]x[i]) min=i;
}
printf("最大值是%d,下標(從0開始)%d\n最小值是%d,下標(從0開始)%d\n",x[max],max,x[min],min);
}
max函數(shù)用于求最大值,可以定義如下函數(shù):
int max(int a, int b)
{
if(ab) return a;
return b;
}
不過該函數(shù)只能用于整型而不能用于其它類型。如果有其它類型,比如浮點型,則需要再重新修改。
float max(float a , float b)
{
if( a b) return a;
return b;
}
其實這樣代碼量比較少的操作,可以定義為宏函數(shù),即帶參宏定義的形式。
#define max(a,b) ((a)(b)?(a):(b))
這樣既可以不受參數(shù)類型限制,又可以提高執(zhí)行效率。
不過從你的代碼來看,只需要定義int類型的max函數(shù)即可。
擴展資料:
max(x,y)=0.5*(x+y+|x-y|);在概率論中多有使用,可以將參數(shù)指定為數(shù)字、空白單元格、邏輯值或數(shù)字的文本表達式。如X、Y獨立同分布,X~N(0,1),求期望E(max(x,y))。
參考資料來源:百度百科-max函數(shù)
自定義函數(shù)實現(xiàn)
int max(int a,int b)
{
return ab?a:b;
}
#include?stdio.h
#include?conio.h
void?array_input?(int?array[],?int?n);
int?max?(int?array[],?int?n);
int?main?(void)?{
int?array[10];
printf?("請輸入10個數(shù)據(jù):");
array_input?(array,?10);
printf?("10個元素最大值:%d\n",?max?(array,?10));
getch?();?/*屏幕暫留*/
return?0;
}
/*?輸入數(shù)組?*/
void?array_input?(int?array[],?int?n)?{
int?i;
for?(i=0;?in;?i++)
scanf?("%d",?array[i]);
putchar?('\n');
}
/*?計算數(shù)組最大值?*/
int?max?(int?array[],?int?n)?{
int?i;
int?max?=?array[0];
for?(i=0;?in;?i++)?{
if?(array[i]??max)
max?=?array[i];
}
return?max;
}