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

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

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 04.11.2009, 18:46   #1
champion92
Пользователь
 
Регистрация: 28.10.2009
Сообщений: 14
По умолчанию Помогите написать программу на Си по строкам

Помогите написать программу:
Условие
Дана строка. Группы символов, разделенные пробелами (одним или несколькими) и не содержащие пробелов внутри себя, будем называть словами. Вывести слова, в которых первая буква слова входит в него еще один раз.



И еще вторая задача

Дана строка. Заменить в ней все строчные (латинские и русские) буквы соответствующими заглавными.
Я вот пробывал писать, подскажите пожалуйста , где есть ошибки

#include<conio.h>
#include<stdio.h>
#include<string.h>


int main ()
{

char stroka [255];
int n,p,i;


printf ( "vvedite stroky \n");
gets(stroka);
n=strlen(stroka);
for (i=0;i<n;i++)
{
if(stroka [i]>='a' && stroka [i]>='z')
stroka[i] += 100;

}



printf("Otvet %s\n",stroka);

getch ();
return 0;
}
champion92 вне форума Ответить с цитированием
Старый 04.11.2009, 20:13   #2
girkoff
Пользователь
 
Регистрация: 07.11.2008
Сообщений: 71
По умолчанию

Есть функции работающие с прописными и заглавными буквами, это islower(c)-(прописные) и issuper(c)-(заглавные), правда я не уверен работают ли они с русскими буквами...
И объясни что ты хотел сказать строчкой:
Код:
if(stroka [i]>='a' && stroka [i]>='z')
если решишь использовать мой совет, тогда можно написать примерно так:
Код:
if (islower(stroka[i]))
issuper(stroka[i]));
Если долго мучаться, что нибудь получится!!!

Последний раз редактировалось Sazary; 06.11.2009 в 03:18.
girkoff вне форума Ответить с цитированием
Старый 04.11.2009, 23:16   #3
Olejik
Форумчанин
 
Регистрация: 02.06.2009
Сообщений: 218
По умолчанию

Цитата:
Сообщение от girkoff Посмотреть сообщение
Есть функции работающие с прописными и заглавными буквами, это islower(c)-(прописные) и issuper(c)-(заглавные), правда я не уверен работают ли они с русскими буквами...
И объясни что ты хотел сказать строчкой:
Код:
if(stroka [i]>='a' && stroka [i]>='z')
должны работать, я использовал - работали
Olejik вне форума Ответить с цитированием
Старый 05.11.2009, 18:06   #4
popoff
Новичок
Джуниор
 
Регистрация: 05.11.2009
Сообщений: 1
По умолчанию

Код:
for (i=0;i<n;i++)
{
if(stroka [i]>='a' && stroka [i]>='z')
stroka[i] += 100;

}
Условие жрач!! такого ещё не видел!! А в цикл сразу можно вставить:

for (i=0;i<strlen(stroka);i++)

И пер N не надо!! Правда варнинг пропишет, но без внимания!!
И в цикл то что girkoff прописал вставь! =)
popoff вне форума Ответить с цитированием
Старый 05.11.2009, 18:11   #5
nazavrik
Форумчанин
 
Аватар для nazavrik
 
Регистрация: 01.09.2008
Сообщений: 178
По умолчанию

Цитата:
Сообщение от Olejik Посмотреть сообщение
должны работать, я использовал - работали
Этот кусок работать не будет

Код:
for (i=0;i<n;i++)
{
if(stroka [i]>='a' && stroka [i]<='z')
stroka[i] += 100;

}
Быть радикальным - значит понять вещь в её корне. К.Маркс
nazavrik вне форума Ответить с цитированием
Старый 05.11.2009, 18:16   #6
askerpro
Новичок
Джуниор
 
Регистрация: 17.09.2009
Сообщений: 45
По умолчанию

а что значит
Код:
%s\n
? =)
и как решить эту же задачу, если токо надо найти не просто 2ное вхождение символа, а чтобы эти символы стояли рядом?
askerpro вне форума Ответить с цитированием
Старый 05.11.2009, 18:20   #7
nazavrik
Форумчанин
 
Аватар для nazavrik
 
Регистрация: 01.09.2008
Сообщений: 178
По умолчанию

Цитата:
Сообщение от askerpro Посмотреть сообщение
а что значит
Код:
%s\n
? =)
и как решить эту же задачу, если токо надо найти не просто 2ное вхождение символа, а чтобы эти символы стояли рядом?
%s - выводим строку
\n - перевод каретки на следующую строку.
Быть радикальным - значит понять вещь в её корне. К.Маркс
nazavrik вне форума Ответить с цитированием
Старый 05.11.2009, 18:45   #8
counter
Участник клуба
 
Регистрация: 18.10.2008
Сообщений: 1,409
По умолчанию

Цитата:
Дана строка. Группы символов, разделенные пробелами (одним или несколькими) и не содержащие пробелов внутри себя, будем называть словами. Вывести слова, в которых первая буква слова входит в него еще один раз.
используйте strtok для выделения слов из строки

Цитата:
Дана строка. Заменить в ней все строчные (латинские и русские) буквы соответствующими заглавными.
для этого есть функция toupper, которая преобразует прописной символ к верхнему регистру

Цитата:
Условие жрач!! такого ещё не видел!! А в цикл сразу можно вставить:
for (i=0;i<strlen(stroka);i++)
popoff, сам-то понял, что сделал? ты собираешся на каждой итерации цикла длину строки считать?

Последний раз редактировалось counter; 05.11.2009 в 18:47.
counter вне форума Ответить с цитированием
Старый 11.11.2009, 16:33   #9
champion92
Пользователь
 
Регистрация: 28.10.2009
Сообщений: 14
По умолчанию

Ребят, я чуть не понял
Вот какое надо условие прописать чтобы сделать это задание
У меня проблема тока над кодом который должен Вывести слова, в которых первая буква слова входит в него еще один раз
Цитата:
Дана строка. Группы символов, разделенные пробелами (одним или несколькими) и не содержащие пробелов внутри себя, будем называть словами. Вывести слова, в которых первая буква слова входит в него еще один раз.
#include<conio.h>
#include<stdio.h>
#include<string.h>


int main ()
{

char stroka [255];
int n,p,i;


printf ( "vvedite stroky \n");
gets(stroka);
n=strlen(stroka);
for (i=0;i<n;i++)
{
if ();



}



printf("Otvet %s\n",stroka);

getch ();
return 0;
}
champion92 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Помогите написать программу Skoroxod Фриланс 2 05.03.2009 11:53
Помогите написать программу voher3 Фриланс 3 01.12.2008 10:57
Помогите написать программу!!!! Engine777 Помощь студентам 0 27.11.2007 23:15
помогите написать программу. ZixiT Общие вопросы Delphi 7 22.11.2006 11:05
помогите написать программу. egarri Общие вопросы C/C++ 1 12.11.2006 14:43