"Андрей Богатырев. Хрестоматия по программированию на Си в Unix" - читать интересную книгу автора В данном примере было бы еще лучше использовать цикл for, в котором все операции
над индексом цикла собраны в одном месте - в заголовке цикла: for(i=0; i < 10; i++) printf(...); А. Богатырев, 1992-95 - 7 - Си в UNIX 1.13. Вспомогательные переменные, не несущие смысловой нагрузки (вроде счетчика пов- торений цикла, не используемого в самом теле цикла) принято по традиции обозначать однобуквенными именами, вроде i, j. Более того, возможны даже такие курьезы: main(){ int _ ; for( _ = 0; _ < 10; _++) printf("%d\n", _ ); } основанные на том, что подчерк в идентификаторах - полноправная буква. 1.14. Найдите 2 ошибки в программе: main(){ int x = 12; printf( "x=%d\n" ); int y; printf( "y=%d\n", y ); } Комментарий: в теле функции все описания должны идти перед всеми выполняемыми опера- торами (кроме операторов, входящих в состав описаний с инициализацией). Очень часто после внесения правок в программу некоторые описания оказываются после выполняемых операторов. Именно поэтому рекомендуется отделять строки описания переменных от выполняемых операторов пустыми строками (в этой книге это часто не делается для эко- номии места). 1.15. Найдите ошибку: int n; n = 12; main(){ int y; y = n+2; printf( "%d\n", y ); } Ответ: выполняемый оператор n=12 находится вне тела какой-либо функции. Следует внести его в main() после описания переменной y, либо переписать объявление перед main() в виде |
|
|