Считывание из файла по символьно - C (СИ)
Формулировка задачи:
Добрый вечер!
Буду благодарна за любое содействие=)
нужно считать из файла цифры(основная проблема у меня считывается 500 как 5,0,0 а надо ,500,) и записать в структуру в файле примерно написано так(первый элемент надо записать в структуру *[i].номер, следующие 4 значения в структуру
*[i].м, )переходим на лругую строчку (первый элемент надо записать в структуру *[i].л, следующие 4 значения в структуру
*[i].х ) и так далее
1 500 700 800 1100
0 580 480 390 300
-10 680 505 500 473
-20 750 560 640 910
-30 845 830 850 930
я тут набросала кое- что
#include <stdio.h> #include <stdlib.h> #include <string.h> #define FILENAME "1.txt" #define SIZE 256 #define in 1; #define out 0; struct g {int numb; int v; int l; int h; } *group; int main(void) { char buf[SIZE] = { 0 }, *text = NULL; FILE* file = fopen("1.txt", "rt"); size_t i,n = 0; int numWords=0; int readingWord =0; char s[100]; int sl,sm,sn,save; char symb; sl=sm=sn=0; text = (char*)calloc(1, sizeof(char)); while (fgets(buf, SIZE, file) != NULL) { if (i % 2 == 0) text = (char*)realloc(text, SIZE * (i + 2)); while(1) { symb=fgetc(list); if(feof(list)!='\n') break; if(symb!='\t') { } } } // strcat(text, buf); } while printf("%s", text); fclose(file); free(text); return 0; }
Решение задачи: «Считывание из файла по символьно»
textual
Листинг программы
#include <stdio.h> int flgEOF; int GetNumber(FILE *fi) { int sgn=1,s=0; char c; while (1) { c=fgetc(fi); if (c==EOF) { flgEOF=-1; return 0; } if (c != ' ') break; } if (c == '-') sgn=-1; else s=c-'0'; while (1) { c=fgetc(fi); if (c==EOF) { flgEOF=-1; return 0; } if ((c == ' ') || (c == 10) || (c == 13)) break; s=s*10+(c-'0'); } return s*sgn; } int main(int argc, char* argv[]) { FILE *fi; int r; flgEOF=0; if ((fi=fopen("123.txt","r")) == NULL) { printf("Error by open\n"); return -1; } else { while (1) { if (flgEOF) break; r=GetNumber(fi); printf("%d \n",r); } fclose(fi); } return 0; }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д