Mình đang viết code để xử lý việc đọc 1 file .txt toàn là số thực cả thôi.
Dữ liệu trên mỗi dòng tương ứng với tọa độ x, tọa độ y.
Không hiểu sao, chỉ với mỗi công việc thử nghiệm, là đọc đến đâu in ra màn hình đến đấy, lại có sự khác biệt khi lượng dữ liệu trong file là nhiều hay ít.
Thực ra file bị lỗi khi dữ liệu cũng chưa nhiều lắm, mới có 16 kb thôi à. Còn không hiểu sao rút bớt xuống tầm 3 kb lại chạy được.
Lỗi ở đây là lỗi đọc dữ liệu bị sai, và vòng lặp trở thành lặp vô hạn.
Dưới đây là code và ví dụ 2 file .txt, 1 file "lớn" bị lỗi, 1 file thu nhỏ chạy bình thường.
Code:
Mã:
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
FILE *fileIn, *fileOut;
int main()
{
char tenFile[30];
fileIn = NULL;
float x, y;
do
{
system("cls");
printf("
Hay nhap ten file du lieu");
printf("
Vi du: soLieu.txt");
printf("
Neu muon dong chuong trinh luon thi nhap: stop");
printf("
");
printf("
Ten file du lieu la: ");
fflush(stdin); gets(tenFile);
if(strcmp(tenFile, "stop")!=0)
{
fileIn = fopen(tenFile, "r");
if(fileIn == NULL)
{
printf("
Khong tim thay file %s", tenFile);
printf("
An phim bat ki de tiep tuc
");
system("pause");
}
else
{
while(!feof(fileIn))
{
fscanf(fileIn, "%f", &x);
printf("
%f", x);
fscanf(fileIn, "%f", &y);
printf(" %f", y);
}
fclose(fileIn);
}
}
}
while((strcmp(tenFile, "stop")!=0)&&(fileIn==NULL));
printf("
An phim bat ki de ket thuc
");
system("pause");
return 0;
}
Ví dụ file .txt "lớn" mà chạy bị lỗi:
Mã:
-0.884660 -501.400
-0.881130 -499.000
-0.872760 -496.500
-0.865270 -494.100
-0.876730 -491.600
-0.857780 -489.200
-0.861310 -486.800
-0.843250 -484.300
-0.851180 -481.900
-0.848530 -479.400
-0.836640 -477.000
-0.835320 -474.500
-0.820340 -472.100
-0.835320 -469.700
-0.819010 -467.200
-0.819460 -464.800
-0.806680 -462.300
-0.804040 -459.900
-0.811080 -457.500
-0.793900 -455.000
-0.796990 -452.600
-0.779360 -450.100
-0.789940 -447.700
-0.782010 -445.300
-0.774520 -442.800
-0.770110 -440.400
-0.758660 -437.900
-0.771430 -435.500
-0.754690 -433.000
-0.756450 -430.600
-0.741480 -428.200
-0.744560 -425.700
-0.747200 -423.300
-0.732660 -420.800
-0.732660 -418.400
-0.715920 -416.000
-0.728260 -413.500
-0.717240 -411.100
-0.713280 -408.600
-0.704470 -406.200
-0.696980 -403.700
-0.707110 -401.300
-0.690810 -398.900
-0.691690 -396.400
-0.676270 -394.000
-0.682000 -391.500
-0.680680 -389.100
-0.669660 -386.700
-0.667460 -384.200
-0.653800 -381.800
-0.664820 -379.300
-0.652480 -376.900
-0.649400 -374.500
-0.638820 -372.000
-0.635740 -369.600
-0.641910 -367.100
-0.627810 -364.700
-0.627370 -362.200
-0.612390 -359.800
-0.619880 -357.400
-0.614590 -354.900
-0.605780 -352.500
-0.600930 -350.000
-0.590800 -347.600
-0.600490 -345.200
-0.588160 -342.700
-0.585070 -340.300
-0.572740 -337.800
-0.573620 -335.400
-0.576260 -332.900
-0.563930 -330.500
-0.561280 -328.100
-0.548510 -325.600
-0.556000 -323.200
-0.548950 -320.700
-0.541900 -318.300
-0.533530 -315.900
-0.527360 -313.400
-0.533970 -311.000
-0.522950 -308.500
-0.518990 -306.100
-0.507090 -303.600
-0.509300 -301.200
-0.508860 -298.800
-0.498280 -296.300
-0.492990 -293.900
-0.482860 -291.400
-0.489470 -289.000
-0.481980 -286.600
-0.475370 -284.100
-0.465680 -281.700
-0.462600 -279.200
-0.466120 -276.800
-0.456430 -274.400
-0.450260 -271.900
-0.439770 -269.500
-0.442330 -267.000
-0.440170 -264.600
-0.430920 -262.100
-0.422860 -259.700
-0.416380 -257.300
-0.419900 -254.800
-0.413160 -252.400
-0.405100 -249.900
-0.395540 -247.500
-0.394480 -245.100
-0.395010 -242.600
-0.387210 -240.200
-0.377790 -237.700
-0.370430 -235.300
-0.371490 -232.800
-0.368800 -230.400
-0.359500 -228.000
-0.349990 -225.500
-0.346460 -223.100
-0.346730 -220.600
-0.341790 -218.200
-0.330600 -215.800
-0.322940 -213.300
-0.321880 -210.900
-0.320640 -208.400
-0.313950 -206.000
-0.301300 -203.600
-0.297960 -201.100
-0.295530 -198.700
-0.294170 -196.200
-0.283020 -193.800
-0.273060 -191.300
-0.271610 -188.900
-0.268480 -186.500
-0.266370 -184.000
-0.250900 -181.600
-0.246980 -179.100
-0.243110 -176.700
-0.242140 -174.300
-0.235170 -171.800
-0.220110 -169.400
-0.220640 -166.900
-0.214030 -164.500
-0.215660 -162.000
-0.200460 -159.600
-0.192000 -157.200
-0.191070 -154.700
-0.185520 -152.300
-0.186890 -149.800
-0.166400 -147.400
-0.167590 -145.000
-0.159440 -142.500
-0.160590 -140.100
-0.151110 -137.600
-0.135030 -135.200
-0.138730 -132.800
-0.127370 -130.300
-0.132960 -127.900
-0.111820 -125.400
-0.108030 -123.000
-0.104410 -120.500
-0.098690 -118.100
-0.099790 -115.700
-0.075070 -113.200
-0.081990 -110.800
-0.068020 -108.300
-0.073400 -105.900
-0.059300 -103.500
-0.044850 -101.000
-0.050000 -98.600
-0.034970 -96.100
-0.044980 -93.700
-0.017380 -91.200
-0.020440 -88.800
-0.012050 -86.400
-0.008470 -83.900
-0.008110 -81.500
0.019230 -79.000
0.007110 -76.600
0.027510 -74.200
0.016190 -71.700
0.037040 -69.300
0.046920 -66.800
0.043220 -64.400
0.059700 -62.000
0.046610 -59.500
0.081020 -57.100
0.069610 -54.600
0.085250 -52.200
0.083180 -49.700
0.087760 -47.300
0.114370 -44.900
0.098820 -42.400
0.124280 -40.000
0.106220 -37.500
0.135610 -35.100
0.137550 -32.700
0.138250 -30.200
0.152740 -27.800
0.138780 -25.300
0.177240 -22.900
0.158780 -20.400
0.181690 -18.000
0.172440 -15.600
0.183670 -13.100
0.206930 -10.700
0.189710 -8.200
0.219840 -5.800
0.195080 -3.400
0.233020 -0.900
0.226140 1.500
0.233150 4.000
0.243630 6.400
0.231780 8.900
0.272010 11.300
0.246590 13.700
0.277910 16.200
0.259360 18.600
0.280600 21.100
0.295400 23.500
0.281130 25.900
0.307910 28.400
0.279540 30.800
0.324300 33.300
0.306550 35.700
0.323510 38.100
0.324830 40.600
0.318400 43.000
0.356950 45.500
0.328180 47.900
0.365450 50.400
0.338000 52.800
0.369460 55.200
0.374040 57.700
0.365980 60.100
0.391800 62.600
0.363290 65.000
0.414090 67.400
0.385890 69.900
0.412500 72.300
0.403740 74.800
0.406290 77.200
0.439770 79.700
0.409290 82.100
0.450260 84.500
0.414530 87.000
0.456430 89.400
0.448500 91.900
0.448940 94.300
0.468760 96.700
0.441450 99.200
0.494760 101.600
0.458190 104.100
0.495200 106.500
0.474050 108.900
0.487710 111.400
0.512820 113.800
0.484620 116.300
0.526920 118.700
0.485950 121.200
0.537050 123.600
0.517230 126.000
0.528240 128.500
0.538370 130.900
0.516790 133.400
0.569210 135.800
0.526920 138.200
0.570980 140.700
0.540580 143.100
0.567010 145.600
0.581990 148.000
0.559960 150.500
0.599610 152.900
0.556000 155.300
0.614150 157.800
0.582870 160.200
0.605780 162.700
0.604900 165.100
0.591240 167.500
0.639700 170.000
0.596090 172.400
0.645870 174.900
0.605780 177.300
0.642350 179.700
0.644550 182.200
0.630450 184.600
0.664820 187.100
0.621640 189.500
0.684200 192.000
0.643670 194.400
0.677150 196.800
0.665700 199.300
0.663050 201.700
0.704470 204.200
0.662170 206.600
0.715480 209.000
0.667900 211.500
0.716360 213.900
0.706230 216.400
0.704470 218.800
0.732660 221.300
0.693010 223.700
0.758220 226.100
0.710640 228.600
0.753810 231.000
0.729580 233.500
0.739270 235.900
0.770990 238.300
0.732220 240.800
0.785090 243.200
0.733100 245.700
0.790820 248.100
0.767910 250.500
0.775840 253.000
0.791700 255.400
0.759100 257.900
0.822100 260.300
0.770110 262.800
0.821220 265.200
0.786850 267.600
0.808440 270.100
0.829150 272.500
0.796550 275.000
0.845890 277.400
0.793460 279.800
0.857780 282.300
0.823420 284.700
0.844130 287.200
0.849850 289.600
0.827390 292.100
0.885540 294.500
0.832670 296.900
0.887740 299.400
0.844130 301.800
0.878490 304.300
0.886860 306.700
0.863950 309.100
0.908010 311.600
0.856020 314.000
0.925190 316.500
0.882900 318.900
0.914180 321.400
0.908010 323.800
0.896110 326.200
0.947660 328.700
0.896110 331.100
0.956030 333.600
0.905810 336.000
0.952070 338.400
0.948540 340.900
0.935770 343.300
0.973210 345.800
0.924310 348.200
0.996120 350.600
0.945460 353.100
0.987750 355.500
0.970130 358.000
0.969690 360.400
1.013750 362.900
0.964840 365.300
1.026080 367.700
0.969690 370.200
1.026520 372.600
1.010660 375.100
1.009780 377.500
1.038420 379.900
0.993920 382.400
1.065730 384.800
1.008900 387.300
1.057800 389.700
1.028720 392.200
1.040620 394.600
1.073220 397.000
1.030050 399.500
1.089520 401.900
1.030930 404.400
1.095250 406.800
1.067940 409.200
1.078070 411.700
1.095250 414.100
1.058680 416.600
1.127410 419.000
1.068380 421.400
1.126090 423.900
1.087320 426.300
1.112870 428.800
1.134020 431.200
1.097890 433.700
1.154730 436.100
1.094810 438.500
1.166180 441.000
1.126530 443.400
1.148560 445.900
1.154730 448.300
1.127850 450.700
1.192620 453.200
1.133580 455.600
1.197020 458.100
1.148560 460.500
1.186450 463.000
1.195260 465.400
1.168830 467.800
1.217730 470.300
1.158690 472.700
1.233150 475.200
1.185570 477.600
1.219050 480.000
1.213760 482.500
1.198340 484.900
1.255620 487.400
1.197460 489.800
1.261790 492.200
1.207600 494.700
1.255180 497.100
1.252970 499.600
1.237110 502.000
Ví dụ file .txt thu nhỏ của file .txt trên, mà chạy bình thường:
Mã:
-0.135030 -135.200
-0.138730 -132.800
-0.127370 -130.300
-0.132960 -127.900
-0.111820 -125.400
-0.108030 -123.000
-0.104410 -120.500
-0.098690 -118.100
-0.099790 -115.700
-0.075070 -113.200
-0.081990 -110.800
-0.068020 -108.300
-0.073400 -105.900
-0.059300 -103.500
-0.044850 -101.000
-0.050000 -98.600
-0.034970 -96.100
-0.044980 -93.700
-0.017380 -91.200
-0.020440 -88.800
-0.012050 -86.400
-0.008470 -83.900
-0.008110 -81.500
0.019230 -79.000
0.007110 -76.600
0.027510 -74.200
0.016190 -71.700
0.037040 -69.300
0.046920 -66.800
0.043220 -64.400
0.059700 -62.000
0.046610 -59.500
0.081020 -57.100
0.069610 -54.600
0.085250 -52.200
0.083180 -49.700
0.087760 -47.300
0.114370 -44.900
0.098820 -42.400
0.124280 -40.000
0.106220 -37.500
0.135610 -35.100
0.137550 -32.700
0.138250 -30.200
0.152740 -27.800
0.138780 -25.300
0.177240 -22.900
0.158780 -20.400
0.181690 -18.000
0.172440 -15.600
0.183670 -13.100
0.206930 -10.700
0.189710 -8.200
0.219840 -5.800
0.195080 -3.400
0.233020 -0.900
0.226140 1.500
0.233150 4.000
0.243630 6.400
0.231780 8.900
0.272010 11.300
0.246590 13.700
0.277910 16.200
0.259360 18.600
0.280600 21.100
0.295400 23.500
0.281130 25.900
0.307910 28.400
0.279540 30.800
0.324300 33.300
0.306550 35.700
0.323510 38.100
0.324830 40.600
0.318400 43.000
0.356950 45.500
0.328180 47.900
0.365450 50.400
0.338000 52.800
0.369460 55.200
0.374040 57.700
0.365980 60.100
0.391800 62.600
0.363290 65.000
0.414090 67.400
0.385890 69.900
0.412500 72.300
0.403740 74.800
0.406290 77.200
0.439770 79.700
0.409290 82.100
0.450260 84.500
0.414530 87.000
0.456430 89.400
0.448500 91.900
0.448940 94.300
0.468760 96.700
0.441450 99.200
0.494760 101.600
0.458190 104.100
0.495200 106.500
0.474050 108.900
0.487710 111.400
0.512820 113.800
0.484620 116.300
0.526920 118.700
0.485950 121.200
0.537050 123.600
0.517230 126.000
0.528240 128.500
0.538370 130.900
0.516790 133.400
0.569210 135.800
0.526920 138.200
0.570980 140.700
0.540580 143.100
0.567010 145.600
0.581990 148.000
0.559960 150.500
0.599610 152.900
0.556000 155.300
0.614150 157.800
0.582870 160.200
0.605780 162.700
0.604900 165.100
0.591240 167.500
0.639700 170.000
0.596090 172.400
Code trên mình đều test trên Code Blocks.
Mong các pro chỉ giáo vấn đề hiện đang là khó hiểu này [IMG]images/smilies/biggrin.png[/IMG]
View more random threads:
Bất chấp những lầm tưởng phổ quát, hồ hết những người có âm đạo đều khó lên đỉnh khi bị kích thích âm đạo. Tuy nhiên, điều đó không có tức thị nó không thể vui được! Việc xâm nhập vào âm đạo bằng...
Quý bà giải tỏa bằng việc kích...