這可能是一個愚蠢的問題,但我無法弄清楚。它與n ++和++ n之間的區別(我認爲我理解但顯然不是)。在while循環結束時n ++和++ n的區別? (ANSI C)
#include <stdio.h>
#include <math.h>
long algorithmA(int n);
long algorithmB(int n);
int main(){
long A, B;
A = B = 0;
int n = 1;
while(A >= B){
A = algorithmA(n);
B = algorithmB(n);
n++;
}
printf("At n = %d, Algorithm A performs in %ld seconds & "
"Algorithm B performs in %ld seconds.", n, A, B);
}
long algorithmA(int n){
return pow(n,4) * 86400 * 4;
}
long algorithmB(int n){
return pow(3,n);
}
在這裏,你可能會說我想看看在什麼點算法的性能優於算法B的功能和時間爲單位提供給我的家庭作業的問題。
總而言之,我一直認爲「++」的順序在while循環結束時並不重要。但如果我把++ n而不是n ++,我得到了錯誤的答案。有人可以解釋爲什麼嗎?
編輯:它顯示24與++ n和25與n ++,但它一定是由於另一個原因。因爲我剛剛檢查過,沒有任何區別。感謝您的耐心和時間,我只希望我知道我做了什麼!
不知道如果直接重複(不同的語言),但我敢打賭,問題是相同的。 [x ++和++ x之間有區別](http://stackoverflow.com/questions/1094872/is-there-a-difference-between-x-and-x-in-java?rq=1)。 – csmckelvey 2014-09-06 21:40:09
@mlwn我認爲你得到了這些倒退。 – csmckelvey 2014-09-06 21:41:18
@Takendarkk大聲笑..剛剛刪除它.. :)打字.. – mlwn 2014-09-06 21:41:59