Помогите написать программу ** Си. Дана строка. Преобразовать в ней все строчные буквы...

0 голосов
120 просмотров

Помогите написать программу на Си. Дана строка. Преобразовать в ней все строчные буквы (как латинские, так и русские) в прописные, а прописные — в строчные.


Информатика (47 баллов) | 120 просмотров
Дан 1 ответ
0 голосов

#include
#include
using namespace std;
int main(){
//---------------------
char S[256];
cin >> S;

int i,n;

n=strlen(S);

for(i=0;i<=n;i++){</span>
if (isupper(S[i])==true){

S[i]=tolower(S[i]);

}else{

S[i]=toupper(S[i]);
}
}
cout << S;<br>
//---------------------
return 0;
}

(1.6k баллов)
0

isupper(S[i]) работает только для латинских букв, для кирилицы не работает, то же самое насчет tolower и toupper, кроме того, cin>>S считает строку S только до первого пробела.