Обзор проекта
Часть раздела Logic & Flow путешествия по C на Coddy — урок 20 из 63.
Задание
ЛегкоВ течение следующих нескольких уроков вы создадите простую текстовую утилиту, которая демонстрирует реальное применение манипуляций со строками и символами.
Напишите программу на языке C, которая заложит основу для текстовой утилиты, считывая и сохраняя ввод пользователя. Ваша программа должна:
- Запросить у пользователя ввод короткого предложения, выведя:
Enter a sentence: - Объявить символьный массив с именем
sentenceиз 200 элементов для хранения ввода - Использовать
scanfсо спецификатором формата%sдля чтения одного слова от пользователя - Вывести сохраненное слово в формате:
You entered: [word] - Продемонстрировать, что символьный массив правильно завершен нулевым символом, выведя длину сохраненного слова с помощью
strlen()в формате:Length: [length]
Не забудьте включить заголовочный файл <string.h> для использования функции strlen().
Ваш вывод должен отображать результаты в следующем формате:
Enter a sentence:
You entered: [word]
Length: [length]Например, если на вход подано:
HelloВаш вывод должен быть:
Enter a sentence:
You entered: Hello
Length: 5Важно: Строка приглашения должна заканчиваться символом новой строки сразу после двоеточия — не добавляйте лишний пробел перед \n. Используйте printf("Enter a sentence:\n"); точно так, как показано.
Эта задача закладывает базовый механизм ввода и хранения данных, который послужит основой для функций текстовой утилиты, которые вы добавите в следующих уроках. Она проверяет ваше понимание объявления символьных массивов, ввода строк с помощью scanf и базового вычисления длины строки с помощью strlen().
Попробуйте сами
#include <stdio.h>
#include <string.h>
int main() {
// TODO: Напишите свой код здесь
// 1. Выведите приглашение к вводу
// 2. Объявите символьный массив с именем 'sentence' из 200 элементов
// 3. Считайте ввод, используя scanf со спецификатором формата %s
// 4. Выведите введенное слово и его длину
return 0;
}Все уроки раздела Logic & Flow
1Основы указателей
Что такое указатель?Объявление указателейОператор взятия адреса (&)Оператор разыменования (*)Указатели NULLИтоги: Основы указателей4Проект: Простая текстовая утилита
Обзор проектаПодсчет символов2Указатели и массивы
Имена массивов как указателиЭлементы массива — указателиАрифметика указателейСравнение указателейИтоги: Обход массива через указатели5Указатели и функции
Передача по значениюПередача указателей в функцииИзменение переменных через указателиКлассический пример: SwapПередача массивов в функцииИтоги: указатели как аргументы функций8Структуры и указатели
Указатели на структурыОператор «стрелка» (->)Передача структур по значениюПередача указателей на структурыДинамическое выделение памяти для структурИтоги: Изменение структур через указатели11Итоговые задачи на повторение
Повторение: динамическая конкатенация строкПовторение: массив структурПовторение: счетчик частоты слов3Символьные массивы и строки
Строки как массивы charНуль-терминаторВвод строк с помощью scanfИспользование strlen()Использование strcpy()Использование strcat()Использование strcmp()Итоги: основные строковые функции