1
#include <stdlib.h>
#include <stdio.h>
int main()
{
int i=0;
int j=0;
size_t count=0;
float numbers[20][100];
float velocity[21][101];
char *line = NULL;
FILE *myFile;
myFile = fopen("vel.txt", "r");
if (myFile == NULL)
{
printf("Error Reading File\n");
exit (0);
}
while(i < 20 && getline(&line, &count, myFile)!=-1) {
int len = 0, pos = 0;
j = 0;
while(j < 100 && 1 == sscanf(line + pos, "%f%n", &numbers[i][j++], &len))
pos += len;
i++;
}
free(line);
fclose(myFile);
i=1;
for(j = 0; j < 101; j++)
{
if(j == 1)
{
velocity[i][j]=numbers[i][j];
}
else if (j == 101)
{
velocity[i][j]=numbers[i][j];
}
else
{
velocity[i][j]=(numbers[i][j-1]+numbers[i][j])/2;
}
}
for (j=0 ; j<101 ; j++) {
printf("\n%f", velocity[i][j]);
}
}
は私が速度を計算する必要が私のコード21101 2次元mesh.If i==1
は、それは上記の私のコードで、fine.The SAM条件が適用されます動作しますi==21
.But他のすべての値のために(2〜20であれば)計算は異なります。どのように変更する必要がありますか
if(i== from 2 to 20 &&j == 1)
{
do something
}
else if (i== from to to 20 && j == 101)
{
do something 2
}
else(means i goes from 2,20 j goes from 2,100)
{
do something 3
}
いいえ、これをコンパイルすることはできません。他にも見てください.2つの変数の場合はどのように見えるでしょうか? –
他の条件を追加するだけで、私は答えを更新します... – mame98