Чтение онлайн

ЖАНРЫ

Язык Си - руководство для начинающих

Д. МАРТИН

Шрифт:

}

Что здесь нового?

Во-первых, мы описали две переменные вместо одной. Для этого потребовалось только разделить в операторе описания имена двух переменных запятой.

Во-вторых, мы выполнили вычисления — использовали громадную вычислительную мощность нашего компьютера для умножения 2 на 6. В Си, так же как и во многих других языках, символ * обозначает умножение. Поэтому смысл оператора

feet = 6 *fathoms;

заключается в следующем:

взять величину переменной fathoms, умножить ее на 6 и присвоить результат переменной feet. (Судя по этой парафразе, обычный английский язык менее лаконичен, чем простой язык Си; это одна из причин, лежащих в основе разработки языков программирования.)

И наконец, мы использовали функцию printf более сложным образом. Если вы выполните эту программу на компьютере, то результат должен выглядеть так:

Можно заметить, что было произведено две подстановки: первое вхождение символов %d в строку, заключенную в кавычки, было заменено значением первой переменной (fathoms) из списка, следующего за указанной строкой, а второе — значением второй переменной (feet) из этого же списка. Обратите внимание, что список печатаемых переменных расположен в конце оператора.

Область применения данной программы несколько ограниченна, но она может послужить прообразом программы перевода морских саженей в футы. Все, что нам потребуется — специальный способ присваивания произвольных значений переменной feet; о том, как это делается, вы узнаете несколько позже.

ДОПОЛНИТЕЛЬНЫЙ ПРИМЕР

main/* butler*/

{

printf("Я вызываю функцию butler.\n");

butler;

printf ("Да. Принесите мне чашку чая и гибкие диски.\n");

}

butler

{

printf("Bы вызывали, сэр?\n");

}

Результаты работы программы выглядят следующим образом:

Я вызываю функцию butler. Bы вызывали, сэр? Да. Принесите мне чашку чая и гибкие диски.

Функция butler определяется точно так же, как и функция main; ее тело заключено в фигурные скобки. Вызов функции осуществляется путем простого указания ее имени, включая круглые скобки. Мы вернемся к этому важному вопросу только в гл. 9, а здесь хотели продемонстрировать ту легкость, с которой вы можете включать в программу свои собственные функции.

ЧТО ВЫ ДОЛЖНЫ БЫЛИ УЗНАТЬ В ЭТОЙ ГЛАВЕ

Ниже приведена краткая сводка строгих правил (но не чрезмерно жестких), которые, мы надеемся, вы усвоили. Мы включили сюда же краткие примеры.

Как назвать файл, содержащий вашу программу: eye.с, или black.с, или infan.c и т. п.

Какое имя можно использовать в качестве названия программы, состоящей из

одной функции: main.

Структура простой программы: заголовок, тело, фигурные скобки, операторы. Как описать целую переменную: int varname;

Как присвоить значение переменной: varname = 1024;

Как напечатать фразу printf ("Хотите купить утку?");

Как напечатать значение переменной: printf ("%d", varname);

Символ новая строка: \n

Как включать комментарии в программу: /*анализ движения наличных денег*/

ВОПРОСЫ И ОТВЕТЫ

Ниже приведено несколько вопросов, которые помогут вам проверить и расширить свое понимание материала данной главы.

Вопросы

1. Икабод Боуди Марфут (ИБМ) подготовил программу, приведенную ниже, и принес ее вам для проверки. Пожалуйста, помогите ему найти в ней ошибки.

include studio, h main{} /*эта программа печатает число недель в году/*

(

int s

s: = 56;

print (В году s недель.);

2. Что будет напечатано в каждом из примеров, приведенных ниже, в предположении, что они являются частями некоторых полных программ?

a. printf(" Б-э-э Б-э-э, Черная Овца.");

а. printf("У тебя есть шерсть?\n");

б. рrintf("Убирайся!\n Мешок сала!");

в. printf("Что?\n Нет/n Кларнет?\n");

г. int num;

num = 2;

printf(" %d + %d = %d", num, num, num + num);

Ответы

1.

Строка 1:

данная строка должна начинаться с символа # правильное написание имени файла — stdio.h; имя файла должно быть заключено в угловые скобки.

Строка 2:

вместо фигурных скобок {} необходимо использовать круглые ;

комментарий должен оканчиваться символами */, а не /*

Строка 3:

вместо круглой скобки ( должна стоять фигурная {.

Строка 4:

оператор должен оканчиваться символом "точка с запятой".

Строка 5:

эту строку (пустую) м-р ИБМ написал Совершенно правильно!

Строка 6:

в операторе присваивания необходимо использовать символ =, а не :=. (К сожалению, м-р ИБМ имеет представление о языке Паскаль.)

В году 52 недели, а не 56.

Строка 7:

оператор должен выглядеть так printf ("В году %d недель. \n", s);

Строка 8:

отсутствует, но она обязательно должна быть и содержать закрывающую фигурную скобку — }.

<
Поделиться с друзьями: