Студопедия

КАТЕГОРИИ:


Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748)

Внутренние коды символов




Форматированный ввод-вывод символьных данных и строк

Стандартные потоки ввода-вывода символьных данных и строк

cin – оператор, который определяет стандартные потоки ввода данных.

cout – оператор, который определяет стандартные потоки вывода данных.

<< – операция записи данных в поток;

>> – операция чтения данных из потока.

Пример 69.

int main()

{

char s[20];

cout<<"Input text";

cin>>s; //ввод строки из стандартного потока

cout<<s; //вывод строки в стандартный поток

system("pause");

return 0;

}

Результат выполнения программы: при вводе строки " 123 456 789 " чтение данных осуществляется побайтно до первого пробела, то есть в s занесется только первое слово строки " 123\0 ", следовательно, выведется: " 123 ".

 

Пример 70. Введите слово и замените в нем все вхождения заглавной латинской 'A' на малую латинскую 'a'. Выведите слово после редактирования.

int main()

{

char st[80];

int i;

cout << "\nВведите слово: ";

cin >> st;

for(i=0;st[i]!='\0';i++)

if (st[i]=='A') st[i]='a';

cout << "\nСлово после редактирования: "<< st;

system("pause");

return 0;

}

 

printf() – функция, осуществляющая форматированный вывод данных.

scanf() – функция, осуществляющая форматированный ввод данных.

%c – спецификатор формата ввода-вывода одиночного символа.

%s – спецификатор формата ввода-вывода строки символов.

Пример 70.

int main()

{

char s[20];

cout<<"Input text";

scanf("%s",s);

//для строк не используется обращение по адресу &

printf("%s",s);

system("pause");

return 0;

}

Результат выполнения программы: при вводе строки " 123 456 789 ", чтение данных осуществляется побайтно до первого пробела, то есть в строку s занесется только первое слово строки " 123\0 ", следовательно, выведется: " 123 ". Так как s – имя символьного массива, то есть адрес его начального элемента, операция & в функции scanf для строк не используется.

Пример 71. Записать введенную строку символов в обратном порядке.

int main()

{

char st[80];

char temp;

int i,len=0;

printf("\nВведите строку > ");

scanf("%s",st);

while (st[len++]); //вычисление длины строки

len-=2; //поправка на символ конца строки и нумерацию с нуля

for(i=0;i<len;i++,len--)

{//обмен символов

temp=st[i];

st[i]=st[len];

st[len]=temp;

}

printf("\nПолученная строка > %s", st);

system("pause");

return 0;

}

5) Прочитать несколько строк текста можно так:

char str[100];

cin.getline(str, 100, '*');

Второй параметр этой функции (100) задаёт максимальную длину строки, третий (‘*’) – по какому символу прекратить ввод.

Пример 72. Печать десятичных цифр и их кодов

int main()

{

char z;

for (z='0'; z<='9'; z++) {

if (z=='0' || z=='5')

printf ("\n");

printf("%c - %i ", z, z);

}

system("pause");

return 0;

 

}

Результат выполнения программы:

Пример 73. Вывести на экран вторую часть таблицы кодировки символов (символы с кодами от 128 до 255). Таблица должна состоять из восьми колонок и шестнадцати строк.

#include "stdafx.h"

#include <iostream>

using namespace std;

#define SM 128

int main()

{

unsigned char ch; /*если ch объявить как char, то буквам русского алфавита

будут соответствовать отрицательные коды*/

int i, j;

printf("Таблица ASCII кодировки символов\n");

for (i=0; i<16; i++) // шестнадцать строк

{

ch=i+SM;

for (j=1; j<=8; j++) // восемь колонок

{

printf ("%4c -%4i",ch,ch);

ch+=16;

}

printf ("\n");

}

system("pause");

return 0;

}

Результат выполнения программы:




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


Дата добавления: 2014-11-29; Просмотров: 513; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




Генерация страницы за: 0.015 сек.