![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Новичок
Джуниор
Регистрация: 08.06.2011
Сообщений: 2
|
![]()
#include <stdio.h>
#include <stdlib.h> #include <string.h> struct item { char *world; int count; struct item *next; }; struct item *head=NULL; struct item *p=NULL; struct item *q=NULL; char S[50]; char k; int d=1; void chtenya( FILE *f)//функция для чтения слова { printf ("chtenya\n"); int j=0; while (j<=50) { S[j]=0; j++; } j=0; while ((k<='A' || k>='Z')&&(k<='a' || k>='z')&&(d==1)) { d=fscanf(f,"%c",k); printf("opa\n"); } //проверка вдруг полсе очередного слова встретися что то типо такого anyting"- and he ... while (((k>='A' && t<='Z')||(k>='a'&& k<='z'))&& (d==1)) { printf ("%c\n",k); S[j]=k; d=fscanf(f,"%c",&k); j++; } } int main () { int flag=0; int i=0; FILE *f=fopen("slova.txt","r"); if (f==NULL) { printf ("file not open\n"); return 0; } fscanf (f,"%c",&k); // для простоты считаю что первый символ текста это буква S[i]=k; i++; while (flag!=1) { fscanf (f,"%c",&k); if ((k<='A' || k>='Z')&&(k<='a' || k>='z')) flag=1; else S[i]=k; i++; } head= malloc (sizeof(struct item)); head->world=malloc (strlen(S)+1); strcpy(head->world,S); head->count=1; head->next=NULL; while (d==1) { printf("while\n"); chtenya(f); for (p=head;p;p=p->next) { if (strcmp(p->world,S)==0) { p->count++; break; } } if (!p) { q=malloc(sizeof(struct item)); q->next=head; strcpy(q->world,S); q->count=1; head=q; } } for (p=head;p;p=p->next) { printf ("%s-%d\n",p->world;p->count); } fclose (f); } Программа должна открывать фаил считать сколько каждого слова в тексте, выдаёт ошибку сегментирования но не пойму почему |
![]() |
![]() |
![]() |
#2 |
Форумчанин
Регистрация: 07.10.2008
Сообщений: 213
|
![]() Код:
|
![]() |
![]() |
![]() |
#3 |
Новичок
Джуниор
Регистрация: 08.06.2011
Сообщений: 2
|
![]()
Всё равно ошибка сегминтирования
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Списки. | Pavel_4a-4anax | Помощь студентам | 0 | 01.06.2011 15:38 |
Где ошибка в программе? Списки. Стеки. Паскаль | AHD | Помощь студентам | 0 | 10.12.2010 14:25 |
списки | Astro4ka | Паскаль, Turbo Pascal, PascalABC.NET | 0 | 25.04.2010 17:53 |
Списки | Bremlin | Microsoft Office Excel | 10 | 04.11.2008 15:13 |