![]() |
|
|
![]()
|
|
| Cvetok |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 6 Регистрация: 13.5.2008 Репутация: нет Всего: нет |
Есть программа
void main (void) { T_Table Toot = {{"", 4},{"m1", 1},{"m2", 2},{"m3", 3},{"m4", 4}}; //AfficherTable (Toot); int i=MettreAJourTable( ); } int MettreAJourTable () { FILE*fp; T_Table T = {{"", 0}}; char*p; char*Sep="0123456789.;:,!?/+-*#'\"\n\t()[] "; char Filename[MAXSIZE+1]; char Ligne[MAXLENGTH+1]; printf("Fichier: "); gets(Filename); fp=fopen(Filename,"rt"); printf("\n"); if (fp==NULL) { printf("Impossible d'ouvrir le fichier %s \n", Filename); exit (1); } while(fgets(Ligne,sizeof Ligne,fp)!=NULL) { p=strtok(Ligne,Sep); while(p!=NULL) { MaJ(T,p); p=strtok(NULL,Sep); } } fclose(fp); AfficherTable(T); printf("\n"); return EXIT_SUCCESS; } int AfficherTable (T_Table T) { int i; int l=0; for (i=1; i<=T[0].nb; i++) { printf("%s\t%d \n",T[i].mot,T[i].nb); } printf("\n"); return EXIT_SUCCESS; } int Position (T_Table T, char * p) { int i; for (i=1; i<=T[0].nb; i++) { if (strcmp(T[i].mot,p)==0) return i; return 0; } return 0; } void MaJ (T_Table T, char * p) { int i; int laPosition = Position (T, p); if (laPosition == 0) { T[0].nb++; T[T[0].nb].mot=strdup(p); T[T[0].nb].nb=1; } else T[laPosition].nb++; } функция MettreAJourTable открывает текстовый файл и анализирует текст в нём, разделяя его на отдельные слова и выводя их в столбик. функция AfficherTable всё это дело распечатывает функция Position считает, сколько раз каждое слово встречается в тексте (статистика). Результатом программы является текст из файла со словами, выведенными в столбик (каждое слово пишется 1 раз вне зависимости от кол-ва его появлений в исходном тексте) и статистикой кол-ва этих слов в тексте напротив. Требуется переделать эту программу так, чтобы слова в тексте выводились в алфавитном порядке. Помогите, пожалуста, бедной девушке! Заранее огромное спасибо))) |
|||
|
||||
![]()
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Visual C++/MFC/WTL | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |