Bir metin dosyasındaki sayıları okumayı deniyorum ve bir dizide saklamıyorum. Dizideki sayıları okumaya çalıştığımda, çıktı azalıyor. Bu benim kodudur: ben yapıyorum da neDizgi doğru yazdırılmıyor Değerler
looking at point 2.30 4.30
looking at point 7.60 7.10
looking at point 8.50 3.00
looking at point 5.90 0.70
looking at point 1.00 2.00
looking at point 5.10 5.80
looking at point 4.00 4.50
looking at point 4.30 3.40
geçerli:
struct point{
double x[7];
double y[7];
}point;
int main()
{
FILE *fp;
fp = fopen("data_2.txt", "r");
struct point points;
int len = 8;
int i = 0;
int j = 0;
int k = 0;
double a = 0;
double b = 0;
double c = 0;
double total = 0;
int left=0;
int right=0;
int line = 0;
for (i=0;i<len;i++)
{
fscanf(fp, "%lf %lf", &points.x[i],&points.y[i]);
}
for(i = 0; i < len;i++)
printf("looking at point %.2f %.2f\n",points.x[i],points.y[i]);
return(0);
}
kullandığım Testi dosyası alıyorum aşağıdaki basamak
2.3 7.5
7.6 7.1
8.5 3.0
5.9 0.7
1.0 2.0
5.1 5.8
4.0 4.5
4.3 3.4
çıkışını içeren bu yanlış?
Bu garip. Kullanım tamamlandığında, dosyayı kapatmayı deneyin. – Shravan40
Dizi dizinlerinden taşma var. Struct noktasında x, y 'dizisi sadece 7 sayı tutabilir, ancak 8'e yazmaya çalışıyorsunuz. Dizi boyutunu genişletmek bunu düzeltecektir. –
[Uygun C formatlama] 'na bakmalısınız (// prohackr112.tk/pcf). –