Перевести код из С++ в Си - C (СИ) (69492)
Формулировка задачи:
Перевести код из С++ в Си. Заранее спасибо!
#include "stdafx.h" #include "iostream" #include "cstring" #include "cstdlib" using namespace std; int main(){ cout<<"Input text : "; char* s = new char[1000]; cin.getline(s,1000); for (int i=0; i<strlen(s); i++) if (isupper(s[i])) { while (isupper(s[i])) cout<<s[i++]; cout<<'\t'; } cout << endl; delete []s; system("pause"); return 0; }
Решение задачи: «Перевести код из С++ в Си»
textual
Листинг программы
#include <stdio.h> #include <string.h> #include <stdlib.h> #include <ctype.h> int main() { puts("Input text : "); char* s = malloc(1000); gets(s); for (int i=0; i<strlen(s); i++) if (isupper(s[i])) { while (isupper(s[i])) printf("%c", s[i++]); puts("\t"); } puts("\n"); free(s); system("pause"); // return 0; }
Объяснение кода листинга программы
Приветствую! Вот список действий, которые выполняются в данном коде:
- Ввод текста с помощью функции
gets()
. - Выделение памяти под строку с помощью функции
malloc()
. - Прохождение по каждому символу в строке с помощью цикла
for
. - Проверка, является ли текущий символ заглавной буквой, с помощью функции
isupper()
. - Если символ является заглавной буквой, то его вывод на экран с помощью функции
printf()
. - Переход к следующему символу в цикле
for
. - После вывода всех заглавных букв выводится символ табуляции
\t
. - Вывод символа новой строки
\n
. - Освобождение памяти с помощью функции
free()
. - Ожидание нажатия клавиши с помощью функции
system(
pause)
. - Возврат 0, что означает успешное завершение программы. Надеюсь, это помогло! Если у вас есть еще вопросы, не стесняйтесь задавать.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д