Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 11.01.2011, 21:17   #11
noname1
Пользователь
 
Регистрация: 11.01.2011
Сообщений: 10
По умолчанию

C:\da\da.cpp(14) : error C2065: 'strlen' : undeclared identifier

как обьявить? Со строками вообще не умею(
noname1 вне форума Ответить с цитированием
Старый 11.01.2011, 21:21   #12
Hacker19_90
Delphi Warrior
Старожил
 
Аватар для Hacker19_90
 
Регистрация: 15.08.2008
Сообщений: 2,502
По умолчанию

Код:
#include <string.h>
Mess with the best, die like the rest. (с) Hackers
Лабораторные, курсовые на Delphi\Pascal\C++
ya.flex-freelance@yandex.ru Icq - 636-954-303
Hacker19_90 вне форума Ответить с цитированием
Старый 11.01.2011, 21:27   #13
noname1
Пользователь
 
Регистрация: 11.01.2011
Сообщений: 10
По умолчанию

Спасибо, вроде работает.
Только единственное если строка содержит одни цифры, то она не выводится, например 22.
Я думаю это не столь критично, препод думаю не заметит, он сам не особо разбирается), но если знаешь как, подскажи.
noname1 вне форума Ответить с цитированием
Старый 11.01.2011, 21:33   #14
Hacker19_90
Delphi Warrior
Старожил
 
Аватар для Hacker19_90
 
Регистрация: 15.08.2008
Сообщений: 2,502
По умолчанию

Код:
int main()
{
	FILE *f=fopen("c:\\temp\\q.txt","r");
	char s[255];
	while(!feof(f))
        {
		fscanf(f,"%s",&s);
            if (strlen(s) == 2)
                {
                     if( (isdigit(s[0])) && (isdigit(s[1])))
                     {
                          printf("%s\n",s);   
                     }      
                }
                if (strlen (s) > 2) 
		for(int i=2; i < strlen(s); i++)
                {      //Проверка по ходу строки
			if( isdigit(s[i-2]) && isdigit(s[i-1]) && (isalpha(s[i])) )
                        {
				printf("%s\n",s);break;
			}
                        //Проверка на два конечных, если не было выхода из цикла
                        if (i == (strlen(s) - 1))
                        {
                             if ( (isalpha(s[i-2])) && (isdigit(s[i-1])) && (isdigit(s[i])) )
                             {
                                   printf("%s\n",s);break;
                              }
                        }
                 }
		
	}
	fclose(f);
	getchar();
	return 0;
}
Прошу прощения за свои редактирования!!! Это окончательный вариант
Mess with the best, die like the rest. (с) Hackers
Лабораторные, курсовые на Delphi\Pascal\C++
ya.flex-freelance@yandex.ru Icq - 636-954-303

Последний раз редактировалось Hacker19_90; 11.01.2011 в 21:41.
Hacker19_90 вне форума Ответить с цитированием
Старый 11.01.2011, 21:56   #15
noname1
Пользователь
 
Регистрация: 11.01.2011
Сообщений: 10
По умолчанию

Хм, странно, все равно 34 например не выводит, все равно спс

ща попробую с редактированием

Последний раз редактировалось noname1; 11.01.2011 в 22:01.
noname1 вне форума Ответить с цитированием
Старый 11.01.2011, 22:02   #16
noname1
Пользователь
 
Регистрация: 11.01.2011
Сообщений: 10
По умолчанию

Все, работает!!! Большое спасибо тебе
noname1 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Работа со строками Blond_89 Паскаль, Turbo Pascal, PascalABC.NET 6 27.12.2010 19:33
Работа со строками immortal12388 Помощь студентам 23 29.11.2010 16:30
Работа с матрицами (норма матрицы, работа со строками) Neitrosha Помощь студентам 1 26.11.2010 20:19
Работа со строками. ViNcHeStEr Помощь студентам 6 29.06.2008 08:14