Главная » Все файлы » Просмотр файлов из архивов » PDF-файлы » Т.В. Руденко - Сборник задач и упражнений по языку Си

Т.В. Руденко - Сборник задач и упражнений по языку Си, страница 6

PDF-файл Т.В. Руденко - Сборник задач и упражнений по языку Си, страница 6 Операционные системы (37386): Книга - 3 семестрТ.В. Руденко - Сборник задач и упражнений по языку Си: Операционные системы - PDF, страница 6 (37386) - СтудИзба2019-05-08СтудИзба

Описание файла

PDF-файл из архива "Т.В. Руденко - Сборник задач и упражнений по языку Си", который расположен в категории "". Всё это находится в предмете "операционные системы" из 3 семестр, которые можно найти в файловом архиве МГУ им. Ломоносова. Не смотря на прямую связь этого архива с МГУ им. Ломоносова, его также можно найти и в других разделах. .

Просмотр PDF-файла онлайн

Текст 6 страницы из PDF

Описать функцию, вычисляющую значение x0 + x0∗x1 + x0∗x1∗x2 +…+ x0∗x1∗x2 ∗… ∗xm, где xi - элементы вещественного массива x из n элементов,m - индекс первого отрицательного элемента этого массива либо число n-1, еслитакого элемента в массиве нет.5.25. Описать функцию, вычисляющую значение max( x0 + xn-1, x1 + xn-2,x2 + xn-3,…, x(n-1)/2 + xn/2), где xi - элементы вещественного массива x из n элементов.5.26. Описать функцию, вычисляющую значение min( x0 ∗ x1, x1 ∗ x2 ,x2 ∗ x3,…, xn-3 ∗ xn-2, xn-2 ∗ xn-1), где xi - элементы вещественного массива x из nэлементов.5.27.

Описать функцию, вычисляющую значение x0∗y0+x1∗y1+ …+xk∗yk, где xi – отрицательные элементы вещественного массива a из n элементов,взятые в порядке их следования; yi – положительные элементы этого массива,взятые в обратном порядке; k = min(p,q), где p – количество положительных элементов массива a, q – количество отрицательных элементов этого массива.5.28. Описать функцию, которая упорядочивает элементы целочисленного массива по неубыванию, используя следующий алгоритм сортировки:a) сортировка выбором: находится максимальный элемент массива ипереносится в его конец; затем этот метод применяется ко всем элементам массива, кроме последнего (т.к.

он уже находится на своем месте), и т.д.b) сортировка обменом (метод пузырька): последовательно сравниваются пары соседних элементов xk и x k+1 ( k = 0, 1, … ,n-2 ) и, если xk > x k+1, тоони переставляются; в результате наибольший элемент окажется на своем местев конце массива; затем этот метод применяется ко всем элементам, кроме последнего, и т.д.c) сортировка вставками: пусть первые k элементов массива (от 0 доk-1) уже упорядочены по неубыванию; тогда берется xk и рaзмещается средипервых k элементов так, чтобы упорядоченными оказались уже k+1 первыхэлементов; этот метод повторяется при k от 1 до n-1.5.29.

Описать функцию, определяющую индекс первого элемента целочисленного массива из n элементов, значение которого равно заданному числу26x. Если такого элемента в массиве нет, то считать номер равным –1. Элементымассива упорядочены по возрастанию; использовать метод двоичного (бинарного) поиска.5.30.

Программа. Описать функцию f(a, n, p), определяющую, чередуются ли положительные и отрицательные элементы в целочисленном массиве aиз n элементов и вычисляющую целочисленное значение p. Если элементы чередуются, то p - это сумма положительных элементов, иначе p - это произведение отрицательных элементов. С помощью этой функции провести анализ целочисленного массива x [50].5.31. Программа. Описать функцию f(a, n, p), определяющую, упорядочены ли строго по возрастанию элементы в целочисленном массиве a из n элементов, и вычисляющую целочисленное значение p. Если элементы упорядочены, то p - это произведение разностей рядом стоящих элементов, иначе p - этоколичество нарушений порядка в массиве a. С помощью этой функции провестианализ целочисленного массива b [60].5.32.

Программа. Описать функцию f (s, n, x), определяющую, какойсимвол чаще других встречается в строке s и сколько раз он в нее входит. Еслитаких символов несколько, то взять первый из них по алфавиту. С помощьюэтой функции провести анализ строки str.5.33. Программа. Описать функцию f(s, n, x), определяющую, какойсимвол реже других ( но не нуль раз ) встречается в строке s и сколько раз он внее входит. Если таких символов несколько, то взять первый из них по алфавиту. С помощью этой функции провести анализ строки str.5.34. Программа. Для целочисленного массива а, содержащего n элементов, описать функцию f(a, n, last, k, nlast), определяющую last - значение последнего из элементов массива а, значение которого принадлежит диапазону[-k, k], и nlast - индекс этого элемента.

С помощью этой функции вычислить соответствующие значения last и nlast для целочисленных массивов x[20] и y[30].5.35. Программа. Для вещественного массива а, содержащего n элементов, описать функцию G, определяющую значения максимального и минимального элементов этого массива. С помощью этой функции для вещественныхмассивов x[25] и y[40] вычислить соответствующие значения.5.36. Описать функцию, которая изменяет заданную строку следующимобразом: сначала записывает все элементы с четными индексами, а затем всеэлементы с нечетными индексами ( с сохранением их относительного порядка вкаждой группе).Например, abcdefgh => acegbdfh, vwxyz => vxzwy.5.37.

Описать функцию, которая в заданной строке меняет местами еепервую и вторую половины.Например, abcdefgh => efghabcd, vwxyz => yzxvw.275.38. Описать функцию, осуществляющую циклический сдвиг на n позиций вправо элементов целочисленного массива, содержащего m элементов(n<m).5.39. Описать функцию, осуществляющую циклический сдвиг на n позиций влево элементов целочисленного массива, содержащего m элементов(n<m).5.40. Написать программу, обнуляющую каждую четную двоичнуюединицу в коде, размещенном в переменной типа int.

Вывести исходные данныеи полученный результат в виде, удобном для анализа проведенных преобразований.5.41. Написать программу, обнуляющую каждую нечетную двоичнуюединицу в коде, размещенном в переменной типа int. Вывести исходные данныеи полученный результат в виде, удобном для анализа проведенных преобразований.5.42. Описать функцию, которая в каждом элементе беззнакового целочисленного массива заменяет старший байт нулевым кодом, если в этом байтеразмещен код латинской буквы.6. СТРУКТУРЫ, ОБЪЕДИНЕНИЯ6.1Основные сведения6.1. Верны ли следующие утверждения:a) описание структуры начинается с ключевого слова struct и содержитсписок объявлений членов структуры, заключенный в фигурные скобки;b) за словом struct должен следовать идентификатор, называемый тегом структуры;c) тег структуры используется в качестве имени типа при описании переменных;d) имена членов структуры могут совпадать с именами переменных втой же области видимости;e) имя тега структуры может совпадать с именами переменных в той жеобласти видимости;f) имя тега структуры может совпадать с именами членов этой структуры;g) имена членов разных структур могут совпадать;h) за описанием структуры (после правой закрывающей фигурной скобки) обязательно должен следовать список переменных;i) переменные x, y, z разных типов1) struct s { int a; float f; } x, y;struct s z;2) typedef struct { int a; float f;} s;s x, y;struct { int a; float f; } z;3) struct s { int a; float f; };typedef struct s new_s;4) struct s { int a; float f; };typedef struct s s1;28struct s x; new_s y, z;typedef struct s s2;s1 x, y; s2 z;j) переменные x, y, z одного типа1) struct { int a; float f; } x, y;struct { int a; float f; } z;2) struct { int a; float f; } x, y;struct { float f; int a; } z;k) для доступа к членам структуры используется операция .

(точка);l) структуры не могут быть вложенными;m) структурную переменную при ее описании можно инициализироватьсписком константных выражений, заключенным в фигурные скобки;6.2. Каким образом в Си определяется эквивалентность типов? Какаяэквивалентность типов рассматривается: структурная или именная? Чем они отличаются?6.3.

Описать в виде структуры следующие понятия:a) дата (число, месяц, год);b) адрес (страна, город, улица, дом, квартира);c) треугольник (две стороны и угол между ними);d) окружность (радиус и центр);e) расписание занятий студента 209 группы факультета ВМК (день недели, предметы (с указанием – лекции или семинары), часы занятий, аудитория,фамилия преподавателя)f) результаты проверки контрольной работы (номер группы, номерконтрольной работы, тема, 25 строчек с полями: фамилия студента, вариант,информация о каждой из пяти задач (ее номер, оценка за ее решение, характеристика ошибок), итоговая оценка студента за эту контрольную работу.6.4. Используя определенный в задаче 6.3 тип, описать переменную этого типа и присвоить ей значение:a) дата – 16 ноября 1999 года;b) адрес – Россия, Москва, Ильинка, дом 3, кв. 34;c) треугольник – 5, 6.7, 35°;d) окружность – радиус 4.567, центр (1.4, 5.6);e) расписание занятий студента 209 группы факультета ВМК – понедельник, математический анализ (лекция) –1 пара, П-12, Ломов И.С., математический анализ (семинар) – 2 пара, 706, Григорьев Е.А., программирование (семинар) – 3 пара, 713, Пильщиков В.Н.6.5.

Что напечатает программа?#include <stdio.h>main(){ struct data1 { char c[4]; char ∗s; } d1 = { "abc", "def" };struct data2 { char ∗ cp; struct data1 inf; } d2 = { "ghi", { "jkl", "mno"} };printf("d1.c[0]=%c ∗d1.s=%c\n", d1.c[0], ∗d1.s);printf("d1.c=%s d1.s=%s\n", d1.c, d1.s);printf("d2.cp=%s d2.inf.s=%s\n", d2.cp, d2.inf.s);29printf("++d2.cp=%s ++d2.inf.s=%s\n", ++d2.cp, ++d2.inf.s);}6.6.

Верны ли следующие утверждения:a) описание объединения начинается с ключевого слова union и содержит список объявлений членов объединения, заключенный в фигурные скобки;b) каждый член объединения располагается в памяти с одного и того жеадреса; объем памяти для каждого члена выделяется в соответствии с его размером;c) для каждого из членов объединения выделяется одна и та же областьпамяти;d) все проблемы, связанные с выравниванием, решает компилятор;e) в каждый момент времени объединение может содержать значениетолько одного из его членов;f) все операции, применимые к структурам, применимы и к объединениям;g) «рассогласованность» при работе с активным вариантом объединения контролируется компилятором.6.7.

Можно ли в Си создать аналог вариантных записей Паскаля?6.8. Описать тип, с помощью которого можно организовать хранениеданных о различных видах транспорта: грузовиках, автобусах, легковых автомобилях и мотоциклах. Для каждого вида транспорта имеются как общие характеристики ( владелец, год производства и модель ), так и индивидуальные ( длягрузовиков - число осей, грузоподъемность, для автобусов - число мест для пассажиров, для легковых автомобилей - число дверей ( 2 или 4 ), для мотоциклов тип двигателя ( двух- или четырехтактный )).6.2Структуры и функции. Указатели на структуры.6.9.

Верны ли следующие утверждения:a) к структурам одного типа применима операция присваивания;b) к структурам одного типа, не содержащим вложенных структур,применима операция сравнения ( выполняется почленное сравнение );c) параметром функции может быть указатель на структуру, но не самаструктура;d) параметры функции – структуры передаются по значению;e) результатом работы функции может быть структура;f) результатом работы функции может быть указатель на структуру;g) функция sizeof(struct any) выдает результат, равный сумме длинвсех полей этой структуры;h) к структурам применима операция взятия адреса;6.10.

Перечислить все операции, применимые к структурам.6.11. Пусть точка на плоскости описана следующим образом:struct point { int x; int y;}30Верно ли решена задача: «описать функцию, которая присваивает значение структуре типа struct point »a) void assign_to_point ( struct point p, int a, int b){ p.x = a; p.y = b; }b) void assign_to_point ( struct point ∗p, int a, int b){ (∗p).x = a; (∗p).y = b; }c) void assign_to_point ( struct point ∗p, int a, int b){ ∗p.x = a; ∗p.y = b; }d) void assign_to_point ( struct point ∗p, int a, int b){ p -> x = a; p -> y = b; }6.12. Пусть точка на плоскости описана следующим образом:struct point { int x; int y;}Верно ли решена задача: «описать функцию, которая создает точку издвух целых чисел»a) struct point create_point ( int a, int b){ struct point p;p.x = a; p.y = b; return p;}b) struct point ∗create_point ( int a, int b){ struct point p;p.x = a; p.y = b; return &p;}c) struct point ∗create_point ( int a, int b){ struct point ∗pp;pp -> x = a; pp -> y = b; return pp;}d) struct point ∗create_point ( int a, int b){ struct point ∗pp;pp = (struct point ∗) malloc(sizeof(struct point));pp -> x = a; pp -> y = b; return pp;}6.13.

Свежие статьи
Популярно сейчас
А знаете ли Вы, что из года в год задания практически не меняются? Математика, преподаваемая в учебных заведениях, никак не менялась минимум 30 лет. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5259
Авторов
на СтудИзбе
420
Средний доход
с одного платного файла
Обучение Подробнее