Как быстро выучить стихотворение наизусть? Запоминание стихов является стандартным заданием во многих школах.
Как научится читать по диагонали? Скорость чтения зависит от скорости восприятия каждого отдельного слова в тексте.
Как быстро и эффективно исправить почерк? Люди часто предполагают, что каллиграфия и почерк являются синонимами, но это не так.
Как научится говорить грамотно и правильно? Общение на хорошем, уверенном и естественном русском языке является достижимой целью.
- Обратная связь
- Правила сайта
Источник: www.soloby.ru
Определение самого длинного слова в строке
Язык Си. Найти самое длинное слово в стpоке символов, перевернуть его и вывести текст
На языке Си. Найти самое длинное слово, перевернуть его и вставить обратно. Программа только находит длинное слово, Введите текст: Привет самый большой мир Самое длинное слово: большой Доделать ее, чтобы она, это слово перевернуло и вставило обратно Введите текст: Привет самый большой мир Самое длинное слово: большой Переделанный текст: Привет самый йошьлоб мир
#include #include #include main() < system(«chcp 1251»); // Переходим в консоли на русский язык setlocale(LC_ALL, «Rus»);//Подключение рус.яз. char s[100]; // Массив символов int i, id, max, count, len; // Создаем переменные. printf(«nВведите текст:n»); // Выводим сообщение. gets(s); // Запись введенного слова в массив «s» len = strlen(s); max = 0; // Длина самого длинного слова // Индекс начала самого длинного слова count = 0; for (i=0; imax) < max = count; — count; >count = 0; > if (count > max) < // Проверка последнего слова max = count; — count; >max += id; // Сложение, совмещённое с присваиванием printf(«nСамое длинное слово:n»); // Выводим сообщение. for (i=id; i
Отслеживать
задан 5 янв 2021 в 15:25
1 2 2 бронзовых знака
Вот у вас ищется max и id — так используйте их.
5 янв 2021 в 15:55
Если вам помог мой ответ, то примите его пожалуйста как «Правильный ответ», нажав на галочку слева от ответа, или напишите вопросы, которые у вас есть ко мне и я обязательно на них отвечу 🙂
Источник: ru.stackoverflow.com
10 7 Найти самое длинное слово в строке
Программа найти самое длинное слово
не представляю что написать в дополнительную функцию.
вот начало должно быть примерно такими.
void sds(char m[255], int ns, int ks)
>
Участник клуба Подтвердите свой е-майл
Регистрация: 19.11.2007
Сообщений: 1,022
Думаю сам догадаешся как в функцией сделать.
#include #include #include int main() < clrscr(); char s[1024]; char *word[100]; char *tmp1,*max_s,*simv=»., «; int max=0; gets(s); tmp1=strtok(s,simv); int k=0; while (tmp1)< if(tmp1)< word[k]=tmp1; k++; >tmp1=strtok(NULL,simv); > max=strlen(word[0]); for (int i=0;imax) < max=strlen(word[i]); max_s=word[i]; >printf («%s»,max_s); getch(); return 0; >
Пользователь
Регистрация: 20.10.2008
Сообщений: 25
вот вроде задумка понятно, прога компилится даже, но выводит ерунду ))
#include #include #include int main() < clrscr(); char *s=; char *word[100]; char *tmp1, *sds, *simv=». «; int max=0; gets(s); tmp1=strtok(s,simv); int k=0; while (tmp1) < if(tmp1) < word[k]=tmp1; k++; >tmp1=strtok(NULL,simv); > max=strlen(word[0]); for (int i=0;imax) < max=strlen(word[i]); sds=word[i]; >printf («%s»,sds); getch(); return 0; >
Последний раз редактировалось ManInBlack; 12.01.2009 в 00:06 .
Пользователь
Регистрация: 20.10.2008
Сообщений: 25
выяснил ,что мне нельзя было использовать strtok, пришлось полностью переделать, вот теперь не пойму в чем ошибка, помогите исправить!
#include #include void funk(char s[255], int max, int min); int main() < clrscr(); char s[255]=; int km; //konec massiva int i=0; int nl=0, kl=0; //nachalo i konec leksem char dl[255]; //dlinaya leksema while(1) < if(s[i]==’.’) < km=i-1; break; >i++;> for(i=0; i getch(); > void funk(char s[255], int kl, int nl) < int x=0; for(int i=nl; ix) < x=kl-nl; dl=s[i]; >printf(«%c», dl); >
Пользователь
Регистрация: 20.10.2008
Сообщений: 25
ну кто-нибудь подскажите, что сделать. пожалуйста
Участник клуба Подтвердите свой е-майл
Регистрация: 19.11.2007
Сообщений: 1,022
Вам нужно было вывести самое длинное слово. И что код который я прислал не выводит? Как он может выводить ерунду. Аргументируйте.
Пользователь
Регистрация: 20.10.2008
Сообщений: 25
Вам нужно было вывести самое длинное слово. И что код который я прислал не выводит? Как он может выводить ерунду. Аргументируйте.
если бы я знал в чем проблема. вот при вводе этого кода, результат получается примерно, как на картинке, но каждый раз разный.
(может от компилятора как-то зависет Borland C++ V2.0)
#include #include #include int main() < clrscr(); char *s=; char *word[100]; char *tmp1, *sds, *simv=». «; int max=0; gets(s); tmp1=strtok(s,simv); int k=0; while (tmp1) < if(tmp1) < word[k]=tmp1; k++; >tmp1=strtok(NULL,simv); > max=strlen(word[0]); for (int i=0;imax) < max=strlen(word[i]); sds=word[i]; >printf («%s»,sds); getch(); return 0; >
Linux C++ Qt ARM
Регистрация: 30.11.2008
Сообщений: 3,030
Скорее всего ты вводил кирилицу.(она не работает в консольных приложениях, точнее с ней очень много заморочек)
Проверь как работает с латиницей, если с ней то же самое, то программа не рабочая, если нет, значит все нормально.
У меня этот код выдает какие-то ошибки, связанные с памятью (толи чтения, толи записи).
Перезапустил компилятор — пашет, хотя с кирилицей, как и положено, трудности.
Компилятор Borland C++ 5.2
Дилетант широкого профиля.
Источник: www.programmersforum.ru