База ответов ИНТУИТ

Основы программирования

<<- Назад к вопросам

Пусть описана структура
    struct Line {        int len;        char *str;    };
и переменые
    struct Line s1, *s2;    int n; char c;
Укажите все корректные выражения языка Си среди перечисленныхниже:

(Ответ считается верным, если отмечены все правильные варианты ответов.)

Варианты ответа
s1 == *s2
n = s1.len (Верный ответ)
c = s2->str[2] (Верный ответ)
s1 = *s2 (Верный ответ)
Похожие вопросы
Пусть описана структура
    struct Tree {        struct Tree *left;        struct Tree *right;        void *value;    };
и переменые
    struct Tree *t1, *t2;    int m;
Укажите все корректные выражения языка Си среди перечисленныхниже:
Пусть описана структура
    struct List {        struct List *next;        void *value;    };
и переменые
    struct List e, *p;    int m;
Укажите все корректные выражения языка Си среди перечисленныхниже:
Пусть p и q — два указателя на целочисленное значение:
    int *p, *q;
Укажите все корректные выражения языка Си среди перечисленныхниже:
Пусть p и q — указатель на целочисленное значениеи целочисленный массив:
    int *p, q[100];
Укажите все корректные выражения языка Си среди перечисленныхниже:
Прототип функции, которая ищет вхождение строкиs2 в строку s1,выглядит следующим образом:
    int find(char *s1, char *s2);
функция возвращает смещение подстрокиs2 относительно начала строки s1в случае успеха или (-1) в случае неудачи.Можно ли воспользоваться функцией find в приведенном нижефрагменте программы(будут ли выданы сообщения об ошибках или предупрежденияпри компиляции этого фрагмента)?
    void f(char s[1024], const char p[64]) {        int pos = find(s, p);        . . .    }
Пусть описан тип R2Vector, представляющий векторна плоскости с вещественными координатами:
    typedef struct {        double x;        double y;    } R2Vector;
также описаны три переменные u, v иw типа вектор и вещественная переменная s:
    R2Vector u, v, w;    double s;
при этом известно, что переменные u и vсодержат два конкретныхвектора единичной длины.Пусть в результате выполнения следующего фрагмента программызначение переменной s приблизительно равно 0.7071,т.е. корню из двух, деленному пополам:
    w.x = (-u.y); w.y = u.x;    s = v.x * w.x + v.y * w.y;    // s == 0.7071
На какой угол надо повернуть вектор u,чтобы получить вектор v?
Пусть описан тип R2Vector, представляющий векторна плоскости с вещественными координатами,
    typedef struct {        double x;        double y;    } R2Vector;
также описаны три переменныеu, v и w типа вектори вещественная переменная s:
    R2Vector u, v, w;    double s;
при этом переменная u содержат конкретный векторединичной длины, а вектор v получается изu вращением на 30 градусов по часовойстрелке. Указать, чему будет приблизительно равнозначение вещественной переменной s в результатевыполнения следующего фрагмента программы:
    w.x = (-u.y); w.y = u.x;    s = v.x * w.x + v.y * w.y;
Пусть описан тип R2Vector, представляющий векторна плоскости с вещественными координатами:
    typedef struct {        double x;        double y;    } R2Vector;
также описаны три переменные u, v и wтипа вектор и вещественная переменная s:
    R2Vector u, v, w;    double s;
при этом переменная u содержат конкретный векторединичной длины. Указать, чему будетприблизительно равно значение переменной s врезультате выполнения следующего фрагмента программы:
    v.x = (-u.y);    v.y = u.x;    w.x = u.x + v.x;    w.y = u.y + v.y;    s = sqrt(w.x * w.x + w.y * w.y);
(функция sqrt извлекает квадратный корень из вещественногочисла).
В функции f языка Си описана одна целочисленнаяпеременная z:
    int f(int x, int y) {        int z;        . . .    }
Локальные переменные и аргументы функцииадресуются относительно регистра FP, т.е. их адресаравны сумме содержимого FP и константы, задающей смещение.Чему равен адрес переменной z?
Рассмотрим следующий фрагмент программы:
#include <string.h>#include <сtype.h>. . .    int n, i;    char a[32];    strcpy(a, "11B");    n = 0; i = 0;    while (a[i] != 0) {        n *= 16;        if (isdigit(a[i])) {            n += a[i] - '0';        } else if ('A' <= a[i] && a[i] <= 'F') {            n += (a[i] - 'A') + 10;        }        ++i;    }
Чему будет равно значение переменной nв результате выполнения этого фрагмента?