Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | ||
|
Задача 5. В Edit1 заменить все пробелы на символы подчеркивания.
String S=Edit1->Text;
for (int i=1; i<=S.Length(); i++)
if (S[i]==' ') S[i]='_';
Edit1->Text=S;
Задача 6. Заменить в строке все слова "NO" на "YES" (заменять только целые слова):
s=" "+s+" "; // иначе 1-е и последнее слова не узнает
while(i=s.Pos(" NO ")) { //Пока Pos!=0, i присв. Pos
s.Delete(i,4);
s.Insert(" YES ",i);
}
s=s.SubString(2,s.Length()-2);//теперь удаляем пробелы
Задача 7. Заменить в строке все слова "NO" (без учета регистра) на "YES" (большими буквами); заменять только целые слова:
s=" "+s+" "; // иначе 1-е и последнее слова не узнает
while(i=AnsiUpperCase(s).Pos(" NO ")) {
s.Delete(i,4);
s.Insert(" YES ",i);
}
s=s.SubString(2,s.Length()-2);//теперь удаляем пробелы
Задача 8. Ввести строку, состоящую из слов, разделенных пробелами. Вывести эти слова в обратном порядке, при этом самое первое по алфавиту (независимо от регистра) из них записать только большими буквами.
String s,t,r,w[90];
int i,j,n=0,k;
s=Edit1->Text+" ";
for (i=1; i<=s.Length(); i++)
if (s[i]!=' ')
t+=s[i];
else
if (t!="") {
w[n++]=t;
t="";
}
for (k=i=0; i<n; i++)
if (AnsiUpperCase(w[i])< AnsiUpperCase(w[k])) k=i;
w[k]=AnsiUpperCase(w[k]);
for (i=n-1; i>=0; i--)
r+=w[i]+(i==0? "": " ");
Edit1->Text=r;
Преобразования строковых типов.
Дата публикования: 2014-11-04; Прочитано: 287 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!