Условия в Си.

11 сентября 2018 - Администратор

В программах Си часто нужно реализовать то или иное действие в зависимости от выполнения того или иного условия. Для этого в Си используется оператор условия If

If (условие)

{

действия в случае выполнения условия

}

Условие обязательно указывается в скобках ().

Используется также конструкция

if ( условие )

{

действия в случае выполнения условия. Условие истинно

}

else

{

действия в случае не  выполнения условия. Условие ложно

}

В условии  используются знаки логических отношений

> < больше, меньше Например (a>b)

>= <= больше или равно, меньше или равно

== равно  Например (a==0)

!= не равно

 Пример программы 5. Поиск большего числа из трех. В программе вводятся три вещественных числа , она определяет наибольшее из них и выводит его на экран.

#include <stdio.h>

#include <conio.h>

main()

{

float a,b,c, max;

printf("Введите первое число \n");

scanf("%f", &a); // ввод  переменной a с клавиатуры

printf("Введите второе  число \n");

scanf("%f", &b); // ввод  переменной  b с клавиатуры

printf("Введите третье число \n");

scanf("%f", &c); // ввод  переменной  b с клавиатуры

max=a;// максимум первое число

if (b>max) // если второе число больше первого , то максимум присваивается второе число

{

  max=b;

          }

if (c>max)// если третье число больше максимума первого и второго  , то максимум присваивается третье число

{

  max=c;

          }

printf("Наибольшее число %f", max);  

getch();

}

Пример программы 6. Тест по географии. Программа выводит вопросы на экран по географии, запрашивает  варианты ответов,  проверяет правильность каждого ответа , суммирует и выводит на экран количество правильных ответов.

#include <stdio.h>

#include <conio.h>

main()

{

char n[50];// объявляем строковую переменную n для имени

int k; // счетчик правильных ответов

int a; // номер ответа

k=0;

// приветствие

printf("Как Ваше имя ? \n ");

scanf("%s", n); // ввод строки  n имени

printf("Здравствуйте,  %s! Вам предлагается тест по географии\n", n); // форматированный вывод Здравствуйте, n !

// 1 вопрос теста

printf("Столица Антигуа и Барбуда? Введите номер правильного ответа \n");

printf("1. Сент-Джонс 2. Сукре 3. Бужумбура 4. Банжул 5. Бисау \n");

// запрашиваем ответ

scanf("%d", &a);

// проверяем правильность ответа

if (a==1)

{

  printf("Правильно\n");

  k=k+1;// увеличиваем счетчик правильных ответов      

         }

// 2 вопрос теста

printf("Лидер по добыче каменного угля? Введите номер правильного ответа \n");

printf("1. Россия 2. Индия 3. США 4. Китай 5. Австралия \n");

// запрашиваем ответ

scanf("%d", &a);

// проверяем правильность ответа

if (a==4)

{

  printf("Правильно \n");

  k=k+1;// увеличиваем счетчик правильных ответов      

         }

else{

 printf("Не правильно \n");

     }

// 3 вопрос теста

printf("Самая высокая гора? Введите номер правильного ответа \n");

printf("1. Чогори 2. Канченджанга 3. Эверест 4. Джомолунгма 5. Эльбрус \n");

// запрашиваем ответ

scanf("%d", &a);

// проверяем правильность ответа

if (a==4)

{

  printf("Правильно \n");

  k=k+1;// увеличиваем счетчик правильных ответов      

         }

else{

 printf("Не правильно\n ");

     }

 printf("Количество правильных ответов %d", k);

getch();

}

Вернуться к содержанию    Перейти к следующему уроку Логические операции в Си