Программирование >>  Дополнительные возможности наследования 

1 ... 241 242 243 [ 244 ] 245 246 247 ... 265


cout О ; cout Xn ;

3. Организуйте цикл for, счетчик которого изменяется от 100 до 200 с шагом 2.

for (int X = 100; х<=200; х+=2)

4. Организуйте цикл while, счетчик которого изменяется от 100 до 200 с шагом 2.

int X = 100; while (х <= 200) х+= 2;

5. Организуйте цикл do.. while, счетчик которого изменяется от 100 до 200 с шагом 2.

int X = 100;

х+=2;

} while (х <= 200);

6. Жучки: найдите ошибку в приведенном фрагменте программы:

int counter = 0; while (counter < 10) {

cout counter; counter;

Нет выражения, в котором выполнялось бы прирашение счетчика counter, поэтому цикл while никогда не закончится.

7. Жучки: найдите ошибку в приведенном фрагменте программы:

for (int counter = 0; counter < 10; counter++); cout counter ;

В конце строки задания цикла стоит точка с запятой, поэтому цикл выполняет только прирашение счетчика. Программист, возможно, именно это и имел в виду, но если предполагался еше и вывод каждого значения переменной counter, то этого не произойдет.

8. Жучки: найдите ошибку в приведенном фрагменте программы:

int counter = 100; while (counter < 10) {

cout << counter now: << counter; counter--;

Счетчик counter инициализирован числом 100, но проверяемое условие таково, что, если значение переменной counter больше 10, выражение условия возвратит FALSE и тело цикла никогда не будет выполнено. Если первую строку заменить вариантом int counter = 5;, то этот цикл не закончится до тех пор, пока не выполнится обратный отсчет до минимально возможного значения счетчика. Поскольку тип счетчика int по умолчанию определяется как signed, то мы получим бесконечный цикл.



case

doZeroO;

case

идем

дальше

case

идем

дальше

case

идем

дальше

case

идем

дальше

case

doOneToFiveO;

break; default;

doDefaultO; break;

После оператора case О, видимо, должен быть оператор break. Если это не так, то ситуацию следовало бы разъяснить с помошью комментария.

День 8

К1Н1Л01ЫЫ1! вопросы

1. Какой оператор используется для получения адреса переменной?

Для возвращения адреса любой переменной используется оператор получения адреса (&).

2. Какой оператор позволяет получить значение, записанное по адресу, содержащемуся в указателе?

Для доступа к значению, сохраненному по адресу, содержащемуся в указателе, используется оператор разыменования (*).

3. Что такое указатель?

Это переменная, которая содержит адрес другой переменной.

4. В чем различие между адресом, который хранится в указателе, и значением, записанным по этому адресу?

Адрес, сохраненный в указателе, - это адрес другой переменной. Значение, сохраненное по этому адресу, - это любое значение, сохраняемое в переменной, на которую ссылается указатель. Оператор разыменования (*) возвращает значение, сохраненное по адресу, который хранится в указателе.

5. В чем различие между оператором разыменования и оператором получения адреса?

Оператор разыменования ( ) возвращает значение, хранящееся по адресу, на который ссылается указатель. А оператор получения адреса (&) возвращает адрес переменной в памяти.

cout << Enter а number between О and 5: ; cin >> theNumber; switch (theNumber) {



6. в чем различие между следующими объявлениями: const int ♦ ptrOne и int * const pt rTwo?

Выражение const int * ptrOne объявляет, что переменная ptrOne представляет собой указатель на постоянное целое число. Само это целое число не может быть изменено с помощью данного указателя.

Выражение int * const ptrTwo объявляет, что переменная ptrTwo является постоянным указателем на некоторое целое число. После такой инициализации этот указатель не может быть переназначен.

Упражнения

1. Объясните смысл следующих объявлений переменных.

int рОпе;

int vTwo;

int * pThrae = &vTwo; Ответы:

а) int pOne; - объявляет указатель на целое значение;

б) int vTwo; - объявляет целочисленную переменную;

в) int pThres = ivTwo; - объявляет указатель на целое значение и инициализирует его адресом переменной.

2. Допустим, в программе объявлена переменная yourAgo типа unsigned short. Как объявить указатель, позволяющий манипулировать этой переменной?

unsigned short рАде = &yourAge;

3. С помощью указателя присвойте переменной yourAge значение 50.

рАде =50;

4. Напищите небольшую программу и объявите в ней переменную типа int и указатель на этот тип. Сохраните адрес переменной в указателе. Используя указатель, присвойте переменной какое-либо значение.

int thelnteger;

int plnteger = &thelnteger;

pinteger = 5;

5. Жучки: найдите ошибку в следующем фрагменте программы:

Sinclude <iostream.h>

int main()

int pint; pint = 9;

cout << The value at pint; << pint; return 0;

Указатель pint должен быть инициализирован. Поскольку он не был инициализирован и ему не присвоен адрес какой-либо ячейки памяти, то он указывает на. случайное место в памяти. Присвоение этому случайному месту числа 9 является опасной ошибкой.



1 ... 241 242 243 [ 244 ] 245 246 247 ... 265

© 2006 - 2025 pmbk.ru. Генерация страницы: 0
При копировании материалов приветствуются ссылки.
Яндекс.Метрика