Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Text_lektsy_Si-dlya_studentov.pdf
Скачиваний:
6
Добавлен:
08.05.2015
Размер:
1.22 Mб
Скачать

l – для double.

Форма представления одного данного

[ + | – ] [ a ] [ .b ] [<порядок>]

Порядок – [ e | E ] [ + | – ] <целое без знака> Длина мантиссы >= одной цифры.

Пример:

 

Внешнее представление

Спецификация

 

Значение в памяти

 

 

–2.347e–5

f

 

–2.347 e–5

 

 

–236.485

f

 

–2.36485e+2

 

 

2e10

f

 

2e10

 

 

.345

 

f

 

0.345

 

 

–2.

F

 

–2.0

 

 

–94.56e–5

lf

 

–9.456e–4

 

 

–94.56e+5

lf

 

–9.456e+6

 

 

ВЫВОД (нормальная форма)

 

 

 

Формат спецификации

% [W] [.D] [l] f

 

 

 

D – число знаков после.

 

 

 

 

 

 

Внешнее представление:

[–] X...X . X...

 

 

 

По умолчанию D = 6. При D = 0 точка не выводится.

 

 

 

Если число дробных разрядов > D, то результат округляется.

 

 

Пример.

 

 

 

 

 

 

Значение в памяти

 

Спецификация

 

Внешнее представление

 

 

–385.476

 

f

 

–385.476000

 

 

2.

 

f

 

2.000000

 

 

1e–7

 

f

 

0.000000

 

 

1e10

 

f

 

10000000000.000000

 

 

–385.476

 

10f

 

–385.476000

 

 

385.476

 

10f

 

385.476000

 

 

385.476

 

15f

 

_ _ _ _ _385.476000

 

 

-385.476

 

15f

 

_ _ _ _-385.476000

 

 

2.5

 

10.4f

 

_ _ _ _2.5000

 

 

–6.48756

 

10.4f

 

_ _ _–6.4876

 

 

0.000346

 

10.5f

 

_ _ _0.00035

 

 

–0.34844

 

6.4f

 

–0.3484

 

 

38.56

 

.0f

 

39

 

 

38.45

 

.0f

 

38

 

6.1.3 Спецификация е (вещественные числа в экспоненциальной форме с плавающей точкой).

ВВОД Полностью аналогичен спецификации f. ВЫВОД (показательная форма)

Формат спецификации

% [W] [.D] [l] { e|E }

D – количество значащих цифр мантиссы.

По умолчанию D=6. При D=1 точка не выводится.

Внешнее представление:

[–] X . X...{e|E}<порядок>

34

Пример.

Значение в па-

Специфика-

Внешнее представление

мяти

ция

 

2.3

e

2.30000e+00

2.3

5e

2.300000e+00

237.486

10.4 e

2.3749e+02

237.486

10.4E

2.3749E+02

–96.56e–105

15.5e

–9.65600e–104

2.37e25

10.1e

_ _ _2.4e+25

–24.866e–10

.4e

–2.487e–09

6.1.4Спецификация g.

Спецификация используется как е и f, но исключает вывод незначащих нулей. Удобно, когда нельзя предсказать диапазон выводимых значений.

D – число значащих цифр мантиссы. Конечные нули не выводятся.

Универсальный формат.

f при 10**( –4 ) <= |x| < 10**D

 

Пример.

 

 

 

Значение в памяти

 

Спецификация

ние

Внешнее представле-

 

 

 

 

0.000485456

 

.5g

 

0.00048546

0.000000123456

 

.5g

 

1.2346e–07

4.456789e–5

 

.5g

 

4.4568e–05

4.456789

 

.5g

 

4.4568

4.456 e 4

 

.5g

 

44560

4.456 e 6

 

.5g

 

4.456e+06

0.4456

 

.5g

 

0.4456

4.456 e6

 

.5G

 

4.456E+06

6.1.5Вывод символьной информации.

ВВОД не рассматриваем (рассмотреть самостоятельно). ВЫВОД: 2 способа.

Символы управляющей строки, не входящие в спецификации и управляющие символы печатаются текстуально. Для вывода символа % надо %%.

Пример:

printf ("Число успешных сеансов составляет %d % % \n", kol ); printf( "Рост: %.1f[см] Вес: %.3f[кг] \n", height, weight);

На экране Число успешных сеансов составляет 72%

Рост: 181.5[см] Вес: 75.600[кг]

Спецификация % [w] c – значением аргумента является символ.

Пример:

printf ( "L = %d %5c M = %d \n", l, ' ', m);

35

На экране

L = 15– – – – –M = 12

6.2 Функции getchar(), putchar(), getch()

1. Функция getch() – это функция чтения одного символа со стандартного устройства ввода (то есть клавиатуры), без вывода считанного символа в стандартный поток

вывода (на экран).

 

 

Прототип функции

int getch (void);

объявлен в файле <conio.h>).

Пример:

char ch;

 

 

 

if ( ( ch = getch () ) = = 27 )

 

 

printf ("Вы нажали Escape\n");

В данном случае с клавиатуры читается один символ, заносится в переменную ch и проверяется на соответствие коду клавиши Esc (27) – и все это одним выражением.

Пример: char ch; ch = getch();

printf(“Символ %c имеет код %d\n”, ch, ch);

2. Функция getchar () считывает очередной символ из стандартного входного потока (с клавиатуры) и копирует этот символ в стандартный выходной поток (на экран).

Прототип функции

int getchar (void); объявлен в файле <conio.h>).

Пример: #include <stdio.h>

void main(void)

 

{

int c;

 

 

/* Note that getchar reads from stdin and is line buffered; this means it will not return until

you press ENTER. */

 

while ( ( c = getchar() ) != '\n' )

 

 

printf( "%c", c ); }

 

В результате выполнения этой программы на экране появится строка введен-

ных символов, второй раз эта строка появится после нажатия Enter.

3.

Функция putchar() записывает символ в стандартный поток вывода (на экран).

Прототип функции

int putchar ( int c); объявлен в файле <conio.h>).

Пример:

char ch;

 

printf ( "Введите предложение")' while ( ( ch = getch () ) ! = '\n' )

putchar (ch);

36

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]