Студопедия

Главная страница Случайная страница

Разделы сайта

АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника






Функции ввода- вывода






Функция

printf(строка форматов, список выводимых переменных)

выполняет форматированный вывод переменных, указанных в списке, в соответствии со строкой форматов. Функция

scanf(строка форматов, список адресов вводимых переменных)

выполняет ввод переменных, адреса которых указанны в списке, в соответствии со строкой форматов.

Строка форматов содержит символы, которые будут выводиться на экран или запрашиваться с клавиатуры и так называемые спецификации.

Спецификации это строки, которые начинаются символом % и выполняют управление форматированием:

% флаг ширина.точность модификатор тип

Параметры флаг, ширина, точность и модификатор в спецификациях могут отсутствовать.

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

#include < stdio.h>

Заголовочный файл stdio.h содержит описание функций ввода-вывода.

ЗАДАЧА 1. Зная a, b, c – длины сторон треугольника, вычислить площадь S и периметр P этого треугольника.

Входные данные: a, b, c.

Выходные данные: S, P.

Для вычисления площади применим формулу Герона: ,

где r – полупериметр.

//ЗАДАЧА 1. Вариант первый.

#include " stdafx.h"

#include < stdio.h>

#include < math.h>

int main()

{

float a, b, c, S, r; //Описание переменных.

//Вывод на экран символов a=.

printf(" a=");

//Запись в переменную а значениия введенного

//с клавиатуры.

scanf(" %f", & a);

printf(" b="); scanf(" %f", & b);

printf(" c="); scanf(" %f", & c);

r=(a+b+c)/2; //Вычисление полупериметра.

S=sqrt(r*(r-a)*(r-b)*(r-c)); //Вычисление площади.

//Вывод символов S=, значения S и символа табуляции.

//Спецификация %5.2f означает, что будет

//выведено вещественное число, под которое

//отводится 5 знаков, причем 2 из них после точки.

printf(" S=%5.2f \t", S);

//Вывод символов p=, значения выражения 2*r

//и символа окончания строки \n.

printf(" p=%5.2f \n", 2*r);

return 0;

}

Результат работы программы представлен на рис. 1.

Рис. 1. Результат работы программы к задаче 1.

//ЗАДАЧА 2.1. Вариант второй

#include " stdafx.h"

#include < stdio.h>

#include < math.h>

 

int main()

{

float a, b, c, S, r;

//Вывод на экран строки символов.

printf(" Vvedite a, b, c \n");

//Ввод значений списком.

scanf(" %f%f%f", & a, & b, & c);

r=(a+b+c)/2;

S=sqrt(r*(r-a)*(r-b)*(r-c));

//Вывод результатов списком.

printf(" S=%5.2f \t p=%5.2f \n", S, 2*r);

return 0;

}

Результат работы программы представлен на рис. 2.

Рис. 2. Результат работы программы к задаче 1.






© 2023 :: MyLektsii.ru :: Мои Лекции
Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав.
Копирование текстов разрешено только с указанием индексируемой ссылки на источник.