-2
嗯,這裏是我的代碼,我有一個問題,因爲我的n不增加:For循環不工作在C++
#define N 100
#define N_EQUATIONS 18 + 2
//initial values
int v = 1;
int cai = 2;
int caSR = 3;
int nai = 4;
int ki = 5;
int dvdt = 18;
double V_init = -87.5;
double Cai_init=1.0e-4;
double cansr=1.2;
double cajsr=cansr;
double CaSR_init = cansr + cajsr;
double Nai_init = 7;
double Ki_init = 145;
double u[N + 1][N_EQUATIONS + 1];
double Im[N + 1];
int main() {
int n = 0;
for (n = 0; n <= N; n++) {
printf("n=%.18f\n", n);
u[n][v] = V_init;
//printf("t=%.18f\n", u[n][v]);
u[n][cai] = Cai_init;
//printf("cai=%.18f\n", u[n][cai]);
u[n][caSR] = CaSR_init;
u[n][nai] = Nai_init;
u[n][ki] = Ki_init;
u[n][dvdt] = 0.0;//check it
tapend[n] = 0.0;
tapstart[n] = 0.0;
}
}
很抱歉,如果這是一個愚蠢的問題,答案是在盯着我眼睛..
PS看到新的修改後的代碼
學習使用調試器。它會讓你的生活更輕鬆。 – dandan78 2014-09-30 08:08:11
你的程序甚至不應該編譯!什麼是「cai」和「ki」?他們從未在任何地方宣佈。對於許多其他變量也一樣。 – 2014-09-30 08:10:56
我剛剛添加了cai和其他變量。問題是當我嘗試printf「N」時,它顯示我N = 0,就好像它沒有讀取頂部的定義一樣。所以我試圖在int的主循環中聲明它,但仍然遇到同樣的問題。 – chrysovalando 2014-09-30 08:16:57