9 сентября 2021
Упражнение 1. Написать программу, которая считывает целое число с клавиатуры и выводит квадрат и куб этого числа в консоль. Вычисление квадрата и куба реализовать через функции, которые вызываются из функции main
.
Продолжаем уточнять наши знания основ языка Си.
Базовые типы данных
Целочисленные типы
char ch = 'a';
printf("%d", ch); // 97
short s;
printf("%d", s);
int a;
printf("%d", a);
unsigned b; // unsigned int b;
printf("%u", a);
long c; // long int c;
printf("%ld", c);
unsigned long d;
printf("%lu", d);
long long e;
printf("%lld", e);
unsigned long long f;
printf("%llu", f);
Размер типа не гарантируется стандартном. Оператор sizeof
позволяет узнать размер переменной в байтах:
char ch;
sizeof(ch); // 1
Диапазон знаковых целых чисел размера n
бит: от -2^{n-1}
до 2^{n-1} - 1
. Диапазон беззнаковых целых чисел размера n
бит: от 0
до 2^n
. В библиотеке <limits.h>
оперделены константы с минимальными и максимальными значениями разных типов. Например:
#include <stdio.h>
#include <limits.h>
int main() {
int a;
printf("Size of int: %ld bytes\n", sizeof(a));
printf("int: %d %d\n", INT_MIN, INT_MAX);
printf("uint: %u\n", UINT_MAX);
return 0;
}
На компьютере автора получился следюющий результат:
Size of int: 4 bytes
int: -2147483648 2147483647
uint: 4294967295
Числа с плавающей точкой
float x;
double y;
long double z;
printf("%f", x);
printf("%lf", y);
printf("%Lf", z);
В библиотеке <float.h>
определены различные константы для чисел сплавающей точкой, например:
DBL_DIG
- количество верных десятичных цифр для типаdouble
DBL_EPSILON
- минимальное положительноех
такое, что1.0 + x != 1.0
printf("%d\n", DBL_DIG);
printf("%.16lf\n", DBL_EPSILON);
Получаем:
15
0.0000000000000002
Цикл for
Пример 1. Квадраты натуральных чисел.
for (int i = 0; i < 10; ++i) {
printf("%3d %6d\n", i, i * i);
}