Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Пособие по компьютерной технике.doc
Скачиваний:
3
Добавлен:
01.04.2025
Размер:
561 Кб
Скачать
☆

Тема № 1 Разработка и отладка программ линейного вычислительного процесса

Ввод и вывод данных с помощью функций printf(), scanf()

Цель работы. Организация линейного вычислительного процесса с использованием стандартных функций ввода/вывода и математических функций.

При использовании стандартных функций ввода/вывода в выполняемой программе указывается библиотечный файл stdio.h, а при использовании математических функций - math.h, т.е.

#include <stdio.h>

#include <math.h>

Вывод результатов (по формату) на экран осуществляется с помощью функции

printf("строка форматов",[список выводимых аргументов]);

Пример:

printf(" Итого %d\n",y);

При вызове printf() обязательно передается в качестве аргумента хотя бы одна строка, например, printf(" Введите массив ");. Строка форматов состоит из символов, которые выводятся без изменения, и символов, задающих преобразование данных. Спецификации преобразования формата имеют вид:

% [флаг][ширина][.точность]символ формата,

например,

printf(" a = %10.4f c = %4d\n",а,с);.

В строку форматов могут входить управляющие символьные константы.

Значения флага

- Выравнивание по левому полю. + Всегда выводить знак (+ или -). 0 Заполнять лишнее пространство нулями вместо пробелов..

Ширина - минимальный размер поля вывода. Точность - число цифр после десятичной точки для вещественных переменных.

Управляющие символьные константы или escаре-символы применяют для представления символов или чисел, которые нельзя непосредственно ввести с

Таблица 6

Управляющие символьные константы

Символьная константа Выполняемая операция

\n перевод на новую строку

\a звуковой сигнал

\t горизонтальная табуляция

\v вертикальная табуляция

\b возврат на символ

\r возврат на начало строки

клавиатуры. Еscаре-последовательность начинается с косой черты (\) и заключается в кавычки. Функция printf() преобразует еscаре-последовательность стро-ки форматов в соответствующие ASCII-коды.

Таблица 7

Символы формата

Символ формата Тип выводимого объекта

% c char (символ)

% s строка символов

% d int (целое)

% o int (в восьмеричном виде)

% u unsigned int (целое без знака)

% x int (в шестнадцатеричном виде)

% p указатель в виде ssss:oooo или

oooo

% ld long (длинное целое)

% lo long (в восьмеричном виде)

% lu unsigned long (длинное целое без

знака)

% lx long (в шестнадцатеричном виде)

% f float/double (вещественное с фик -

сираванной точкой)

% e float/double (в экспоненциальной

форме)

% g float/double ( в виде f или e в зави -

симости от значения)

% lf long float/double (длинное вещест-

венное с фиксированной точкой)

% le long float/double (в экспонен-

циальной форме)

% lg long float/double( в виде f или e в

зависимости от значения)

Математические функции (табл. 8), используемые в арифметических выражениях, описываются в основном в библиотечном файле math.h. Функции выбора минимума и максимума из двух значений a и b - type max(f,b) и type min(a,b), приводятся в библиотеке <stdlib.h>.

Оператор scanf(строка форматов, список вводимых аргументов); является одним из многих способов ввода данных.

Пример:

scanf("%d %f",&a,&t);

Функция формализованного ввода scanf() предназначена для чтения данных из входного потока и интерпретации их в соответствии со строкой управления форматом. После преобразования данные записываются в области памя- ти, определенными аргументами, которые следуют за строкой управления форматом. Каждый аргумент списка должен быть указателем на переменную, тип которой соответствует типу, указанному в строке управления форматов, т.е. перед именем аргумента должен указываться символ  (взять адрес).

Таблица 8

Основные математические функции

Функция Назначение Тип функции и аргумента

1 2 3

sin(x) sin(x) double

cos(x) cos(x) double

tan(x) tg(x) double

asin(x) arcsin(x) double

acos(x) arccos(x) double

atan(x) arctg(x) double

abs (x) | x | int

fabs(x) | x | double

exp(x) ex double

log(x) ln(x) double

log10(x) lg(x) double

pow(x,y) xy double

sqrt(x) double

sinh(x) sh(x) = ( )/2 double

cosh(x) ch(x) = ( )/2 double

tanh(x) th(x) = sh(x)/ch(x) double

Пример.

Составьте программу вычисления y = ех +lg3,2-sinx/3.

#include <stdio.h>

#include <math.h>

void main()

{ float x,y;

printf(Введите х \n); scanf(%f,x);

y=exp(x)+log10(3.2)-sin(3.14*x/3);

printf(y=%f\n,y);}

Библиотека потоков С++ iostream.h с набором классов для