用C語言求平均數的四種方法

2021-09-23 06:00:15 字數 554 閱讀 2093

1. 常規操作

兩個數的平均數等於兩數之和除以二

int main()

這種方法有一定的缺陷,當a或b的值夠大時,以至於超過了intmax(整形所能達到的最大值,這個方法就顯得不夠嚴謹。

2. 最常用的方法

如:將較大的數減去較小的數,得到兩數的相差多少,再將差值的一

半給較小的數,這樣兩數就相等了。

int main()

這個方法優於第一種,c的值永遠不會超過intmax

3. 使用按位與和按位異或操作符

int main()

這種方法較難理解,一般不建議使用。

4. 在第三種方法基礎上使用右移操作符

int main()

將乙個數右移一位相當於給這個數除以二。

C 求階乘 四種方法

來總結下求階乘的各種方法哈。寫在最前 各個 僅僅是提供了求階乘的思路,以便在實際須要時再來編碼,並不健壯!各個程式都在1到10內測試正確。一 includeusing namespace std int fac int int main int n while cin n cout 分析 該程式在每...

求十億個數的平均數的方法

在討論區中看到的,感覺不錯記錄下來。1 關於演算法,我想了乙個簡單的思路,分治 遞迴 1 設定乙個餘數區pub,初始為0。2 每n n 100 個數取均值。計算時將公共餘數pub計入。所得整數部分作為均值,餘數部分設為餘數區。3 計算下一組n個數,計算方法同上。4 將10億個數計算完畢後,將餘下10...

leecode 兩數之和的四種方法

給定乙個整數陣列 nums 和乙個目標值 target,請你在該陣列中找出和為目標值的那 兩個 整數,並返回他們的陣列下標。你可以假設每種輸入只會對應乙個答案。但是,你不能重複利用這個陣列中同樣的元素。class solution def twosum sself,nums,target type ...