Предмет: Информатика,
автор: Lamberg125
Помогите написать программу на Си. Дана строка. Преобразовать в ней все строчные буквы (как латинские, так и русские) в прописные, а прописные — в строчные.
Ответы
Автор ответа:
0
#include <iostream>
#include <cstring>
using namespace std;
int main(){
//---------------------
char S[256];
cin >> S;
int i,n;
n=strlen(S);
for(i=0;i<=n;i++){
if (isupper(S[i])==true){
S[i]=tolower(S[i]);
}else{
S[i]=toupper(S[i]);
}
}
cout << S;
//---------------------
return 0;
}
#include <cstring>
using namespace std;
int main(){
//---------------------
char S[256];
cin >> S;
int i,n;
n=strlen(S);
for(i=0;i<=n;i++){
if (isupper(S[i])==true){
S[i]=tolower(S[i]);
}else{
S[i]=toupper(S[i]);
}
}
cout << S;
//---------------------
return 0;
}
Автор ответа:
0
isupper(S[i]) работает только для латинских букв, для кирилицы не работает, то же самое насчет tolower и toupper, кроме того, cin>>S считает строку S только до первого пробела.
Похожие вопросы
Предмет: Українська мова,
автор: burdelnadara293
Предмет: Русский язык,
автор: vlebedihina010392
Предмет: География,
автор: AndreyKirushko
Предмет: Математика,
автор: Kirill23033
Предмет: Математика,
автор: machavladyshevs