Dukaliss
Newbie | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору Вот такое дело, сделал прогу работает как надо, только вот не думаю чт опримут с sztok может кто поможет как тут без sztok сделать =( Задание вы можете увидеть на странице 147 в верху самом, только надо не так как делал groomly а просто заменить сзток и сделать без него. Код: #include <stdlib.h> #include <conio.h> #include <stdio.h> #include <string.h> void main() { int a,i=0, j=0, size=0, k=0, s=0; const char test[]="БВГДЖЗЙКЛМНПРСТФХЦЧШЩбвгджзйклмнпрстфхцчшщ"; char tokens[] = ";,:.- )(\t\n\""; char * szTok, *szText, tmp, *sort; FILE * f; f=fopen("1.txt", "r"); while(!feof(f)) { fscanf(f,"%c", &tmp); i++; }size=i-1; szText = (char*)malloc(size*sizeof(char)); sort = (char*)malloc(size*sizeof(char)); strcpy(sort, ""); i=0;fseek(f,0,SEEK_SET); while(!feof(f)) { fscanf(f,"%c", &szText[i]); i++; } szText[size]='\0'; fclose(f);size=0; szTok = strtok(szText, tokens); while ( szTok != NULL ) { a=0;i=0;j=0; a=strlen(szTok); while(j<42) { if( *(szTok) == test[j] ) { while(i<42){ if ( *(szTok+a-1) == test[i]) { strcat(sort, szTok); strcat(sort, ", "); size=a+size+2; k++; } i++; } }j++; } szTok = strtok( NULL, tokens ); } FILE *f2; f2=fopen("2.txt", "rwb"); fwrite(sort, sizeof(char), size, f2); while(!feof(f)) { fread(sort,sizeof(char),size,f2); } for(i=0;i<size;i++){ printf("%c", *(sort+i));} fclose(f2); } | и еще почему тут Код: while(!feof(f)) { fscanf(f,"%c", &tmp); i++; }size=i-1; | приходиться писать size=i-1 ? еси без него вылезает какой то левый символ, з.Ы это я читаю файл что бы знать кол-во элементов и динамически выделить память. незнаю че -1... З.Ы.ы у меня на выходе должен быть типимизированый файл правильно ли я сделал? |