Функция форматированного вывода printf() имеет синтаксис:
printf(форматная_строка, список_вывода);
Список_вывода – это константа, переменная или любое унарное выражение, которое может быть заключено в скобки. Форматная_строка – последовательность символов в двойных кавычках, в которой можно с помощью спецификаторов задавать способ преобразования данных. Спецификаторы – это символы, которые начинаются знаком %. Вся форматная строка в функции printf() выводиться на экран, причем спецификаторы заменяются значениями выводимых аргументов из списка.Например:
int a=2,b=5;
printf("c=%d, a=%d, a+b=%d\n",9,а,a+b);// c=9, a=2, a+b=7
Спецификаторы преобразования задается в виде:
%[флаги][ширина][.точность]<тип>
где [флаги]:
"–" выравнивание числа влево (справа пробелы)
"+" вывод перед числом знака числа (знаки " + " и " – ")
"#" вывод идентификатора системы счисления (0 в 8 СС, 0х в16 СС)
[ширина] – количество позиций для вывода;
[.точность] – количество цифр дробной части вещественных чисел или количество выводимых символов для строки.
Имеются следующие типы преобразования переменных
% c – целое число типа char, int, short в виде символа;
% d – целое число типа char, int, short в 10-ой системе счисления (СС);
% u – беззнаковое целое число в 10-ой СС;
% o – целое число в 8-ой системе счисления;
% x – целое число в 16-ой системе счисления;
% f – вещественное число типа float;
% e – вещественное число типа float в экспоненциальной форме;
% lf – вещественное число типа doublе;
% le – вещественное число типа doublе в экспоненциальной форме;
% s – строка; % p – адрес переменной (&a).
Функция форматированного ввода scanf() имеет синтаксис:
scanf(форматная_строка, список_ввода);
|
Список_ввода – это адреса переменных, куда должны вводиться числа после преобразования. Форматная строка – последовательность спецификаторов (первый знак %) в двойных кавычках.
int a,b,c; float g;
scanf("%d",&a); // ввод значения целой переменной а
scanf("%f",&g); // ввод значения вещественной переменной g
scanf("%d %d",&b,&c); // ввод значений целых переменных b и c.
Функции неформатированного вывода символа. Для вывода символа на экран используются функции putchar(аргумент) и putch(аргумент), где аргумент представляется как целое число, соответствующее коду выводимого символа.
char c1=’w’,c2=’z’; putchar(c1); putch(c2);
Функции неформатированного ввода символа. Для ввода символа c клавиатуры используются функции getchar(), getch(), getchе(), которыене имеют аргументов и возвращают целое число, соответствующее вводимому символу. Функция getchar() вводит символ с нажатием клавиши Enter; getch() – без нажатия клавиши Enter;без вывода на экран, getchе() – без нажатия клавиши Enter с выводом на экран.
char c3=getchar();
char c4=getch();
char c5=getche();
Функции неформатированного ввода-вывода строки. Для вывода строки на экран используется функция puts(строка), для ввода строки c клавиатуры используется функция gets(строка).
char str1[]="abcd"; puts(str1);
char str2[20]; gets(str2);
Функции ввода-вывода в языке С++
Функция cout<< –выполняет вывод данных на экран, а функция cin>> – ввод данных с клавиатуры. Описаны в файле iostream.h.
В Visual C++ подкючаются:
#include <iostream>
using namespace std;
Флаги и манипуляторы: dec, oct, hex задание системы счисления; endl перевод на новую строку; left, right выравнивание; setw(4) задание ширины поля; showpoint, scientific задание точности, ширины
|
int a=5; float f=3.14;
cout<<a; // вывод на экран числа 5
cout<<f; // вывод на экран числа 3.14
cin>>а; // ввод с клавиатуры значения переменной а
cin>>f; // ввод с клавиатуры значения переменной f
char ch1,ch2; double d1,d2;
cin>>ch1>>d1>>d2>>ch2;
cout<<dec<<ch1<<oct<<a<<hex<<a<<endl;
cout<<setw(5)<<ch2; // вывод числа с шириной 5 позиций
Операторы
4.1 Операторы-выражения
Алгоритм – это последовательность действий для решения поставленной задачи. Блок-схема – это графическое представление алгоритма, дополненное пояснительными словами
Оператор-выражение – это переменные, функции и константы, объединенные знаками операций, после которых стоит точка с запятой.
Составной оператор – это несколько операторов, заключенных в фигурные скобки { }.
{a=45; d=-5; res=a*d;}
Блок – это составной оператор, внутри которого имеются определения переменных.
{int x=15; // определение переменной х
k=-5; sum=x+k;}
Пример. Два числа типа float вводятся с клавиатуры и находится среднее арифметическое этих чисел
#include <stdio.h>
Void main()
{float a,b,res;
puts("Введите два числа");
scanf("%f %f",&a,&b);
res=(a+b)/2;
printf("a=%6.2f b=%6.2f res=%6.2f\n",a,b,res);
}
4.2 Операторы выбора
4.2.1 Условный оператор
Условный оператор if…else выбирает один из двух вариантов и имеет такой синтаксис: