Имя пользователя:
Пароль:  
Помощь | Регистрация | Забыли пароль?  

Название темы: Сортировка в файле
Показать сообщение отдельно

Ветеран


Сообщения: 1404
Благодарности: 135

Профиль | Отправить PM | Цитировать


На чистом С без WinAPI

Код: Выделить весь код
#include <stdio.h>
int main()
{ 
FILE *in;
char* d="try.c";
if((in = fopen(d,"rt"))==NULL)
   {
     fprintf(stderr, "Не могу открыть файл \n");
   }
while(!feof(in)){
    fputc(fgetc(in), stdout);
   }
fclose(in);
return(0);
}
Текст на каком языке и в какой кодировке?

Если текст на латинице, то буквы можно непосредственно сравнивать. ('a'>'b')
Если русский, то нужно сопоставить каждой букве числовой код.
Представить каждое слово в виде массива чисел. По порядку сравнивать элементы массива между собой пока точно не станет ясно, что начальные цифры одного меньше другого. и записывать в нужном порядке в новый массив.
Затем вернуть из чисел обратно в символьный вид. Как записывать в файл или читать из файла см. выше


Вместо new в чистом С используется функция malloc.
Код: Выделить весь код
#include<stdio.h>
#include<string.h>
#include<alloc.h>
#include<process.h>

int main(void)
{
   char *str;
   /* выделить память под строку */
   if((str = malloc(10)) == NULL)
   {
      printf("Недостаточно памяти\n");
      exit(1); /* завершение с кодом ошибки */
   }
   /* скопировать в строку "Hello" */
   strcpy(str,"Hello");
   /* вывести строку */
   printf("Строка: %s\n",str);
   /* освободить память */
   free(str);
   return 0;
}

-------
Ehhh.. what's up, doc?..


Отправлено: 19:28, 09-07-2008 | #4

Название темы: Сортировка в файле