Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
программирование.docx
Скачиваний:
3
Добавлен:
27.09.2019
Размер:
41.35 Кб
Скачать

3)Коды символов. Вставка символа в строку

Символ

Код MC DOS

код Windows

Dos->windows

unsigned char(0~255)

char

(-128~ 127)

unsigned char(0~255)

char

-128~127

разница

А-Я

128..159

-128..-97

192..223

-64..-33

+64

а-п

160..175

-96..-81

224..239

-32..-17

+64

р-я

224..239

-32..-17

240..255

-16..-1

+16

ё

241

-15

184

-72

замена кода

Ё

240

-16

168

-88

замена кода

#include <iostream>

#include <iomanip>

#include<fstream>

using namespace std;

//ф-я вставки символа str[] - входная строка

void insert(char str[],int p,char c)

{//цикл от конца строки до места вставки

for(int i=strlen(str);i>=p;i--)

str[i+1]=str[i];

str[p]=c;}

int main()

{setlocale(o,"");

const int L=20;

char c;char s[L];

int n;

cout<<"Введите строку:";cin.getline(s,L);//считывание строки с клавиатуры

cout<<"Введите номер позиции вставки";

cin>>n;

cout<<"Введите символ";

cin>>c;

insert(s,n,c);

cout<<s<<endl;

return 0;}

4)Вывод символов по их кодам

Задача 1)Из чисел (кодов символов) получить соответствующие символы

#include <iostream>

#include <iomanip>

using namespace std;

int main()

{ // ф-я вывода символа по его коду

char c; //символьная переменная

for(int i=33;i<256;i++)

{ c=i; // преобразование кода в символ

cout<<setw(6)<<c<<setw(5)<<i; // вывод символа и кода

if(i%7==0) cout<<endl; // после каждых 7 символов переход на другую строку

} cout<<endl;

return 0;}

5) Вывод символов цифр по их значениямЗадание 1)получить символ десятичой цифры из значения целой переменной,лежащей в диапазоне 0-9

Цифры

0

1

2

3

4

5

6

7

8

9

Z

Коды

48

49

50

51

52

53

54

55

56

57

Символы

‘0’

‘1’

‘2’

‘3’

‘4’

‘5’

‘6’

‘7’

‘8’

‘9’

s

Алгоритм: s=’0’+z=48+z

Пример: z=2; s=48+2=50=’2’

#include<iostream>

#include <iomanip>

using namespace std;

char s(int z) // ф-я

{ if(z>=0 && z<=9) return '0'+z ; else return 'x';}

int main() { for (int i=0;i<12;i++)

cout<<setw(4)<<s(i);// обращение к ф-ии

cout<<endl;

return 0;}

Результат: 0,1,2,..,10,11 – числа

0,1,2,..,х,х - символы

6)Вывод символа шеснадцатиричной цифры по ее коду

Z

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

48

49

50

51

52

53

54

55

56

57

65

66

67

68

69

70

S

‘0’

‘1’

‘2’

‘3’

‘4’

‘5’

‘6’

‘7’

‘8’

‘9’

‘A’

‘B’

‘C’

‘D’

‘E’

‘F’

#include<iostream>

#include <iomanip>

using namespace std;

char s(int z) // ф-я

{ if(z <=9) return '0'+z ; else return 'A'+z-10;}

int main()

{ for (int i=0;i<16;i++)

cout<<setw(4)<<i;// обращение к ф-ии

cout<<endl;

//Вывод 16-и ричной цифры

for (int i=0;i<16;i++)

cout<<setw(4)<<s(i);// обращение к ф-ии

cout<<endl;

return 0;}