Стандартные функции вывода информации
Поможем в ✍️ написании учебной работы
Поможем с курсовой, контрольной, дипломной, рефератом, отчетом по практике, научно-исследовательской и любой другой работой

Для вывода информации в консольном приложении чаще всего используются следующие функции:

puts( S) – вывод строки символов S с переходом на начало новой строки и вывод данных с форматированием;

     рrintf (управляющая строка, список объектов вывода);

управляющая строка – заключенная в кавычки строка, содержащая спецификации преобразования объектов вывода, управляющие символы (признак «\») и любой набор символов, использующийся в качестве поясняющего текста – указывает компилятору вид выводимой информации;

список объектов вывода – печатаемые объекты (константы, переменные или выражения, вычисляемые перед выводом). Данные, указанные в списке выводятся в соответствии со спецификациями управляющей строки.

Спецификации преобразования имеют вид

% <флаг> <размер поля . точность> спецификация

флаг: (минус) выравнивание влево (по умолчанию выполняется выравнивание вправо); + (плюс) выводится знак положительного числа;

размер поля – задает ширину поля вывода (количество символов), при недостаточном значении выполняется автоматическое расширение;

точность – задает количество цифр в дробной части числа;

спецификация – формат преобразования выводимого объекта.

Приведем основные форматы печати:

%d – десятичные целые (int);            %c – один символ (char);

%s – строка символов (string);         %f – данные типа float;

%ld – длинное целое;                                  %lf – данные типа double;

%x – шестнадцатеричные данные; %o – восьмеричные данные.

При необходимости вывода управляющих символов ( % \ и т.п.) их нужно указать 2 раза, например:  

              printf("Только %d%% предприятий не работало. \n",5);

получим:   

              Только 5% предприятий не работало.

Управляющие символы: \n – переход на новую строку; \t – горизонтальная; \v – вертикальная табуляция; \b – возврат назад на один символ; \r – возврат в начало строки; \a – звуковой сигнал; \f – прогон бумаги до начала новой страницы; \? – знак вопроса.

Стандартные функции ввода информации

     Функция gets ( S) обеспечивает ввод строки символов S до нажатия клавиши E nter, т.е. позволяет ввести строку, содержащую пробелы.

     Для форматированного ввода информации любого вида предназначена функция

scanf (управляющая строка, список адресов объектов ввода);

в управляющей строке которой указываются только спецификации преобразований, а в списке объектов вводаадреса вводимых скалярных перемен­ных, для чего перед ID переменной указывается операция &, обозначающая «взять адрес». Для ввода значений строковых (составных) переменных символ & не указывается. При использовании формата %s строка вводится до первого пробела.

Пример ввода данных int а, double b, и char str[20]:

scanf ( "%d %lf %s", &a, &b, str);  

Вводить данные можно как в одной строке через пробел, так и в разных строках.

 

1.4. Пример выполнения задания

Cоставить программу вычисления арифметического выражения для заданных значений x, y, z :

                                 .

Пример создания оконного приложения

В оконном режиме панель диалога программы создать в виде, представленном на рис. 1.2.

Рис. 1.2

 

Для создания проекта необходимо выполнить следующие действия.

1. Запускаем С++ Builder. Создаем в разрешенной для Пользователя папке (d:\work\ или c:\work\) папку с номером группы (\610101\), открыв ее, сохраняем предлагаемые файлы Unit1.cpp и Project1.cpp (рекомендуем без изменения).

2. Оформляем окно формы, заменив заголовок Form1 на нужный текст. Помещаем на форму необходимые компоненты Label1, Label2, Label3, Label4 (вставляя в Caption соответствующие тексты), Edit1, Edit2, Edit3, Memo1 c полосами прокрутки (см. п. 1.3), Button1 (заменив в Caption текст).

Используя свойство Font, выбираем стили выводимых текстов.

3. Оформляем листинг программы (Unit1.cpp). Двойным щелчком кнопкой мыши по свободному месту формы создаем функцию FormCreate и заполняем ее (см. пример). Переходим на форму (F12), щелкаем дважды по кнопке «ВЫПОЛНИТЬ» и заполняем созданную функцию Button1Click (см. пример).

4. Перед запуском программы на обработку, сохраняем все.

5. Запускаем проект на выполнение, исправляем ошибки.

 

Текст программы может иметь следующий вид (наклонным мелким шрифтом выделен текст, редактировать который не рекомендуется):

//---------------------------------------------------------------------------

#include <vcl.h>

#pragma hdrstop

#include "Unit1.h"

#include "math.h"

//---------------------------------------------------------------------------

#pragma package(smart_init)

#pragma resource "*.dfm"

TForm1 *Form1;

//---------------------------------------------------------------------------

__fastcall TForm1::TForm1(TComponent* Owner)

     : TForm(Owner)

{

}

//---------------------------------------------------------------------------

void __fastcall TForm1::FormCreate(TObject *Sender)

{

Edit1->Text = "3,4";              

Edit2->Text = "7,4e-2";

Edit3->Text = "1,943e2";                

Memo1->Clear();

Memo1->Lines->Add("Лабораторная работа № 1");

}

//---------------------------------------------------------------------------

void __fastcall TForm1::Button1Click(TObject *Sender)

{

double x, y, z, a, b ,c, rez;

x = StrToFloat(Edit1->Text);

y = StrToFloat(Edit2->Text);

z = StrToFloat(Edit3->Text);

a = pow(tan(x+y),2);       

b = exp(y-z);       

c = sqrt(cos(x*x)+sin(z*z));

rez = a-b*c;

Memo1->Lines->Add("При х = "+FloatToStrF(x,ffFixed,7,3)

    + "; y = "+FloatToStrF(y,ffFixed,7,3)+"; z = "+FloatToStrF(z,ffFixed,7,3));

Memo1->Lines->Add("Результат = "+FloatToStr(rez));

}

 

Внимание! В строковых константах разделитель целой и дробной частей – запятая: Edit1->Text = "3,4"; в отличие от числовых констант в тексте программы.

В результате должно получиться рабочее окно (рис. 1.3). Если щелкнуть мышью по кнопке «ВЫПОЛНИТЬ», в окне Memo1 появится соответствующий текст (результат). Далее в окошках Edit* можно изменять исходные значения и, нажимая кнопку «ВЫПОЛНИТЬ», получать новые результаты.

Рис. 1.3

 

Дата: 2018-11-18, просмотров: 269.