Помощь студентам дистанционного обучения: тесты, экзамены, сессия
Помощь с обучением
Оставляй заявку - сессия под ключ, тесты, практика, ВКР
Заявка на расчет

Программирование на языке C в Microsoft Visual Studio 2010

Автор статьи
Валерия
Валерия
Наши авторы
Эксперт по сдаче вступительных испытаний в ВУЗах

В каком случае сумма всех элементов массива будет подсчитана правильно?

  • #include <stdio.h>#define N 10int main(){ int i, sum; int arr[N] = {3, 4, 5, 4, 4}; for (i = 1, sum = 0; i<=N; i++) sum += arr[i]; printf(«»Сумма элементов: %d\n»», sum); return 0; }
  • #include <stdio.h>#define N 10int main(){ int i, sum; int arr[N] = {3, 4, 5, 4, 4}; for (i = 0, sum = 0; i<N+1; i++) sum += arr[i]; printf(«»Сумма элементов: %d\n»», sum); return 0; }
  • (Правильный ответ) #include <stdio.h>#define N 10int main(){ int i, sum; int arr[N] = {3, 4, 5, 4, 4}; for (i = 0, sum = 0; i<N; i++) sum += arr[i]; printf(«»Сумма элементов: %d\n»», sum); return 0; }

В приведенной программе функция Copy выполняет копирование одной структуры типа sale в другую и возвращает структуру этого же типа:

typedef struct sale_struct { char *title; int price;} sale;sale Copy(sale);int main(void){ sale s1,s2; struct sale_struct s3, s4; s1.title = «»Book»»; s1.price = 200; s3.title = «»Cake»»; s3.price = 60; return 0;}sale Copy(sale s) { sale s1; s1 = s; return s1;} Какие из перечисленных вызов функции Copy являются верными?
  • s4 = Copy(&s3);
  • (Правильный ответ) s2 = Copy(s1);
  • (Правильный ответ) s3 = Copy(s1);

Чем отличаются функции printf() и puts() при консольном выводе информации?

  • (Правильный ответ) функция printf() записывает данные в стандартный выходной поток в соответствии с заданной строкой форматирования
  • (Правильный ответ) функция puts() заменяет символ конца строки ‘\0’ на символ новой строки ‘\n’
  • функция printf() предназначена для вывода данных только в файл

Почему язык С относится к языку среднего уровня?

  • язык С менее совершенен по сравнению с традиционными языками высокого уровня
  • (Правильный ответ) язык С сочетает элементы языков высокого уровня с функциональностью ассемблера
  • язык С обладает недостаточной структурированностью

Каким образом пользователь должен ввести данные о себе, чтобы в результате выполнения приведенного фрагмента кода программа вывела приветствие Приятно познакомиться, Иван Иванов!?

char FirstName[100], LastName[100]; int Age; printf(«»Введите Ваши имя, фамилию и возраст: \n»»); scanf(«»%s %[^,]s %d»», FirstName, LastName, &Age); printf(«»Приятно познакомиться, %s %s!\n»», FirstName, LastName);
  • (Правильный ответ) Иван Иванов, 30
  • Иван, Иванов, 30
  • Иван Иванов 30

Каким будет значение переменной d после выполнения заданных операций и почему?

int a = 15, b = 2; float c = 1.0F; float d; d = c*(a/b);
  • (Правильный ответ) d = 7.0, так как при выполнении деления произойдет потеря точности
  • d = 7.5, так как d имеет тип с плавающей точкой
  • d = 7, так как в результате выполнения арифметического выражения будет выполнено преобразование к типу int

Размер (в байтах) объектов каких типов данных не зависит от разрядности процессора?

  • (Правильный ответ) char
  • unsigned int
  • int

Чему будет равен результат вычисления a + b, если переменные имеют заданные значения?

int a = SCHAR_MIN; int b = SCHAR_MAX;
  • (Правильный ответ) -1
  • 0
  • 1

Чему будет равен результат вычисления a + b, если переменные имеют заданные значения?

int a = INT_MIN; int b = INT_MAX;
  • 1
  • 0
  • (Правильный ответ) -1

Сколько раз будет выполнен цикл for?

int x; printf(«»Угадайте число:\n»»); for (x=0; x!=123; ) scanf(«»%d»», &x);
  • (Правильный ответ) заранее неизвестно
  • 0
  • 123

В результате выполнения какого фрагмента кода значение переменной y будет равно 10?

  • int x = 5, y; for(y=1; y<=x; ++y) { printf(«»%d «», y); y = x*2; }
  • int x = 5, y = 1; do { y = x+1; x++; } while (y<=10);
  • (Правильный ответ) int x = 5, y = 10; while (y<=x) { printf(«»%d «», y); y = x*3; }

В результате выполнения какого фрагмента кода на экран будет выведена таблица чисел от 1 до 9 и их квадратов?

  • (Правильный ответ) int x, n = 1; while (n<10) { x = n*n; printf(«»%d %d\n»», n, x); n++; }
  • int x, n; for (n=1; n<9; n++) { x = n*n; printf(«»%d %d\n»», n, x); }
  • int x, n = 1; while (n<=10) { x = n*n; printf(«»%d %d\n»», n, x); }

Что будет выводиться на экран во время выполнения приведенного фрагмента кода?

int x, n = 1; while (n<=10) { x = n*n; printf(«»%d %d\n»», n, x); }
  • (Правильный ответ) бесконечное число строк «1 1»
  • таблица чисел от 1 до 10 и их квадратов
  • 10 строк с квадратами чисел от 1 до 10

Игра «Угадай число» заканчивавается, если задуманное число угадано, или количество попыток достигло определенного значения, например, 10. Какой фрагмент кода реализует эту игру неверно, если c — число попыток, n — задуманное число?

  • int c = 0, n = 100, m; do { printf(«»Ваш вариант: «»); scanf(«»%d»», &m); c++; } while ((n!=m) && (c<10))
  • (Правильный ответ) int c = 0, n = 100, m; do { printf(«»Ваш вариант: «»); scanf(«»%d»», &m); c++; } while ((n!=m) && (c<=10))
  • (Правильный ответ) int c = 0, n = 100, m; do { printf(«»Ваш вариант: «»); scanf(«»%d»», &m); c++; } while ((n!=m) || (c<=10))

Какое утверждение является верным для приведенного фрагмента кода?

int x; printf(«»Угадайте число:\n»»); for (x=0; x!=123; ) scanf(«»%d»», &x);
  • цикл выполняется, пока пользователь не введет число 0
  • цикл выполняется 123 раза
  • при компиляции приведенного кода возникнет ошибка
  • (Правильный ответ) цикл выполняется, пока пользователь не введет число 123

Игра «Угадай число» заканчивавается, если задуманное число угадано, или количество попыток достигло определенного значения, например, 10. Какой фрагмент кода правильным образом реализует эту игру, если c — число попыток, n — задуманное число?

  • (Правильный ответ) int c = 0, n = 100, m; do { printf(«»Ваш вариант: «»); scanf(«»%d»», &m); c++; } while ((n!=m) && (c<10))
  • int c = 0, n = 100, m; do { printf(«»Ваш вариант: «»); scanf(«»%d»», &m); c++; } while ((n!=m) && (c<=10))
  • int c = 0, n = 100, m; do { printf(«»Ваш вариант: «»); scanf(«»%d»», &m); c++; } while (n!=m) || (c<=10))

В результате выполнения какого фрагмента кода на экран будут выведены числа от 0 до 10?

  • int t; for(t=0; t<100; t++) { if(t==10) printf(«»%d \n»», t); }
  • (Правильный ответ) int t; for(t=0; t<100; t++) { printf(«»%d \n»», t); if(t==10) break; }
  • (Правильный ответ) for(t=0; t<100; t++) { printf(«»%d \n»», t); if(t==10) t=100; }

В результате выполнения какого фрагмента кода значение переменной m будет равно 8?

  • int k = 0, m; goto lbl; {int a = 3, b = 4; k = a + b; lbl: m = k + 1; }
  • (Правильный ответ) int k = 0, m; int a = 3, b = 4; k = a + b; goto lbl; lbl: m = k + 1;
  • (Правильный ответ) int k = 0, m; goto lbl;lbl: {int a = 3, b = 4; k = a + b; m = k + 1; }

В каком случае на экран будут выведены только нечетные числа от 1 до 10?

  • (Правильный ответ) int n = 1; while (n<=10) { if (n%2) printf(«»%d\n»», n); n++; continue; printf(«»%d\n»», n); n++; }
  • int n = 1; while (n<=10) { if (n%2) printf(«»%d\n»», n); n++; printf(«»%d\n»», n); n++; }
  • int n = 1; while (n<=10) { if (!(n%2)) printf(«»%d\n»», n); n++; continue; printf(«»%d\n»», n); n++; }

Какой оператор используется для выхода из функции при выполнении некоторых условий?

  • continue
  • break
  • (Правильный ответ) return
  • goto

В результате выполнения какого фрагмента кода значение переменной t будет равно 10?

  • int t; for(t=0; t<100; t++) { printf(«»%d \n»», t); if(t==10) t=100; }
  • int t; for(t=0; t<100; t++) { if(t==10) printf(«»%d \n»», t); }
  • (Правильный ответ) int t; for(t=0; t<100; t++) { printf(«»%d \n»», t); if(t==10) break; }

Какой фрагмент кода полностью аналогичен заданному?

int x = 10, y; if(x>9) y = 100; else y = 200;
  • int x = 10, y; y = x<9 ? 100 : 200;
  • (Правильный ответ) int x = 10, y; y = x>9 ? 100 : 200;
  • int x = 10, y; y = x<9 ? 200 : 100;

При выполнении какого варианта программы определения дня недели при вводе числа 8 на экране будет выведено сообщение Ошибка! Вы ввели неверное число?

  • int x; printf(«»Введите число от 1 до 7: «»); scanf_s(«»%d»», &x); switch (x<=5 ? 1 : x==6 ? 2 : 3) { case 1: printf(«»Сегодня рабочий день»»); break; case 2: printf(«»Сегодня суббота»»); break; case 3: printf(«»Сегодня воскресенье»»); break; default: printf(«»Ошибка! Вы ввели неверное число»»); break; }
  • int x; printf(«»Введите число от 1 до 7: «»); scanf_s(«»%d»», &x); switch (x<=5 ? 1 : x==6 ? 2 : x==7 ? 3 : 4) { case 1: printf(«»Сегодня рабочий день»»); break; case 2: printf(«»Сегодня суббота»»); break; case 3: printf(«»Сегодня воскресенье»»); break; case 4: printf(«»Ошибка! Вы ввели неверное число»»); break; }
  • (Правильный ответ) int x; printf(«»Введите число от 1 до 7: «»); scanf_s(«»%d»», &x); switch (x>=5 ? 1 : x==6 ? 2 : x==7 ? 3 : 4) { case 1: printf(«»Сегодня рабочий день»»); break; case 2: printf(«»Сегодня суббота»»); break; case 3: printf(«»Сегодня воскресенье»»); break; default: printf(«»Ошибка! Вы ввели неверное число»»); break; }

В результате выполнения какого фрагмента кода на экран будет выведено больше одного числа?

  • (Правильный ответ) int n = 1; while (n<=10) { if (n%2) printf(«»%d\n»», n); n++; continue; printf(«»%d\n»», n); n++; }
  • int n = 1; while (n<=10) { if (n%2) printf(«»%d\n»», n); n++; return; printf(«»%d\n»», n); n++; }
  • int n = 1; while (n<=10) { if (n%2) printf(«»%d\n»», n); n++; break; printf(«»%d\n»», n); n++; }

В какой программе будет корректно обработана ситуация деления на нуль?

  • (Правильный ответ) int a, b, res; char op; int f = 1; printf(«»Введите 1й операнд: «»); scanf(«»%d»», &a); printf(«»Введите знак операции: «»); scanf(«»%s»», &op); printf(«»Введите 2й операнд: «»); scanf(«»%d»», &b); switch (op) { case ‘+’: res = a+b; break; case ‘-‘: res = a-b; break; case ‘*’: res = a*b; break; case ‘/’: switch (b) { case 0: printf(«»Деление на 0!\n»»); break; default: res = a/b; } break; default: printf(«»Неизвестная операция 111″»); f = 0; } if (f) printf («»Результат: %d 222″», res);
  • int a, b, res; char op; int f = 1; printf(«»Введите 1й операнд: «»); scanf(«»%d»», &a); printf(«»Введите знак операции: «»); scanf(«»%s»», &op); printf(«»Введите 2й операнд: «»); scanf(«»%d»», &b); switch (op) { case ‘+’: res = a+b; break; case ‘-‘: res = a-b; break; case ‘*’: res = a*b; break; case ‘/’: res = a/b; break; default: printf(«»Неизвестная операция»»); f = 0; } if (f) printf («»Результат: %d»», res);
  • int a, b, res; char op; int f = 1; printf(«»Введите 1й операнд: «»); scanf(«»%d»», &a); printf(«»Введите знак операции: «»); scanf(«»%s»», &op); printf(«»Введите 2й операнд: «»); scanf(«»%d»», &b); switch (op) { case ‘+’: res = a+b; break; case ‘-‘: res = a-b; break; case ‘*’: res = a*b; break; case ‘/’: switch (b) { case 0: printf(«»Деление на 0!\n»»); default: res = a/b; } break; default: printf(«»Неизвестная операция 111″»); f = 0; } if (f) printf («»Результат: %d 222″», res);

Задан цикл, который выводит все числа от 1 до 10:

int n = 1; (1) while (n<=10) (2) { if (n%2) (3) printf(«»%d\n»», n); (4) n++; (5) printf(«»%d\n»», n); (6) n++; (7) } Как изменить приведенный цикл, чтобы на экран выводились только нечетные числа от 1 до 10?
  • в строке (5) удалить приращение переменной n
  • изменить условие в строке (3) на (!(n%2))
  • (Правильный ответ) после строки (5) добавить оператор continue

При выполнении какой программы возникнет ошибка, связанная с выходом за границы массива?

  • #include <stdio.h>#define N 11int main(){ int i; int arr[N][2]; for (i=1; i<N; i++) { arr[i][0] = i; arr[i][1] = i*i; } for (i=1; i<N; i++) printf(«»%d,%d\n»», arr[i][0], arr[i][1]); return 0; }
  • (Правильный ответ) #include <stdio.h>#define N 11int main(){ int i; int arr[N][2]; for (i=1; i<N; i++) { arr[i][1] = i; arr[i][2] = i*i; } for (i=0; i<N; i++) printf(«»%d,%d\n»», arr[i][1], arr[i][2]); return 0; }
  • #include <stdio.h>#define N 11int main(){ int i; int arr[N][2]; for (i=0; i<N; i++) { arr[i][0] = i; arr[i][1] = i*i; } for (i=0; i<N; i++) printf(«»%d,%d\n»», arr[i][0], arr[i][1]); return 0; }

Какие утверждения являются верными?

  • (Правильный ответ) элементы многомерного массива располагаются в памяти в порядке возрастания самого правого индекса
  • элементы массива располагаются в памяти случайным образом, занимая свободные участки памяти
  • (Правильный ответ) ячейка памяти с наименьшим адресом относится к первому элементу массива, а с наибольшим – к последнему

Какое утверждение будет истинным после выполнения приведенного фрагмента кода?

int size1, size2, size3; int arr[5][2] = {0,1,2,3,4,5,6,7,8,9}; size1 = sizeof(arr)/sizeof(arr[0][0]); size2 = sizeof(arr)/sizeof(arr[0]); size3 = sizeof(arr);
  • size2 > size3
  • (Правильный ответ) size1 < size3
  • size3 > size2 > size1

В каком случае структура верно определена с использованием ключевого слова typedef?

  • struct foot_klub { char name[20]; int liga; float ochki;};typedef struct foot_klub *f_club;f_club a, *p, b[5];
  • (Правильный ответ) struct foot_klub { char name[20]; int liga; float ochki;};typedef struct foot_klub f_club;f_club a, *p, b[5];
  • (Правильный ответ) typedef struct { char name[20]; int liga; float ochki;}f_club;f_club a, *p, b[5];

Что такое объединение (union) в контексте языка С?

  • совокупность нескольких переменных, часто различных типов
  • (Правильный ответ) тип, который позволяет хранить различные типы данных в одном и том же пространстве памяти (но не одновременно)
  • тип данных, заданных списком принадлежащих ему значений

По какой формуле вычисляется общий размер двумерного массива в байтах?

  • всего байт = размер типа в байтах * количество элементов
  • (Правильный ответ) всего байт = число строк * число столбцов * размер типа в байтах
  • всего байт = размер1* размер2*…* размерN *размер типа в байтах

Каким образом хранится в памяти массив a, начинающийся по адресу 1000 и объявленный как int a[7]?

  • (Правильный ответ)

Приведенный фрагмент кода должен запрашивать пароль не более трех раз:

char s[5], psw[] = «»password»»; int i, k= 0; for (i=0; !k && i<3; i++) { printf(«»Введите пароль: \n»»), gets(s); if (strcmp(s, psw)) k = 1; } if (k) printf(«»Добро пожаловать! TRUE»»); else printf(«»Ошибка: Неверный пароль! FALSE»»); Проверьте правильность этого кода для выполнения поставленной задачи и определите, сколько раз будет выполнен цикл for, если пользователь сразу введет верный пароль password?
  • (Правильный ответ) 3
  • 1
  • 0

Строка инициализирована следующим образом: char str1[10] = «Course». Какое утверждение является верным?

  • под строку выделяется 7 байт
  • (Правильный ответ) под строку выделяется 10 байт
  • под строку выделяется 6 байт

Необходимо написать программу, которая будет определять, является ли заданная строка палиндромом (палиндром — это слово, которое читается одинаково слева направо и справа налево). Решение данной задачи основывается на просмотре строки одновременно слева направо и справа налево и сравнении соответствующих символов. Если в какой-то момент символы не совпадают, делается вывод о том, что строка не является палиндромом, если же удается достичь середины строки и при этом все соответствующие символы совпали, то строка является палиндромом. Какая программа выполняет поставленную задачу?

  • char s[100];int pal(char s[100]);int main(){ printf(«»\nВведите строку: «»); gets(s); if (pal(s)) printf(«»Строка является палиндромом»»); else printf(«»Строка не является палиндромом»»); return 0;}int pal(char s[100]){ int l; char s1[100]; l=s[0]==s[strlen(s)-1]; strncpy(s1, s+1, strlen(s)-2); s1[strlen(s)-2]=’\0′; return l&&pal(s1);}
  • char s[100];int pal(char s[100]);int main(){ printf(«»\nВведите строку: «»); gets(s); if (pal(s)) printf(«»Строка является палиндромом»»); else printf(«»Строка не является палиндромом»»); return 0;}int pal(char s[100]){ int l; char s1[100]; if (strlen(s)<1) return 1; else { l=s[0]==s[strlen(s)-1]; strncpy(s1, s+1, strlen(s)-2); s1[strlen(s)-2]=’\0′; return l&&pal(s1); }}
  • (Правильный ответ) char s[100];int pal(char s[100]);int main(){ printf(«»\nВведите строку: «»); gets(s); if (pal(s)) printf(«»Строка является палиндромом»»); else printf(«»Строка не является палиндромом»»); return 0;}int pal(char s[100]){ int l; char s1[100]; if (strlen(s)»»=1) return 1; else { l=s[0]==s[strlen(s)-1]; strncpy(s1, s+1, strlen(s)-2); s1[strlen(s)-2]=’\0′; return l&&pal(s1); }}

Какая программа реализует сортировку массива целых чисел по возрастанию методом «пузырька» (методом прямого обмена)?

  • #include <stdio.h>#define N 7int main(){ int i, j, k, buf; char arr[N] = «»Lection»»; for (i=0; i<N; i++) for (j=0; j<N-1; j++) { if (arr[j] < arr[j+1]) { buf = arr[j]; arr[j] = arr[j+1]; arr[j+1] = buf; } }; for (k=0; k<N; k++) printf(«»%d «», arr[k]); return 0; }
  • (Правильный ответ) #include <stdio.h>#define N 7int main(){ int i, j, k, buf; char arr[N] = «»Lection»»; for (i=0; i<N; i++) for (j=0; j<N-1; j++) { if (arr[j] > arr[j+1]) { buf = arr[j]; arr[j] = arr[j+1]; arr[j+1] = buf; } }; for (k=0; k<N; k++) printf(«»%d «», arr[k]); return 0; }
  • #include <stdio.h>#define N 7int main(){ int i, j, k, buf, min; char arr[N] = «»Lection»»; for (i=0; i<N-1; i++) { min = i; for (j=i+1; j<N; j++) { if (arr[j]<arr[min]) min = j; buf = arr[i]; arr[i] = arr[min]; arr[min] = buf; } } for (k=0; k<N; k++) printf(«»%c «», arr[k]); return 0; }

Каким будет результат выполнения приведенной программы?

#include <stdio.h>#include <string.h>#define N 10int main(){ char strLow[N]; int i; printf(«»Enter string in low register (%d symbols): \n»», N); scanf(«»%s»», strLow); for (i=0; i<strlen(strLow); i++) putchar(strLow[i] — 32); printf(«»\n»»); return 0;}
  • при выполнении приведенной программы возникнет ошибка выполнения
  • все символы строки strLow будут преобразованы в верхний регистр
  • (Правильный ответ) на экран будет выведена строка strLow в верхнем регистре

Программа запускается с одним аргументом командной строки. Аргументом является строка. Каким образом необходимо задать аргументы командной строки для корректной его обработки при работе программы?

  • (Правильный ответ)
  • (Правильный ответ)

С каким количеством аргументов командной строки запускается программа (считается, что аргумент в заданном виде обрабатывается корректно?

  • (Правильный ответ) 3
  • 1
  • 2

При каких значениях переменной error в результате выполнения приведенной программы на экран будет выведено сообщение Возникла ошибка преобразования (ERR_CONVERT)?

int main(void){ typedef enum { ERR_READ, ERR_WRITE, ERR_CONVERT} Err; Err error; switch (error) { case ERR_READ: printf(«»Возникла ошибка чтения (ERR_READ)\n»»); break; case ERR_WRITE: printf(«»Возникла ошибка записи (ERR_WRITE)\n»»); break; case ERR_CONVERT: printf(«»Возникла ошибка преобразования (ERR_CONVERT)\n»»); break; default: printf(«»Возникла неизвестная ошибка\n»»); break; }; return 0;}
  • (Правильный ответ) error = 2;
  • (Правильный ответ) error = ERR_CONVERT;
  • error = 1;

Что делает приведенная программа?

#include <stdio.h>#include <conio.h>int main(){ int n=0, i=0; char ch, str[30]=»»»»; printf(«»Введите строку: «»); scanf(«»%s»», str); printf(«»Введите символ: «»); ch = _getche(); while(str[i]!=’\0′) { if(str[i]==ch) n++; i++; } return 0; }
  • определяет количество вхождений каждого символа в строку
  • определяет количество символов в строке
  • (Правильный ответ) определяет количество вхождений заданного символа в строку

Заданы две строки:

char str1[10] = «»Lection»»; char str2[10] = «»lection»»; Какое утверждение является верным и почему?
  • (Правильный ответ) strcmp(str1, str2) < 0, так как код символа L меньше кода символа l
  • strcmp(str1, str2) > 0, так как код символа L больше кода символа l
  • strcmp(str1, str2) = 0, так как длины строк одинаковы

При выводе какой строки возникнут проблемы и почему?

char str1[10] = «»Course»»; char str2[] = «»Lection»»; char str3[7] = «»Example»»;
  • str1, потому что для хранения массива символов выделено больше элементов, чем заполнено при инициализации
  • (Правильный ответ) str3, потому что заданная размерность массива не предусмативает место для хранения нулевого символа
  • str2, потому что при инициализации не указана размерность массива

В результате выполнения какого фграгмента программного кода значение переменной n будет больше 7?

  • (Правильный ответ) int n=0, num=10; char str1[10]=»»»», str2[10]=»»Lection»»; _itoa(num, str1, 10); strcat(str2, str1); n = strlen(str2);
  • int n = 0; char str2[10] = «»Lection»»; n = strlen(str2);
  • int n = 0; char str2[10] = «»Lection\0″»; n = strlen(str2);

В приведенной программе функция Copy выполняет копирование одной структуры типа sale в другую и возвращает структуру этого же типа:

typedef struct sale_struct { char *title; int price;} sale;sale Copy(sale);int main(void){ sale s1,s2; struct sale_struct s3, s4; s1.title = «»Book»»; s1.price = 200; s3.title = «»Cake»»; s3.price = 60; return 0;}sale Copy(sale s) { sale s1; s1 = s; return s1;} Какие из перечисленных вызов функции Copy являются верными?
  • (Правильный ответ) s4 = Copy(s3);
  • (Правильный ответ) s1 = Copy(s3);
  • (Правильный ответ) s2 = Copy(s1);

Какое выражение нужно вставить в обозначенное место приведенного кода для того, чтобы значение переменной z было равно 10?

int x = 10, y = 20, z; int *p1, *p2; p1 = &x; p2 = p1; <Выражение> z = (x==y) ? (x+y) : (y-x);
  • *p2 = y;
  • x = y;
  • (Правильный ответ) p1 = &y;

Какие утверждения будут верными после выполнения приведенного фрагмента кода?

int x = 99; int *p1, *p2; p1 = &x; p2 = p1;
  • p2 разыменовывает указатель p1
  • (Правильный ответ) оба указателя (p1 и р2) ссылаются на х
  • указатель p2 содержит адрес указателя p1

Требуется написать программу, которая будет копировать одну строку в другую с помощью указателей. Определите, выполняет ли приведенная программа поставленную задачу? Если не выполняет, объясните, почему?

#include <stdio.h>#include <conio.h>int main(){ char str1[10] = «»»», str2[10] = «»»»; char *ptr1, *ptr2; printf(«»Введите строку: %s»», str1); scanf(«»%s»», str1); ptr1 = str1; ptr2 = str2; while (*ptr1!=’\0′) { if (*ptr1==’\0′) { *ptr2 = ‘\0’; break; } *ptr2 = *ptr1; ptr1++; } printf(«»str2 = %s\n»», str2); return 0; }
  • (Правильный ответ) программа не выполняет поставленную задачу, так как в цикле не происходит изменение указателя ptr2
  • программа не выполяет поставленную задачу, так как неверно задано условие цикла
  • программа выполняет поставленную задачу

В программе объявлен указатель void *p. Какие утверждения являются неверными?

  • (Правильный ответ) указатель p может содержать адрес только объекта типа void
  • к указателю p неприменима операция разыменования
  • (Правильный ответ) указатель p может быть автоматически преобразован к любому типу

Требуется написать программу, которая копирует введенную пользователем строку str1 в строку str2 в обратном порядке. Например, если пользователь ввел строку string, то str2 в результате выполнения данной программы должна быть равна gnirts. Какая программа выполняет поставленную задачу?

  • #include <stdio.h>#include <conio.h>int main(){ char str1[10] = «»»», str2[10] = «»»»; char *ptr1, *ptr2; printf(«»Введите строку: %s»», str1); scanf(«»%s»», str1); ptr1 = str1 + strlen(str1) — 1; ptr2 = str2; while (*ptr1) { if (!(*ptr1)) *ptr2 = ‘\0’; *ptr2 = *ptr1; ptr1—; ptr2++; } printf(«»str2 = %s\n»», str2); return 0; }
  • #include <stdio.h>#include <conio.h>int main(){ char str1[10] = «»»», str2[10] = «»»»; char *ptr1, *ptr2; printf(«»Введите строку: %s»», str1); scanf(«»%s»», str1); ptr1 = str1 + strlen(str1); ptr2 = str2; while (ptr1>=str1) { if (ptr1<str1) *ptr2 = ‘\0’; *ptr2 = *ptr1; ptr1—; ptr2++; } printf(«»str2 = %s\n»», str2); return 0; }
  • (Правильный ответ) #include <stdio.h>#include <conio.h>int main(){ char str1[10] = «»»», str2[10] = «»»»; char *ptr1, *ptr2; printf(«»Введите строку: %s»», str1); scanf(«»%s»», str1); ptr1 = str1 + strlen(str1) — 1; ptr2 = str2; while (ptr1>=str1) { if (ptr1<str1) *ptr2 = ‘\0’; *ptr2 = *ptr1; ptr1—; ptr2++; } printf(«»str2 = %s\n»», str2); return 0; }

Приведенная программа должна определять, является ли заданная строка палиндромом (палиндром — это слово, которое читается одинаково слева направо и справа налево). В программе выполняется просмотр строки одновременно слева направо и справа налево и сравнение соответствующих символов. Если в какой-то момент символы не совпадают, делается вывод о том, что строка не является палиндромом, если же удается достичь середины строки и при этом все соответствующие символы совпали, то строка является палиндромом:

char s[100];int pal(char s[100]);int main(){ printf(«»\nВведите строку: «»); gets(s); if (pal(s)) printf(«»Строка является палиндромом»»); else printf(«»Строка не является палиндромом»»); return 0;}int pal(char s[100]){ int l; char s1[100]; if (strlen(s)<1) return 1; else { l=s[0]==s[strlen(s)-1]; s

или напишите нам прямо сейчас

Написать в WhatsApp Написать в Telegram

О сайте
Поделитесь в соцсетях:

Оставить комментарий

Inna Petrova 18 минут назад

Нужно пройти преддипломную практику у нескольких предметов написать введение и отчет по практике так де сдать 4 экзамена после практики

Иван, помощь с обучением 25 минут назад

Inna Petrova, здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@the-distance.ru

Коля 2 часа назад

Здравствуйте, сколько будет стоить данная работа и как заказать?

Иван, помощь с обучением 2 часа назад

Николай, здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@the-distance.ru

Инкогнито 5 часов назад

Сделать презентацию и защитную речь к дипломной работе по теме: Источники права социального обеспечения. Сам диплом готов, пришлю его Вам по запросу!

Иван, помощь с обучением 6 часов назад

Здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@the-distance.ru

Василий 12 часов назад

Здравствуйте. ищу экзаменационные билеты с ответами для прохождения вступительного теста по теме Общая социальная психология на магистратуру в Московский институт психоанализа.

Иван, помощь с обучением 12 часов назад

Василий, здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@the-distance.ru

Анна Михайловна 1 день назад

Нужно закрыть предмет «Микроэкономика» за сколько времени и за какую цену сделаете?

Иван, помощь с обучением 1 день назад

Анна Михайловна, здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@the-distance.ru

Сергей 1 день назад

Здравствуйте. Нужен отчёт о прохождении практики, специальность Государственное и муниципальное управление. Планирую пройти практику в школе там, где работаю.

Иван, помощь с обучением 1 день назад

Сергей, здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@the-distance.ru

Инна 1 день назад

Добрый день! Учусь на 2 курсе по специальности земельно-имущественные отношения. Нужен отчет по учебной практике. Подскажите, пожалуйста, стоимость и сроки выполнения?

Иван, помощь с обучением 1 день назад

Инна, здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@the-distance.ru

Студент 2 дня назад

Здравствуйте, у меня сегодня начинается сессия, нужно будет ответить на вопросы по русскому и математике за определенное время онлайн. Сможете помочь? И сколько это будет стоить? Колледж КЭСИ, первый курс.

Иван, помощь с обучением 2 дня назад

Здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@the-distance.ru

Ольга 2 дня назад

Требуется сделать практические задания по математике 40.02.01 Право и организация социального обеспечения семестр 2

Иван, помощь с обучением 2 дня назад

Ольга, здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@the-distance.ru

Вика 3 дня назад

сдача сессии по следующим предметам: Этика деловых отношений - Калашников В.Г. Управление соц. развитием организации- Пересада А. В. Документационное обеспечение управления - Рафикова В.М. Управление производительностью труда- Фаизова Э. Ф. Кадровый аудит- Рафикова В. М. Персональный брендинг - Фаизова Э. Ф. Эргономика труда- Калашников В. Г.

Иван, помощь с обучением 3 дня назад

Вика, здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@the-distance.ru

Игорь Валерьевич 3 дня назад

здравствуйте. помогите пройти итоговый тест по теме Обновление содержания образования: изменения организации и осуществления образовательной деятельности в соответствии с ФГОС НОО

Иван, помощь с обучением 3 дня назад

Игорь Валерьевич, здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@the-distance.ru

Вадим 4 дня назад

Пройти 7 тестов в личном кабинете. Сооружения и эксплуатация газонефтипровод и хранилищ

Иван, помощь с обучением 4 дня назад

Вадим, здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@the-distance.ru

Кирилл 4 дня назад

Здравствуйте! Нашел у вас на сайте задачу, какая мне необходима, можно узнать стоимость?

Иван, помощь с обучением 4 дня назад

Кирилл, здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@the-distance.ru

Oleg 4 дня назад

Требуется пройти задания первый семестр Специальность: 10.02.01 Организация и технология защиты информации. Химия сдана, история тоже. Сколько это будет стоить в комплексе и попредметно и сколько на это понадобится времени?

Иван, помощь с обучением 4 дня назад

Oleg, здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@the-distance.ru

Валерия 5 дней назад

ЗДРАВСТВУЙТЕ. СКАЖИТЕ МОЖЕТЕ ЛИ ВЫ ПОМОЧЬ С ВЫПОЛНЕНИЕМ практики и ВКР по банку ВТБ. ответьте пожалуйста если можно побыстрее , а то просто уже вся на нервяке из-за этой учебы. и сколько это будет стоить?

Иван, помощь с обучением 5 дней назад

Валерия, здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@the-distance.ru

Инкогнито 5 дней назад

Здравствуйте. Нужны ответы на вопросы для экзамена. Направление - Пожарная безопасность.

Иван, помощь с обучением 5 дней назад

Здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@the-distance.ru

Иван неделю назад

Защита дипломной дистанционно, "Синергия", Направленность (профиль) Информационные системы и технологии, Бакалавр, тема: «Автоматизация приема и анализа заявок технической поддержки

Иван, помощь с обучением неделю назад

Иван, здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@the-distance.ru

Дарья неделю назад

Необходимо написать дипломную работу на тему: «Разработка проекта внедрения CRM-системы. + презентацию (слайды) для предзащиты ВКР. Презентация должна быть в формате PDF или формате файлов PowerPoint! Институт ТГУ Росдистант. Предыдущий исполнитель написал ВКР, но работа не прошла по антиплагиату. Предыдущий исполнитель пропал и не отвечает. Есть его работа, которую нужно исправить, либо переписать с нуля.

Иван, помощь с обучением неделю назад

Дарья, здравствуйте! Мы можем Вам помочь. Прошу Вас прислать всю необходимую информацию на почту и написать что необходимо выполнить. Я посмотрю описание к заданиям и напишу Вам стоимость и срок выполнения. Информацию нужно прислать на почту info@the-distance.ru