Технологии
Решено
Строки Си - вопрос №673145
Кто может объяснить тему «строки» ?
Задание:
Распечатать введенное предложение, удалив из него слова, которые состоят менее чем из n букв. Считать. что предложение – это последовательность слов с точкой в конце. Слово – последовательность символов, не принадлежащих символам – разделителям. Число букв n задать в командной строке.
Моя версии программы, которая не работает:
#include <string.h>
#include <stdio.h>
#include <conio.h>
int main()
{
unsigned int n;
char *find,*simvoli="
char text[]=«I like this programm becouse it likes me.»;
scanf("%u",&n);
find=strtok(text,find);
while(find)
if(strlen(find)<n)
printf("%s",find);
return 0;
}
Программу надо сделать чисто на Си, без использования возможностей Си++.
июнь 27, 2013 г.
-
Всего ответов: 1
-
#include <string.h><br />#include <stdio.h><br />#include <conio.h><br /><br />int main()<br /><br />{<br /><br /> unsigned int n;<br /><br /> char slova[100][20]={""};<br /><br /> char text[]="I like this programm becouse it likes me.";<br /><br /> scanf("%u",&n);<br /><br /> int i,j,ii;<br /> j=0;<br /> ii=0;<br /><br /> for(i=0;i<strlen(text);i++)<br /> {<br /> if(text[i]==' ')<br /> {<br /> ii++;<br /> j=0;<br /> }<br /> else<br /> {<br /> slova[ii][j]=text[i];<br /> j++;<br /> }<br /> if(text[i]=='.')<br /> {<br /> slova[ii][--j]='\0';<br /> break;<br /> }<br /> }<br /><br /> for(i=0;i<=ii;i++)<br /> {<br /> if(strlen(slova[i])>=n)<br /> {<br /> printf("%s ",slova[i]);<br /> }<br /> }<br /><br /> return 0;<br /><br />}
Лучший ответ по мнению автора
Похожие вопросы
При попытке компиляции кода на Visual Studio 2013 вылетает сообщение "Системе не удается найти указанный путь". Что это значит и что делать? Спасибо! ОС - Windows 7, 32 bit.
май 30, 2014 г.
В каком сегменте хранятся статические переменные? <p>В каком сегменте хранятся статические...
декабрь 28, 2012 г.