Заменить строчные буквы на заглавные - C (СИ)
Формулировка задачи:
после комбинаций :точка и ли пробел точка
void main() { char s[80]; int r; r=0; while (s[r]!='\0') { if (s[r]=='.') { if (s[r+1]==' ') { if ((s[r+2]>=97)&&(s[r+2]<=122)) { s[r+2]=toupper(s[r+2]); r++; } else r++; } if ((s[r+1]>=97)&&(s[r+1]<=122)) { s[r+1]=toupper(s[r+1]); r++; } else r++; } else r++; } fprintf(fout,"%s",s); }
Решение задачи: «Заменить строчные буквы на заглавные»
textual
Листинг программы
#include <stdio.h> #include <wchar.h> #include <locale.h> #include <assert.h> int main(void) { wchar_t buf[BUFSIZ], * p; assert(setlocale(LC_ALL, "ru_RU.UTF-8")); while ( printf("Строка: ") && fgetws(buf, BUFSIZ, stdin) && *buf != L'\n' ) { for ( p = buf; *p != L'\0'; ++p ) *p = towupper(*p); printf("ЗАГЛАВНЫМИ: %ls", buf); } return 0; }
Объяснение кода листинга программы
- Подключение необходимых библиотек для работы с широкими символами и локалью
- Установка локали на
ru_RU.UTF-8
с помощью функции setlocale - Ввод строки с помощью fgetws
- Проход по каждому символу в строке и замена его на заглавный с помощью функции towupper
- Вывод преобразованной строки с помощью функции printf
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д