初歩的な質問で申し訳ないのですが
48330000,山田川,59,129,177.0,3971.5,0.0,0.0
というデータを読み込むのに
fscanf(fp2,"%d,%s,%d,%d,%f,%f,%f,%f\n",&mesh,&sdummy,&range,§or,&fdummy,&fdummy,&fdummy,&fdummy);でだめなのはどうしてでしょう?
printf("%d\n",range);
とやると
4251844
という値が出てきてしまいます。