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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 20.05.2009, 00:42   #1
Саня7278
 
Регистрация: 18.12.2008
Сообщений: 4
Вопрос все строчные буквы латинского алфавита заменить прописными.

#include<iostream.h>
#include<string.h>
#include<conio.h>
void main(void)
{
char oldstr[128];
char newstr[128];
cout << " enter string, press <Enter> " << endl;
cin. getline(oldstr,sizeof(oldstr),'\n') ;
cout << "\ninput:" <<oldstr << endl;
for(int i=strlen(oldstr);i>=0;i--){
if(oldstr[i]==*strlwr(oldstr)){
*strupr(oldstr);
newstr[i]=oldstr[i];}
else
newstr[i]=oldstr[i];
}
cout<<newstr;
getch();

}
Саня7278 вне форума Ответить с цитированием
Старый 20.05.2009, 01:05   #2
SunKnight
Участник клуба Подтвердите свой е-майл
 
Аватар для SunKnight
 
Регистрация: 14.12.2007
Сообщений: 1,434
По умолчанию

char *strlwr(char *s); - преобразует буквы верхнего регистра (А-Z) строки s в буквы нижнего регистра (a-z). Другие символы не изменяются. Функция strlwr() возвращает указатель на строку s.
Проповедую design patterns, верую в MVC, доверяю eXtrime programming.
SunKnight вне форума Ответить с цитированием
Старый 20.05.2009, 16:27   #3
Саня7278
 
Регистрация: 18.12.2008
Сообщений: 4
По умолчанию

не понял, как не пробовал, меняет только букву введённую первой, остальные не трогает.
Саня7278 вне форума Ответить с цитированием
Старый 20.05.2009, 19:47   #4
SunKnight
Участник клуба Подтвердите свой е-майл
 
Аватар для SunKnight
 
Регистрация: 14.12.2007
Сообщений: 1,434
По умолчанию

Цитата:
не понял, как не пробовал, меняет только букву введённую первой, остальные не трогает.
Правильно, в функцию мы передаем указатель на символ.
Что бы всю строку, нужно организовать цикл и перебирать все символы строки.
Проповедую design patterns, верую в MVC, доверяю eXtrime programming.
SunKnight вне форума Ответить с цитированием
Старый 20.05.2009, 23:35   #5
Саня7278
 
Регистрация: 18.12.2008
Сообщений: 4
По умолчанию

и как мне это сделать???
Саня7278 вне форума Ответить с цитированием
Старый 20.05.2009, 23:52   #6
SunKnight
Участник клуба Подтвердите свой е-майл
 
Аватар для SunKnight
 
Регистрация: 14.12.2007
Сообщений: 1,434
По умолчанию

Код:
int main(int argc, char *argv[])
{ 
	char oldstr[128];
	char newstr[128];
	printf("enter string, press <Enter>\n");
	gets(oldstr);
	int cout=0;
	while(oldstr[cout++]!='\0')
			printf("%c", *strlwr(&oldstr[cout]));
	printf("\nExit");
	getch();
	return 0;
}
Проповедую design patterns, верую в MVC, доверяю eXtrime programming.
SunKnight вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
В заданной строке символов заменить все первые буквы слов на заглавные NV-salt Общие вопросы C/C++ 4 05.04.2009 18:41
Строчные буквы в заглавные и наоборот Delphi 7 tarakan1983 Помощь студентам 3 20.03.2009 14:15
Переставить все буквы латинского алфавита в начало строки в порядке следования. zaq2000 Паскаль, Turbo Pascal, PascalABC.NET 17 18.12.2008 23:42
дан текстовый массив из 200 букв. Выстроить в алфавитном порядке все строчные буквы Тина Помощь студентам 6 02.07.2008 22:53
процедура, которая выводит все слова, начинающиеся с согласных букв латинского алфавита. sergeyfsd Паскаль, Turbo Pascal, PascalABC.NET 6 21.02.2008 22:29