Опубликован: 14.12.2010 | Уровень: для всех | Доступ: свободно
Лекция 5:

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

< Лекция 4 || Лекция 5: 12345 || Лекция 6 >

Задание 5

  1. При выводе максимального числа предусмотрите сообщение об имени числа, т.е. a или b.
  2. В цикле сформируйте вектор десяти случайных чисел из интервала [0;1] и выведите на дисплей.
  3. Для задания системного времени примените директиву define N X, где Х – номер компьютера, за которым выполняется лабораторная работа.
  4. Примените оператор условия ? для определения абсолютного значения вещественного числа, которое должно вводиться пользователем с клавиатуры.

Пример 6. Используя оператор условия ? и переключатель switch напишите программу определения времени года по вводимым числам от 1 до 12, считая, что цифра 1 соответствует январю, цифра 2 – февралю и т.д.

Программный код решения примера:

#include <stdio.h>
#include <conio.h>

int main (void) {
int x;
printf("\n\t Enter a whole number between 1 and 12: ");
scanf_s("%d", &x);

switch (x > 0 && x < 3 ? 1 : 
		x == 12 ? 1 :
		x > 2 && x < 6 ? 2 :

		x > 5 && x < 9 ? 3 :
		x > 8 && x < 12 ? 4 :
		x > 12 || x < 1 ? 5 : 5)
{
case 1 :
	printf("\n\t This Winter\n");
	break;
case 2 :
	printf("\n\t This Spring\n");
	break;
case 3 :
	printf("\n\t This Summer\n");
	break;
case 4 :
	printf("\n\t This Autumn\n");
	break;
case 5 :
	printf("\n\t This is a mistake (Error)\n");
}
	printf("\n Press any key: ");
	_getch();
	return 0;
}

В программе три месяца зимы кодируются цифрой 1, три месяца весны –цифрой 2, три месяца лета – цифрой 3, три месяца осени – цифрой 4. Если введенная цифра не входит в целочисленный интервал [1; 12], то эта ситуация кодируется цифрой 5.

Возможный результат выполнения программы показан на рис. 4.6.

Результат программы по определению времени года

Рис. 4.6. Результат программы по определению времени года

Задание 6

  1. Проверьте программу по вводимым вещественным числам. Объясните результат.
  2. Проверьте программу по вводимым буквам или знаков, имеющихся на клавиатуре. Объясните результат.
  3. В программе вместо 5-го пункта, т.е. вместо case 5, примените операцию default.
  4. Напишите программу определения времени года по вводимым числам без операторов условия ?.

Пример 7. Напишите программу распечатки четных целых чисел от 0 до 30.

#include <stdio.h>
#include <conio.h>

int main (void)
 {
	int x;
	printf("\n\t Even numbers from 0 to 30:\n\n");
	
    for (x = 0; x < 31; x++)  {
	if ( x % 2 ) continue; 
     printf("\t\t %3d\n", x); 
     }

	printf("\n Press any key: ");
	_getch();
	return 0;
}

В программе в качестве проверки условия использовано деление по модулю ( х%2 ). Если остаток от деления числа х не равен нулю, то утверждение (оператор, инструкция) continue передает управление непосредственно инструкции, проверяющей условное выражение, после чего циклический процесс продолжается. С помощью программы выводятся только четные числа, а при обнаружении нечетного числа происходит преждевременный переход к следующей итерации цикла, и функция printf() опускается. Функция printf() включена в тело цикла оператора for.

Результат выполнения программы показан на рис. 4.7.

Результат вывода четных чисел

Рис. 4.7. Результат вывода четных чисел
< Лекция 4 || Лекция 5: 12345 || Лекция 6 >
Мухаммадюсуф Курбонов
Мухаммадюсуф Курбонов

( ! ) Warning: include_once(./includes/unicode.entities.inc) [<a href='function.include-once'>function.include-once</a>]: failed to open stream: No such file or directory in /.2/var_www_new.intuit.ru/htdocs/includes/unicode.inc on line 340
Call Stack
#TimeMemoryFunctionLocation
13.456294071176watchdog( )../bootstrap.inc:0
23.456894073640module_invoke( )../bootstrap.inc:967
33.456994075496call_user_func_array ( )../module.inc:462
43.456994075832devel_watchdog( )../module.inc:462
53.457094076680decode_entities( )../devel.module:382
63.457194078600drupal_error_handler( )../devel.module:340
73.457194082208watchdog( )../common.inc:663
83.457194084272module_invoke( )../bootstrap.inc:967
93.457294086128call_user_func_array ( )../module.inc:462
103.457294086464devel_watchdog( )../module.inc:462
113.457294087160decode_entities( )../devel.module:382

( ! ) Warning: include_once() [<a href='function.include'>function.include</a>]: Failed opening './includes/unicode.entities.inc' for inclusion (include_path='.:/usr/local/zend/var/libraries/Zend_Framework_1/default/library:/usr/local/zend/share/pear') in /.2/var_www_new.intuit.ru/htdocs/includes/unicode.inc on line 340
Call Stack
#TimeMemoryFunctionLocation
13.456294071176watchdog( )../bootstrap.inc:0
23.456894073640module_invoke( )../bootstrap.inc:967
33.456994075496call_user_func_array ( )../module.inc:462
43.456994075832devel_watchdog( )../module.inc:462
53.457094076680decode_entities( )../devel.module:382
63.457194078600drupal_error_handler( )../devel.module:340
73.457194082208watchdog( )../common.inc:663
83.457194084272module_invoke( )../bootstrap.inc:967
93.457294086128call_user_func_array ( )../module.inc:462
103.457294086464devel_watchdog( )../module.inc:462
113.457294087160decode_entities( )../devel.module:382

( ! ) Warning: include_once(./includes/unicode.entities.inc) [<a href='function.include-once'>function.include-once</a>]: failed to open stream: No such file or directory in /.2/var_www_new.intuit.ru/htdocs/includes/unicode.inc on line 340
Call Stack
#TimeMemoryFunctionLocation
13.456294071176watchdog( )../bootstrap.inc:0
23.456894073640module_invoke( )../bootstrap.inc:967
33.456994075496call_user_func_array ( )../module.inc:462
43.456994075832devel_watchdog( )../module.inc:462
53.457094076680decode_entities( )../devel.module:382
63.458294078792drupal_error_handler( )../devel.module:340
73.458294082480watchdog( )../common.inc:663
83.458294084544module_invoke( )../bootstrap.inc:967
93.458294086400call_user_func_array ( )../module.inc:462
103.458294086736devel_watchdog( )../module.inc:462
113.458394087512decode_entities( )../devel.module:382

( ! ) Warning: include_once() [<a href='function.include'>function.include</a>]: Failed opening './includes/unicode.entities.inc' for inclusion (include_path='.:/usr/local/zend/var/libraries/Zend_Framework_1/default/library:/usr/local/zend/share/pear') in /.2/var_www_new.intuit.ru/htdocs/includes/unicode.inc on line 340
Call Stack
#TimeMemoryFunctionLocation
13.456294071176watchdog( )../bootstrap.inc:0
23.456894073640module_invoke( )../bootstrap.inc:967
33.456994075496call_user_func_array ( )../module.inc:462
43.456994075832devel_watchdog( )../module.inc:462
53.457094076680decode_entities( )../devel.module:382
63.458294078792drupal_error_handler( )../devel.module:340
73.458294082480watchdog( )../common.inc:663
83.458294084544module_invoke( )../bootstrap.inc:967
93.458294086400call_user_func_array ( )../module.inc:462
103.458294086736devel_watchdog( )../module.inc:462
113.458394087512decode_entities( )../devel.module:382

( ! ) Warning: include_once(./includes/unicode.entities.inc) [<a href='function.include-once'>function.include-once</a>]: failed to open stream: No such file or directory in /.2/var_www_new.intuit.ru/htdocs/includes/unicode.inc on line 340
Call Stack
#TimeMemoryFunctionLocation
13.459194071720watchdog( )../bootstrap.inc:0
23.459194073784module_invoke( )../bootstrap.inc:967
33.459194075640call_user_func_array ( )../module.inc:462
43.459194075976devel_watchdog( )../module.inc:462
53.459194076680decode_entities( )../devel.module:382
63.459194078600drupal_error_handler( )../devel.module:340
73.459294082208watchdog( )../common.inc:663
83.459294084272module_invoke( )../bootstrap.inc:967
93.459294086128call_user_func_array ( )../module.inc:462
103.459294086464devel_watchdog( )../module.inc:462
113.459294087160decode_entities( )../devel.module:382

( ! ) Warning: include_once() [<a href='function.include'>function.include</a>]: Failed opening './includes/unicode.entities.inc' for inclusion (include_path='.:/usr/local/zend/var/libraries/Zend_Framework_1/default/library:/usr/local/zend/share/pear') in /.2/var_www_new.intuit.ru/htdocs/includes/unicode.inc on line 340
Call Stack
#TimeMemoryFunctionLocation
13.459194071720watchdog( )../bootstrap.inc:0
23.459194073784module_invoke( )../bootstrap.inc:967
33.459194075640call_user_func_array ( )../module.inc:462
43.459194075976devel_watchdog( )../module.inc:462
53.459194076680decode_entities( )../devel.module:382
63.459194078600drupal_error_handler( )../devel.module:340
73.459294082208watchdog( )../common.inc:663
83.459294084272module_invoke( )../bootstrap.inc:967
93.459294086128call_user_func_array ( )../module.inc:462
103.459294086464devel_watchdog( )../module.inc:462
113.459294087160decode_entities( )../devel.module:382

( ! ) Warning: include_once(./includes/unicode.entities.inc) [<a href='function.include-once'>function.include-once</a>]: failed to open stream: No such file or directory in /.2/var_www_new.intuit.ru/htdocs/includes/unicode.inc on line 340
Call Stack
#TimeMemoryFunctionLocation
13.459194071720watchdog( )../bootstrap.inc:0
23.459194073784module_invoke( )../bootstrap.inc:967
33.459194075640call_user_func_array ( )../module.inc:462
43.459194075976devel_watchdog( )../module.inc:462
53.459194076680decode_entities( )../devel.module:382
63.459794078792drupal_error_handler( )../devel.module:340
73.459794082480watchdog( )../common.inc:663
83.459794084544module_invoke( )../bootstrap.inc:967
93.459794086400call_user_func_array ( )../module.inc:462
103.459794086736devel_watchdog( )../module.inc:462
113.459894087512decode_entities( )../devel.module:382

( ! ) Warning: include_once() [<a href='function.include'>function.include</a>]: Failed opening './includes/unicode.entities.inc' for inclusion (include_path='.:/usr/local/zend/var/libraries/Zend_Framework_1/default/library:/usr/local/zend/share/pear') in /.2/var_www_new.intuit.ru/htdocs/includes/unicode.inc on line 340
Call Stack
#TimeMemoryFunctionLocation
13.459194071720watchdog( )../bootstrap.inc:0
23.459194073784module_invoke( )../bootstrap.inc:967
33.459194075640call_user_func_array ( )../module.inc:462
43.459194075976devel_watchdog( )../module.inc:462
53.459194076680decode_entities( )../devel.module:382
63.459794078792drupal_error_handler( )../devel.module:340
73.459794082480watchdog( )../common.inc:663
83.459794084544module_invoke( )../bootstrap.inc:967
93.459794086400call_user_func_array ( )../module.inc:462
103.459794086736devel_watchdog( )../module.inc:462
113.459894087512decode_entities( )../devel.module:382