![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Форумчанин
Регистрация: 01.11.2016
Сообщений: 110
|
![]()
Ввести строку, вывести только слова, заканчивающиеся на гласную букву.
Напишите, пожалуйста, с комментарием |
![]() |
![]() |
![]() |
#2 |
Пользователь
Регистрация: 25.10.2016
Сообщений: 15
|
![]() Код:
|
![]() |
![]() |
![]() |
#3 |
Форумчанин
Регистрация: 01.11.2016
Сообщений: 110
|
![]()
Мне нельзя использовать функцию strtok(), если и можно то ее расписать надо
Что в этой ситуации делать? |
![]() |
![]() |
![]() |
#4 |
Пользователь
Регистрация: 25.10.2016
Сообщений: 15
|
![]()
В такой ситуации надо писать нормально условия задания в первом сообщении.
|
![]() |
![]() |
![]() |
#5 |
Форумчанин
Регистрация: 01.11.2016
Сообщений: 110
|
![]()
Алгоритм: for-бегает по строке
1.пропустить все пробелы , пока str[i]==пробел -двигаем индекс индекс-начало слова 2.пока str[i]!=пробелу или str[i]!=\0 индекс-конец слова 3. пробежали по строке и сравниваем конец слова с гласными 3.1если гласная , то вводим По такому алгоритму это сделать можно? |
![]() |
![]() |
![]() |
#6 |
Форумчанин
Регистрация: 01.11.2016
Сообщений: 110
|
![]()
#include <stdio.h>
int main() { //Объявляем массив символов и считываем его char stroka[255]; printf("Enter: "); gets(stroka); //Находим количество символов в строке int N=0, i=0; while(stroka[i]!='\0') { i++; N++; } //Проходим по строке. Если найдена гласная буква, то смотрим, где она распологается. В зависимости от этого, ищем целиком слово и выводим его, или нет. int i, j, k; for(i=0; i<N; i++) { if(stroka[i]=='A' || stroka[i]=='a' || stroka[i]=='O' || stroka[i]=='o' || stroka[i]=='E' || stroka[i]=='e' || stroka[i]=='I' || stroka[i]=='i' || stroka[i]=='U' || stroka[i]=='u') { if(i!=N-1) { if(stroka[i+1]==' ') { j = i; while(j) { if(stroka[j] == ' ') break; j--; } if(j==0) { for(k=j; k<i+1; k++) { printf("%c", stroka[k]); } printf(" "); } else { for(k=j+1; k<i+1; k++) { printf("%c", stroka[k]); } printf(" "); } } } else { j = i; while(j) { if(stroka[j] == ' ') break; j--; } if(j==0) { for(k=j; k<i+1; k++) { printf("%c", stroka[k]); } printf(" "); } else { for(k=j+1; k<i+1; k++) { printf("%c", stroka[k]); } printf(" "); } } } } return 0; } |
![]() |
![]() |
![]() |
#7 |
Форумчанин
Регистрация: 01.11.2016
Сообщений: 110
|
![]()
Прога работает, но одну букву не выводит
|
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Ввести строку. Вывести только различные встречающиеся отрицательные действительные числа.(программа на си) | Кристина1998 | Помощь студентам | 0 | 07.11.2016 17:38 |
Java. Найти в тексте слова, заканчивающиеся на заданную букву. Помогите, написать комментарии к программе | lenulichkal | Помощь студентам | 1 | 05.12.2014 08:36 |
(turbo pascal) Ввести строку. Определить количество слов, содержащих букву Z | lexa_soad | Помощь студентам | 0 | 04.12.2011 19:31 |
определить количество слов в тексте, оканчивающихся на гласную букву | Lellya | Помощь студентам | 0 | 10.04.2011 23:15 |
Вывести все слова входного потока, заканчивающиеся заданной последовательностью символов | fiaftw | Общие вопросы C/C++ | 2 | 03.02.2009 00:44 |