2014-05-20 7 views
-4

안녕하세요 도시, 날짜 및 온도가 포함 된 텍스트 파일이 있습니다. 특정 도시와 도시에서 온도를 어떻게 읽을 수 있습니까? 예를 들어 Alingsås 2014-05-14를 검색하면 13.81, 11.59 및 13.81이 필요합니다. 내가 갇혀있는 부분은 파일을 열고 도시와 날짜에 대한 변수를 넣은 후에입니다. 정보는 다음과 같이 텍스트 파일에 저장됩니다txt 파일의 특정 데이터 C

Alingsås; 
2014-05-14; 
13.81; 
11.59; 
13.81; 
2014-05-15; 
8.89; 
7.99; 
9.15; 
2014-05-16; 
6.2; 
5.07; 
6.58; 
2014-05-17; 
7.91; 
5.55; 
7.91; 
2014-05-18; 
7.76; 
5.95; 
7.76; 
2014-05-19; 
7.95; 
6.91; 
9.72; 
2014-05-20; 
18.45; 
12.92; 
18.45; 
Arboka; 
2014-05-14; 
9.55; 
4.53; 
10.66; 
2014-05-15; 
6.33; 
1.5; 
9.37; 
2014-05-16; 
8.85; 
3.4; 
12.08; 
2014-05-17; 
14.01; 
4.8; 
15.4; 
2014-05-18; 
14.16; 
6.35; 
17.23; 
2014-05-19; 
21.39; 
14.57; 
21.39; 
2014-05-20; 
23.34; 
14.82; 
23.34; 

내 코드는 지금까지

#include <stdio.h> 
#include <conio.h> 
#include <stdlib.h> 
#include <locale.h> 
#include <string.h> 




int main(void) 
{ 
    FILE * fp; 
    char c; 

    // open file 

    fp =fopen("C:\\Users\\Karl\\Desktop\\info.txt", "r"); 

    if (fp != NULL) 
    {  char city[10] = "Ålingsås"; 

     int temp1; 
    int temp2; 

     int temp3; 
     char date[13] = "2014-05-14"; 
+3

코드를 추가하면 "내가 붙어있는 부분"을 볼 수 있습니다. –

+0

** ** 지금까지 ** 수행 한 것을 보여주십시오. 우리는 숙제를하지 않습니다. btw : 누가 데이터 형식을 설계해야하는지 ... –

+0

'(num = 0; fgets (buff, sizeof buff, stdin); num ++) switch (num % 5) case 0 : ... case 1 : ... ...}' – joop

답변

2

하나의 솔루션이 도시의 이름을 포함하는 구조를 만드는 것입니다, 그리고 다른 구조에 대한 포인터 "배열"(힙에 동적으로 할당 됨)이고 각 항목에는 데이터와 세 가지 온도가 포함됩니다.

그런 다음 파일에서 한 번에 한 줄씩 읽은 다음 입력을 자릅니다 (앞뒤 공백이 있으면 제거하고 위의 구조를 만듭니다). 현재 줄이 숫자로 시작하면 날짜이고 온도에 대한 세 줄을 더 읽고 구조를 채 웁니다. 현재 줄이 숫자로 시작하지 않으면 새 도시가 생기고 새 도시 구조를 만듭니다.

관련 문제