Главная страница Случайная страница КАТЕГОРИИ: АвтомобилиАстрономияБиологияГеографияДом и садДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеталлургияМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРелигияРиторикаСоциологияСпортСтроительствоТехнологияТуризмФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника |
Примеры использования
Пример 1. Нахождение расстояния между точками в декартовой системе координат
#include " stdafx.h" #include < iostream> #include < math.h>
using namespace std;
//объявляем структуру точка struct point { float X; float Y; };
float dst(point p, point q) { return sqrt((p.X - q.X)*(p.X - q.X) + (p.Y - q.Y)*(p.Y - q.Y)); }
int main() { setlocale(LC_ALL, " Russian");
point a, b;
cin > > a.X > > a.Y;
cin > > b.X > > b.Y;
float d = dst(a, b);
cout < < " Расстояние между точками: " < < d < < endl;
return 0; }
Пример 2. Работа с каталогом книг
#include " stdafx.h" #include < iostream> #include < math.h>
using namespace std;
//объявляем структуру книга struct book { char author[40]; char title[100]; int year; int pages; int quantity; float price; };
int main() { setlocale(LC_ALL, " Russian");
int N;
cout < < " Введите количество книг в каталоге: " < < endl;
cin > > N;
//созадим динамически каталог книг book *catalog = new book[N];
//введем данные о книгах с клавиатуры for (int i = 0; i < N; i++) { cout < < " Введите имя автора: " < < endl; cin > > catalog[i].author; cout < < " Введите название: " < < endl; cin > > catalog[i].title; cout < < " Введите год издания: " < < endl; cin > > catalog[i].year; cout < < " Введите количество страниц: " < < endl; cin > > catalog[i].pages; cout < < " Введите количество книг: " < < endl; cin > > catalog[i].quantity; cout < < " Введите цену книги: " < < endl; cin > > catalog[i].price; cout < < endl; }
//выведем на экран книги, цена которых меньше 200 руб //и найдем сумму всех книг в каталоге float s = 0; for (int i = 0; i < N; i++) { if (catalog[i].price < 200) { cout < < " Автор: " < < catalog[i].author < < endl; cout < < " Название: " < < catalog[i].title < < endl; cout < < " Год издания: " < < catalog[i].year < < endl; cout < < " Количество страниц: " < < catalog[i].pages < < endl; cout < < " Количество книг: " < < catalog[i].quantity < < endl; cout < < " Цена книги: " < < catalog[i].price < < endl; cout < < " Сумма: " < < catalog[i].price*catalog[i].quantity < < endl; cout < < endl; } s += catalog[i].price*catalog[i].quantity; }
cout < < " Общая сумма: " < < s < < endl;
delete []catalog;
return 0; }
Контрольные вопросы 1. Как объявить пользовательский тип данных? 2. Что такое перечисления? 3. Как осуществляется описание структуры? 4. Что такое поле структуры? 5. Как обратится к элементу структуры? 6. К каким типам данных относятся объединения и структуры? 7. Как проинициализировать переменную структурного типа? 8. Для чего применяются структуры? 9. Как объявляется объединение? 10. Как используются объединения? 11. Как обратится к элементу объединения? 12. Что такое битовые поля? 13. Как обратится к элементу битового поля?
|