С Новым годом! Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.63/8: Рейтинг темы: голосов - 8, средняя оценка - 4.63
6 / 2 / 0
Регистрация: 19.01.2012
Сообщений: 157
1

Какое значение будет иметь а?

27.07.2014, 18:49. Показов 1525. Ответов 14
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Помогите выбрать правильный вариант в этой задаче(и еще объясните, как вы считали). Заранее спасибо.
C++
1
2
3
4
5
6
int a;
int f(int x)
{
a=0;
return x;
}
Какое значение будет иметь а, после:
C++
1
2
а=1;
a=a+f(a);
Варианты:
1) 2
2) 1
3) 0
4) 3
5) 5
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
27.07.2014, 18:49
Ответы с готовыми решениями:

Правила раскрытия макросов: какое значение будет иметь заданное выражение?
#define sqr(x) x * x Какое значение будет иметь следующее выражение? sqr(3 + 0) почему...

Определить, на какой итерации функция будет иметь минимальное значение
Определить на какком шаге и при каком X функция y=sqrt ( abs (pow( 3, k*x) *(sin*x))) на интервале...

Какое значение будет выведено при выполнении операторов?
int a,b,*pa,*pb; a=1; b=2; pa=&a; pb=&b; *pb=a; *pa=b; cout<<*pa<<" "<<*pb;

Какое значение будет выведено в результате работы программы?
#include <iostream> using namespace std; int main() { int k = 0; for (int i = 2; k * k < 10; i...

14
63 / 64 / 11
Регистрация: 27.02.2013
Сообщений: 1,116
27.07.2014, 18:56 2
рукалицо ты даже не пытался вникнуть? а будет равно 1, объяснять очевидное не вижу смысла...
0
710 / 283 / 16
Регистрация: 31.03.2013
Сообщений: 1,340
27.07.2014, 19:35 3
О, хехе, объясни-ка очевидное
0
63 / 64 / 11
Регистрация: 27.02.2013
Сообщений: 1,116
27.07.2014, 19:40 4
Цитата Сообщение от Voivoid Посмотреть сообщение
О, хехе, объясни-ка очевидное
ну ладно может все и не так очевидно как кажется на первый взгляд, но все же в а будет 1: при вызове f - а обнуляется, а из f возвращает 1, т.е. выходит a = 0 + 1 = 1...
0
6 / 2 / 0
Регистрация: 19.01.2012
Сообщений: 157
27.07.2014, 19:43  [ТС] 5
Помогите ещё с этим заданием: (и объясните пожалуйста, как посчитали):
C++
1
2
3
4
5
int k,n;
void S(int &k)
{
k=k+1;
}
Какое значение будет иметь k, после:
k=0; n=10; S(n);

1) 1
2) 11
3) 10
4) 2
5) 0
0
63 / 64 / 11
Регистрация: 27.02.2013
Сообщений: 1,116
27.07.2014, 19:45 6
Цитата Сообщение от taeas1995 Посмотреть сообщение
Помогите ещё с этим заданием
по моему это не скомпилится, т.к. глобальная и локальная переменная одним именем заданы... ты запутаешь компилятор в хлам...
0
39 / 39 / 8
Регистрация: 03.05.2013
Сообщений: 178
27.07.2014, 19:47 7
1 ответ аналогичен

Добавлено через 1 минуту
Цитата Сообщение от GetHelp Посмотреть сообщение
по моему это не скомпилится, т.к. глобальная и локальная переменная одним именем заданы... ты запутаешь компилятор в хлам...
Внутри фунции k - локальная, обычно
0
710 / 283 / 16
Регистрация: 31.03.2013
Сообщений: 1,340
27.07.2014, 19:47 8
Цитата Сообщение от GetHelp Посмотреть сообщение
ну ладно может все и не так очевидно как кажется на первый взгляд
А если вспомнить про неопределенный порядок вычисления операндов?
0
6 / 2 / 0
Регистрация: 19.01.2012
Сообщений: 157
27.07.2014, 19:47  [ТС] 9
Разве не а= 1+0 = 1 ? (если а= 0+1 = 1 то объясните как так).
0
63 / 64 / 11
Регистрация: 27.02.2013
Сообщений: 1,116
27.07.2014, 19:52 10
Цитата Сообщение от Winorun Посмотреть сообщение
Внутри фунции k - локальная, обычно
да? ок может чего не знал... тогда в k будет 0
Цитата Сообщение от Voivoid Посмотреть сообщение
А если вспомнить про неопределенный порядок вычисления операндов?
ну я интереса ради даже запустил это, выдает 1 так то...
Цитата Сообщение от taeas1995 Посмотреть сообщение
Разве не а= 1+0 = 1 ? (если а= 0+1 = 1 то объясните как так).
когда ты передаешь переменную в функцию (без указателей, чистым типом) внутри функции выделяется память под нее и туда копируется значение, так что при обнулении а, x останется = переданной 1
0
What a waste!
1610 / 1302 / 180
Регистрация: 21.04.2012
Сообщений: 2,733
27.07.2014, 19:55 11
Цитата Сообщение от GetHelp Посмотреть сообщение
ну я интереса ради даже запустил это, выдает 1 так то...
Порядок вычисления операндов для + не определён, так что может быть и 1, и 2.
0
63 / 64 / 11
Регистрация: 27.02.2013
Сообщений: 1,116
27.07.2014, 19:57 12
Цитата Сообщение от gray_fox Посмотреть сообщение
Порядок вычисления операндов для + не определён, так что может быть и 1, и 2.
может ты и прав... но у меня выдало 1... короче каверзные задачки
0
What a waste!
1610 / 1302 / 180
Регистрация: 21.04.2012
Сообщений: 2,733
27.07.2014, 20:00 13
Цитата Сообщение от gray_fox Посмотреть сообщение
Порядок вычисления операндов для + не определён, так что может быть и 1, и 2.
Хотя тут скорее "неопределённое поведение", т.к. a модифицируется дважды.
0
6 / 2 / 0
Регистрация: 19.01.2012
Сообщений: 157
27.07.2014, 20:00  [ТС] 14
Во второй задаче ответ вконце будет 0 или 1 ?
0
63 / 64 / 11
Регистрация: 27.02.2013
Сообщений: 1,116
27.07.2014, 20:01 15
Цитата Сообщение от taeas1995 Посмотреть сообщение
Во второй задаче ответ вконце будет 0 или 1 ?
0 (10 раз 0 )
0
27.07.2014, 20:01
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
27.07.2014, 20:01
Помогаю со студенческими работами здесь

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

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

Какое назначение может иметь в программе приведенный цикл без тела?
for (t=0; t<SOME_VALUE; t++);

Из заданных точек найти вершины треугольника, который будет иметь наибольшую площадь
На плоскости даны 1000 точек. Найти треугольник, который будет иметь наибольшую площадь и вывести...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
15
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru