|
Программирование >> Элементы языков с и с++
2 Зак. %0 функциями происходит через параметры функций, которые указываются в круглых скобках, расположенных вслед за именем функции. Функция может и не иметь параметров, но круглые скобки после имени всегда должны присутствовать - по ним компилятор узнает, что перед ним функция, а не что-либо другое. В нашем примере в главной функции tmain о использованы две функции: это функция printf () и функция getch (). Функция printf о в качестве аргумента имеет строку символов (символы, заключенные в двойные кавычки). Среди символов этой строки есть специальный символ, записанный так: \п. Это так называемый управляющий символ- один из первых 32-х символов таблицы кодировки символов ASCII. Управляюшие символы не имеют экранного отображения и используются для управления процессами. В данном случае символ \п служит для выбрасывания буфера фуищии printf о, в котором находятся остальные символы строки, на экран и установки указателя изображения символов на экране в первую позицию- в начало следующей строки. То есть когда работает функция printf о, символы строки по одному записываются в некоторый буфер до тех пор, пока не встретится символ \п. Как только символ \п будет прочтен, содержимое буфера тут же передастся на устройство вывода (в данном случае - на экран). При создании консольного (неграфического) интерфейса с окном консольного приложения всегда автоматически связываются два файла: один из них - для ввода данных с клавиатуры, а другой - для вывода данных на экран. Если в программе убрать getch (), то мы как раз и получим тот результат, который показан на рис. 1.17. Задержка экрана произойдет за счет вывода сообщения Для продолжения нажмите любую клавишу... . Если действительно нажать любую клавишу, то при наличии getch () управление перейдет к ней, а без нее - на завершение программы. Функция getch о - это функция ввода одного символа с клавиатуры: она ждет нажатия какой-либо клавиши. Благодаря этой функции результат выполнения программы задерживается на экране до тех пор, пока мы не нажмем любую клавишу. Если бы printf о не задержала экран и если бы в коде программы не было функции getchO, то после выполнения printf о программа дошла бы до конца тела функции tmain о (до закрывающей фигурной скобки) и завершила бы свою работу. В итоге черное окно, в котором вывелось сообщение Hello! , закрылось бы, и мы не увидели бы результата работы программы. Программа с оператором whiie Рассмотрим программу вывода таблицы температур по Фаренгейту и Цельсию. Формула перевода температур такова: С= (5 / 9)* (F- 32), где С- это температура по шкале Цельсия, aF - по шкале Фаренгейта. Задается таблица температур по Фаренгейту: О, 20, 40, 300. Требуется вычислить таблицу по шкале Цельсия и вывести на экран обе таблицы. Для этого производим следующие действия: 1. Создаем заготовку консольного приложения. Приложение автоматически сохраняется. Но можно его сохранять и пользуясь командами Save, Save All опции File главного меню среды. Кроме того, если вы забыли сохранить программу и попытаетесь закрыть проект, то среда запросит у вас подтверждение на сохранение, если в проекте были какие-либо изменения. 2. Записываем код новой программы в тело главной функции (листинг 1.1). Лис Листинг 1.1 З.срр : Defines the entry point for the console application. #include stdafx.h #include <conio.h> для функции getch() В данном варианте среды программирования, как мы видели, задержка экрана уже предусмотрена: выдается сообщение Для продолжения нажмите любую клавишу... . Но, тем не менее, начинающий программист должен знать о подобном приеме задержки экрана. Следовательно, когда захотим завершить нашу программу, мы должны нажать любой символ на клавиатуре, программа выполнит функцию getch о и перейдет к выполнению следующего оператора. А это будет конец тела tmain(). На этом программа и завершит свою работу. Следует отметить, что основное назначение функции getch() - вводить символы с клавиатуры и передавать их символьным переменным, о которых речь пойдет чуть позже. Но мы воспользовались побочным свойством функции - ожиданием ввода с клавиатуры, тем самым не позволили программе завершиться прежде, чем посмотрели результат ее предыдущей работы. int tmain(int argc, TCHAR* argv[]) int lower,upper,step; float fahr, ces, lower=0; upper=300; step=20; fahr=lower; while(fahr <= upper) ( cels=(5.0/9.0)*(fahr-32.0); printf( %4.Of %6.1f\n ,fahr,cels); fahr=fahr+s tep ; getch(); 3. Запускаем компилятор и построитель одновременно клавишей <F7>. Программа откомпилируется, построится. Для ее выполнения нажмем комбинацию (рис. 1.18). клавиш <Ctr!>+<F5>. Результат высветится в окне C:\WINDOWS\system32\cmd.exB Рис. 1.18. Результат расчета таблицы температур по Цельсию
|
© 2006 - 2024 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки. |