Наброски и зарисовки растений, плодов, цветов: Освоить конструктивное построение структуры дерева через зарисовки отдельных деревьев, группы деревьев...

Поперечные профили набережных и береговой полосы: На городских территориях берегоукрепление проектируют с учетом технических и экономических требований, но особое значение придают эстетическим...

Универсальные функции ввода и вывода любых типов данных

2017-11-17 338
Универсальные функции ввода и вывода любых типов данных 0.00 из 5.00 0 оценок
Заказать работу

Вверх
Содержание
Поиск

Scanf и printf

 

scanf вводит данные из stdin в форматированном виде.

Синтаксис вызова:

scanf(arg1, arg2...);

функция вводит различное количество данных разного типа.

– Где arg1 – управляющая строка - константа, содержащая только набор спецификаций формата, который отражает тип вводимых данных. Спецификации разделяются между собой пробелами или запятыми. Вводимые при выполнении программы значения так же разделяются этим же символом. Не ставить пробел в начале или в конце управляющей строки.

Основные спецификации формата:

%d – десятичное условие типа int.

%iint (в любой системе счисления).

%u – unsigned.

%ld – long.

%c – один символ.

%s – строка символов без пробелов внутри (слово).

%f - float.

%lf – double.

%p – для вывода адреса переменной.

%e – для вывода очень больших или очень маленьких данных с десятичной точкой в экспоненциальной форме.

arg2... – адрес переменных, по которым записывается данное. При вводе строки символов & не пишется – только имя строки. Количество адресов совпадает с количеством спецификаций. В качестве результата функция возвращает качество результата операций качеством успешных операций. Например:

int a;

float b;

scanf(“%d %f”, &a,&b);

 

Функция вывода printf пишется по аналогичным правилам, только вместо адресов пишутся имена переменных и в управляющей строке можно писать комментирующий текст.

Например:

printf(“Ваши данные - %d и %f\n”, a,b);

 

Структуры и форма написания программы

 

Программы состоят из одной или нескольких функций, среди которых обязательно есть функция main. Любая функция состоит из заголовка и тела функции. Заголовок функции состоит из директивы препроцессора и имени функции. # include <iostream>. при выполнении директивы include содержание указанного файла будет вставлено в текст программы вместо самой директивы.

Имя функции main пишется стандартным образом:

int main (void)

Тело функции – несколько операторов, заключенные в фигурные скобки. Сначала пишутся операторы объявления типа переменных, затем – операторы действия: ввод исходных данных, вычисление результата и вывод его на экран.

Форма написания программы. Текст пишется маленькими латинскими буквами, большие буквы используются в именах переменных и константах.

Задача. Фокусное расстояние собирающей линзы F = 30 см, расстояние предмета от фокуса l = 10 см, линейные размеры предмета h = 5 см. Определить размеры изображения по формуле

Программа будет строиться в виде проекта, состоящего из файлов:

– main.cpp – файл с текстом функции main;

– Rus.cpp – файл с текстом функции Rus;

– Rus.h – файл с прототипом функции Rus.

 

Полный текст программы будет выглядеть так:

 

//содержимое файла main.cpp

#include<iostream> //подключение системных средств для

using namespace std; //возможности использовать потоки ввода-вывода

#include "Rus.h" //прототип функции русификации

int main(void) //имя функции main

{

double focus, distance, size, h; //объявили переменные

//здесь и далее: приглашение к вводу, текст выводится на экран монитора //отдельной строкой

cout<<Rus("\n Введите фокусное расстояние ");

//ввод исходного данного с клавиатуры в переменную focus

cin>>focus;

cout<<Rus("Введите расстояние предмета от фокуса ");

cin>>distance;

cout<<Rus("Введите размеры предмета ");

cin>>size;

//вычисление по формуле, результат помещается в h

h=focus*size/distance;

//вывод результата из переменной h на монитор с комментарием

//в одном операторе Rus вызываем один раз

cout<<Rus("Размеры изображения ")<<h;

cout<<Rus("см\n");

//оператор return завершает работу функции main

return 0;

}

 

//содержимое файла Rus.cpp

#include<windows.h>

char bufrus[256];

char*Rus(const char*text)

{

CharToOemA(text, bufrus);

return bufrus;

}

 

//содержимое файла Rus.h

#ifndef RUS_H

#define RUS_H

char*Rus(const char*text);

#endif

 

Примечание. В последующих примерах будут приводиться тексты только функции main. Использование функции Rus будет опускаться, так как это не относится к самому языку С++, а к особенностям среды программирования VS2008.

 


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

Особенности сооружения опор в сложных условиях: Сооружение ВЛ в районах с суровыми климатическими и тяжелыми геологическими условиями...

История развития хранилищ для нефти: Первые склады нефти появились в XVII веке. Они представляли собой землянные ямы-амбара глубиной 4…5 м...

Типы сооружений для обработки осадков: Септиками называются сооружения, в которых одновременно происходят осветление сточной жидкости...

Индивидуальные очистные сооружения: К классу индивидуальных очистных сооружений относят сооружения, пропускная способность которых...



© cyberpediasu.com 2017-2026 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.015 с.