Приведенная ниже программа выполняет вычисления по формуле °С = (5/9)(°F-32) и печатает таблицу соответствия температур по Фаренгейту температурам по Цельсию:
0 –17 20 –6 40 4 60 15 80 26 100 37 120 48 140 60 160 71 180 82 200 93 220 104 240 115 260 126 280 137 300 148
Как и предыдущая, эта программа состоит из определения одной-единственной функции main. Она длиннее программы, печатающей “здравствуй, мир”, но по сути не сложнее. На ней мы продемонстрируем несколько новых возможностей, включая комментарий, объявления, переменные, арифметические выражения, циклы и форматный вывод.
#include <stdio.h> /* печать таблицы температур по Фаренгейту и Цельсию для fahr = 0, 20, ..., 300 */
main() { int fahr, celsius; int lower, upper, step;
lower = 0; /* нижняя граница таблицы температур */ upper = 300; /* верхняя граница */ step = 20; /* шаг */
fahr = lower; while (fahr <= upper) { celsius = 5 * (fahr-32) / 9; printf(“%d\t%d\n”, fahr, celsius); fahr = fahr + step; } }
Две строки:
/* печать таблицы температур по Фаренгейту и Цельсию для fahr = 0, 20, ... 300 */
являются комментарием, который в данном случае кратко объясняет, что делает программа. Все символы, помещенные между /* и */, игнорируются компилятором, и этим можно свободно пользоваться, чтобы сделать программу более понятной. Комментарий можно располагать в любом месте, где могут стоять символы пробела, табуляции или символ новой строки.
В Си любая переменная должна быть объявлена раньше, чем она будет использована; обычно все переменные объявляются в начале функции перед первой исполняемой инструкцией. В объявлении
описываются свойства переменных. Оно состоит из названия типа и списка переменных, например:
int fahr, celsius; int lower, upper, step;
Тип int означает, что значения перечисленных переменных есть целые, в отличие от него тип float
указывает на значения с плавающей точкой, т. е. на числа, которые могут иметь дробную часть. Диапазоны значений обоих типов зависят от используемой машины.