Лабораторная работа №1 Тема: программирование основных алгоритмических конструкций на языке с++



Download 0,62 Mb.
bet17/28
Sana21.06.2022
Hajmi0,62 Mb.
#689734
TuriЛабораторная работа
1   ...   13   14   15   16   17   18   19   20   ...   28
Bog'liq
лабораторные работы по с 2сем

Лабораторная работа №6
Тема: Составной тип данных: Смеси.
Целью лабораторной работы является получение базовых практических навыков использования смеси в системах программирования, необходимых для дальнейшего выполнения цикла лабораторных работ.


Занятие 1
2 часа
Значения различных типов можно хранить в одной и той же области памяти (но не одновременно). Для этого используются тип "смесь". Фактически смесь - это структура, все элементы которой имеют нулевое смещения, а сама структура достаточно велика, чтобы вместить самый большой элемент, и выровнена так , чтобы можно было работать с любым элементом.
Объявление смеси имеет тот же синтаксис, что и объявление struct, за исключением того, что оно начинается с ключевого слова union вместо ключевого слова - struct.
Для объявления смеси и struct действуют одни и те же правила, только в смеси не допускаются элементы типа полей битов.
Объявление смеси имеют 2 формата: Формат 1:
union [имя-типа-смеси] (список-обьяв-й элемент} \
[описатель [,описатель]... ]; Формат 2:
union имя-типа-смеси описатель [,описатель]...;
Память, которая соответствует переменной типа смеси, определяется величиной, необходимой для размещения наибольшего элемента смеси. Когда используются меньший элемент смеси, то переменная типа смеси может содержать неиспользуемую память. Все элемента смеси хранятся в одной и той же области, начиная с одного и того же адреса.
Часто смеси применяются в случаях, когда надо выделить часть целой переменной или загрузить целое значение в структуру, описанную с полями битов.
// Программа выдачи двоичного кода введенного символа //* Для окончания ввести символ k # include struct byte {
unsigned a: 1 ;
unsigned b: 1;
unsigned с : 1;
unsigned d: 1 ;
unsigned e: 1;
unsigned f: 1 ;
unsigned g: 1;
unsigned h: 1 ;
};
union symb {
unsigned char ch; struct byte bit; } symbol;
void convert(union symb p); /* Функция выдачи двоичного эквивалента */ mainQ
{ do { printf("\n Нажмите любую клавишу — > ");
symbol. ch=getche(); /*Чтение с отображением очередного символа */
printf(":"); convert(symbol); }
void convert(union symb p)
{ if(p.bit.h)printf("l");
else printf("0"); if(p.bit.g)printf("l");
else printf("0"); if(p.bit.f)printf("l");
else printf("0"); if(p.bit.e)printf("l");
else printf("0"); if(p.bit.d)printf("l");
else printf("0"); if(p.bit.c)printf("l");
else printf("0"); if(p.bit.b)printf("l");
else printf("0"); if(p.bit.a)printf("l");
else printf("0"); printf("\n");

Результат выполнения программы: Нажмите любую клавишу—> g: Oil00111 Нажмите любую клавишу~> f: 01100110 Нажмите любую клавишу~> 2: 00110010 Нажмите любую клавишу—> У: 10010011 Нажмите любую клавишу—> м: 10101100 Нажмите любую клавишу—> Б: 10000001 Нажмите любую клавишу—> к: 10101010


Download 0,62 Mb.

Do'stlaringiz bilan baham:
1   ...   13   14   15   16   17   18   19   20   ...   28




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish