最大值 最小值

2021-05-27 17:13:01 字數 2126 閱讀 5585

求最大最小的時候有點小技巧,就是我們兩個兩個的比較,把大個跟當前最大比較,小的跟當前最小的比較,這樣就會節約一點比較時間,有原來的2*n到3*n / 2。

#include #include //得到最大最小值   

int getmaxmin(int ndata, int nlen, int* pnmax, int* pnmin)

if (nmin > ndata[i + 1]) //用第二個數與nmin比較。

} else //如果第乙個數不大於第二個數

if (nmin > ndata[i]) //用第乙個數與nmin比較

} }

if (i < nlen) //確定是否都比較了,如果nlen為偶,可能最後乙個數沒有比較

else if (nmin > ndata[i])

} *pnmax = nmax; //儲存結果

*pnmin = nmin; //返回結果。

return 1;

};

//得到最小值

int getmin(int ndata, int nlen)

} return nmin; //返回最小值

}

//得到最大值

int getmax(int ndata, int nlen)

} return nmax; //返回nmax

} int main()

; //測試

int nmax = getmax(ndata, 10);

int nmin = getmin(ndata, 10);

printf("%d %d/n", nmin, nmax);

getmaxmin(ndata, 10, &nmax, &nmin);

printf("%d %d/n", nmin, nmax);

system("pause");

return 0;

} #include #include //得到最大最小值

int getmaxmin(int ndata, int nlen, int* pnmax, int* pnmin)

if (nmin > ndata[i + 1]) //用第二個數與nmin比較。

}else //如果第乙個數不大於第二個數

if (nmin > ndata[i]) //用第乙個數與nmin比較}}

if (i < nlen) //確定是否都比較了,如果nlen為偶,可能最後乙個數沒有比較

else if (nmin > ndata[i])

}*pnmax = nmax; //儲存結果

*pnmin = nmin; //返回結果。

return 1;

};//得到最小值

int getmin(int ndata, int nlen)

}return nmin; //返回最小值

}//得到最大值

int getmax(int ndata, int nlen)

}return nmax; //返回nmax

}int main()

; //測試

int nmax = getmax(ndata, 10);

int nmin = getmin(ndata, 10);

printf("%d %d/n", nmin, nmax);

getmaxmin(ndata, 10, &nmax, &nmin);

printf("%d %d/n", nmin, nmax);

system("pause");

return 0;

}

int float double 最大值,最小值

中沒有double的最大最小值。如果輸出的比如 100lf輸出2.23432432,沒有達到100位,則最後2後面不一定都是0。原文見view plaincopy to clipboardprint?coder acboy date 2010 3 1 include include using na...

最大值最小值問題

看了不是很懂,先把別人的 放著,日後在研究。程式8 3 5.cpp 定義控制台應用程式的入口點。include stdafx.h 目標學會用猜數字 二分 的方法,換個角度來解決問題 include include includeconst int maxn 100000 int a maxn n,m...

NYOJ 最大值和最小值

最大值和最小值 時間限制 1000 ms 記憶體限制 65535 kb 難度 1 描述 小明在上c語言課時老師布置了一道程式設計作業,要求是給你乙個數 數的長度小於100 讓你求出由該數的數字組成的最大值和最小值,由於小明程式設計學的不好但為了完成作業,想請你幫助他。輸入第一行輸入乙個數n 0輸出 ...