Таблица умножения на C и C++
В этом уроке вы выведете таблицу умножения для числа с помощью цикла for и форматированного вывода.
Введение
Вывод таблицы умножения - базовое упражнение на циклы, которые повторяются фиксированное число раз. На каждом шаге переменная цикла служит вторым множителем, а программа вычисляет произведение и выводит его всегда в одном формате.
Главное
- Включите предупреждения компилятора (compiler warnings) и исправьте их все.
- Хорошо понимайте тип и время жизни (lifetime) каждого значения.
- Всегда проверяйте входные данные и границы индексов массивов.
Примеры кода на C и C++
#include <stdio.h>
int main(void) {
int number = 7;
// Generate the first five rows.
for (int multiplier = 1; multiplier <= 5; ++multiplier)
printf("%d x %d = %d\n", number, multiplier, number * multiplier);
}
7 x 1 = 7
7 x 2 = 14
7 x 3 = 21
7 x 4 = 28
7 x 5 = 35
#include <iostream>
int main() {
int number = 7;
// Generate the first five rows.
for (int multiplier = 1; multiplier <= 5; ++multiplier)
std::cout << number << " x " << multiplier << " = " << number * multiplier << '\n';
}
7 x 1 = 7
7 x 2 = 14
7 x 3 = 21
7 x 4 = 28
7 x 5 = 35
Сравнение C и C++
Переменная multiplier проходит от 1 до 5 и даёт каждый множитель. На каждом шаге printf выводит умножение в формате 7 x 1 = 7, а произведение number * multiplier вычисляется в момент вывода. Увеличьте предел до 10, чтобы вывести всю таблицу.
C использует небольшие процедурные функции и открыто показывает, как данные представлены в памяти.
C++ по-прежнему позволяет работать на низком уровне, но добавляет библиотечные типы и более безопасные абстракции.
Упражнения для практики
Запустите обе версии, а затем измените код, чтобы увидеть разницу в безопасности, которую даёт каждый язык.
- Проверьте неверный ввод и граничные значения.
- Скомпилируйте с флагами -Wall -Wextra -Wpedantic, чтобы включить больше предупреждений.
- Вынесите общие объявления в заголовочный файл, а реализацию в отдельный файл.
Попрактикуйтесь на задаче
Примените материал этого урока к реальной задаче. Каждая задача запускается в браузере, с мгновенными тестами и разбором от ИИ.
Все задачи