Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ОКР №1 по КПиЯП (ч.1).docx
Скачиваний:
2
Добавлен:
04.09.2019
Размер:
53.69 Кб
Скачать

Вариант №1

  1. Выберите правильную команду вывода на экран значений двух переменных – целой m и вещественной n.

Ответ: б – printf (“%d %f\n”, m, n).

  1. Выберите определение понятия строковая константа:

Ответ: б – последовательность символов, включая строковые и прописные буквы русского и латинского алфавита, а так же цифры, заключённые в кавычки («»).

  1. Дайте определение функции.

Ответ: функция – это совокупность объявлений и операторов, обычно предназначенные для решения определённой задачи. Каждая функция должна иметь имя, которое используется для её объявления, определения и вызова.

  1. Опишите схему выполнения оператора for.

Схема for:

For (выражение_1; выражение_2; выражание_3) оператор, где

выражение_1 – инициализация начального значения параметра цикла;

выражение_2 – проверка условия на продолжение цикла;

выражание_3 – изменение параметра цикла (коррекция параметра);

оператор – простой или составной оператор языка С.

  1. Запишите команды ввода исходных значений, вычисления значения выражения и вывода результата:

Решение: (без всяких примочек, исключительно сами операторы – здесь и далее)

printf (“a= “);

scanf (“%f”, &a);

printf (“b= “);

scanf (“%f”, &b);

x=(pow((a+b),2) – (pow(a,2)+2*a*b))/pow(b,2);

printf (“x= %f\n”, x);

  1. Запишите команду вычисления следующего выражения и вывода на экран результата:

Решение:

if (t < -2) s=pow(t,3)+5; else

if ((t >= -2) && (t <= 10)) s=t+2.5; else

if (t > 10) s=t/(pow(a,2)+5);

printf (“%f\n”, s);

  1. Напишите программу решения следующей задачи: Дан массив из n целых чисел. Найти сумму положительных элементов этого массива.

Решение:

#include <conio.h>

#include <stdio.h>

#include <math.h>

main ()

{

int a[1000], sum=0, i, n;

printf (“n= “);

scanf (“%d”,&n);

printf (“Vvedite massiv:\n”);

for (i=0; i < n; i++)

{

printf (“a[%d]= “, i);

scanf (“%d”, &a[i]);

}

for (i=0; i < n; i++)

if (a[i] > 0) sum+=a[i];

printf (“sum= %d\n”, sum);

getch ();

}

Вариант №2

  1. Выберите правильную команду ввода двух переменных - вещественной x и целой y.

Ответ: б – scanf (“%f %d”, &x, &y).

  1. Выберите определение понятия идентификатор:

Ответ: а – последовательность цифр и букв, а также специальных символов, при условии, что первой стоит буква или специальный символ.

  1. Дайте определение объединения.

Ответ: Объединение – переменная, которая позволяет в разные моменты времени хранить значения различных типов.

  1. Опишите объявление шаблона структуры, определение и инициализацию переменной структурного типа, синтаксис доступа к полям структуры.

  • шаблон структуры

struct имя_шаблона

{

тип1 имя_переменной1;

тип2 имя_переменой2;

}

  • определение переменной структурного типа:

struct имя_шаблона имя_переменной;

  • инициализация переменной структурного типа:

имя_шаблона имя_переменной_структуры = {значение1, значение2, }

  • синтаксис доступа к полям структуры:

имя_переменной_струкруры.имя_поля_стр

  1. Запишите команды ввода исходных значений, вычисления значения выражения и вывода результата:

Решение:

printf (“x= “);

scanf (“%f”, &x);

p=sin(x)+pow(x,3)+1/(pow(x,2)+1);

printf(“p= %f\n”, p);

  1. Запишите команду вычисления следующего выражения и вывода на экран результата: y=x32x5, для x=1…10

Решение:

for (x=1; x <= 10; x++)

{

y=pow(x,3)-2*x-5;

printf (“y=%d\n”, y);

}

  1. Напишите программу решения следующей задачи: Ввести два числа и найти минимальное из них с помощью функции .

Решение:

#include <conio.h>

#include <stdio.h>

#include <math.h>

int min (int x, int y)

{

if (x < y) return x;

else return y;

}

main()

{

int x, y;

printf (“x = “);

scanf (“%d”, &x);

printf (“y = “);

scanf (“%d”, &y);

printf (“min= %d\n”, min (x,y));

getch();

}

Вариант №3

  1. Выберите правильные команды вывода строки символов.

Ответ: б – printf (“%s” , string).

  1. Выберите определение понятия символьная константа:

Ответ: в – символ, заключённый в апострофы (‘ ‘).

  1. Дайте определение размерности массива.

Ответ: размерность массива – количество индексов, используемых для ссылки на конкретный элемент массива.

  1. Опишите объявление, определение и вызов пользовательской функции.

  • объявление:

<тип_результата><имя_функции>(<тип><переменная>, …<тип><переменная>)

  • определение:

<тип_результата><имя_функции> (список параметров)

{

код функции

}

  • вызов:

<имя_функции> (список_аргументов)

  1. Запишите команды ввода исходных значений, вычисления значения выражения и вывода результата:

Решение:

printf (“x= “);

scanf (“%f”,&x);

printf (“y= “);

scanf (“%f”, &y);

p=(5-3*pow(y,2))/sqrt(5+sin(pow(x,3)));

printf (“p= %f\n”, p);

  1. Achtung!!! Возможно решение и не верно.

Запишите команду вычисления следующего выражения и вывода на экран результата: y =x 2 +sin5x, пока y не станет больше 100.

Решение:

for (x=0;100>y;x++)

{

y=pow(x,2)+sin(5*x);

printf ("y= %f\n", y);

  1. Achtung!!! Отсутствуют идеи решения данной задачи. У кого они есть, убедительная просьба поделиться со своими товарищами по учёбе.

Напишите программу решения следующей задачи: Для заданных массивов F(k), P(k) определить произведение сумм .

Вариант №4

  1. Выберите команды ввода строки символов.

Ответ: б – scanf (“%s”, string).

  1. Выберите определение понятия массива:

Ответ: а – переменная, способная хранить одно или несколько значений.

  1. Дайте определение рекурсивной функции.

Ответ: Рекурсивная функция – способ реализации функции, когда функция может обращаться сама к себе.

  1. Опишите схему выполнения оператора while.

while (условие) оператор;

где оператор – простой, составной или пустой оператор.

Цикл выполняется до тех пор, пока условие принимает значение «истина», т.е. выражение в скобках возвращает ненулевой результат. Это цикл с предусловие – сначала проверяет условие, затем выполняет оператор. Поэтому цикл while не выполняется ни разу, если изначально результат вычисления условия будет = 0 («ложно»).