Programiranje u C-u

  

if else
Opći format ove naredbe je,

         if( uvjet 1 )

            izraz1;

         else if( uvjet 2 )

            izraz2;

         else if( uvjet 3 )

            izraz3;

         else

            izraz4;
else omogućava da se izvrši naredba kada je uvjet neistinit (jednak nuli).

Slijedeći program koristi if else naredbu da ocijeni je li upis korisnika između  1 i 10.

        #include <stdio.h>

        main()
        {
                int number;
                int valid = 0;

                while( valid == 0 ) {
                        printf("Unesite broj između 1 i 10 -->");
                        scanf("%d", &number);
                        if( number < 1 ) {
                                printf("Broj je manji od 1. Unesite ponovno\n");
                                valid = 0;
                        }
                        else if( number > 10 ) {
                                printf("Broj je veći od  10. Unesite ponovno\n");
                                valid = 0;
                        }
                        else 
                                valid = 1;
                }
                printf("Broj je %d\n", number );
        }





        Ispis programa

        Unesite broj između 1 i 10 --> 12

        Broj je veći od 10. Unesite ponovno

        Unesite broj između 1 i 10 --> 5

        Broj je 5
Ovaj program se malo razlikuje od prethodnog primjera u tome da se else koristi za postavljanje varijable valid na 1. U ovom programu lakše je pratiti logiku.

        /* Ilustrira ugniježđene if else i više argumenata za scanf funkciju.  */

        #include <stdio.h>

        main()
        {
                int    invalid_operator = 0;
                char   operator;
                float  number1, number2, result;

                printf("Unesite dva broja i operator\n");
                printf(" number1 operator number2\n");
                scanf("%f %c %f", &number1, &operator, &number2);

                if(operator == '*')
                        result = number1 * number2;
                else if(operator == '/')
                        result = number1 / number2;
                else if(operator == '+')
                        result = number1 + number2;
                else if(operator == '-')
                        result = number1 - number2;
                else
                        invalid_operator = 1;

                if( invalid_operator != 1 )
                        printf("%f %c %f iznosi %f\n", number1, operator, number2, result );
                else
                        printf("Nedozvoljeni operator.\n");

        }





        Ispis programa

        Unesite dva broja i operator
        number1 operator number2

        23.2 + 12

        23.2 + 12 iznosi 35.2
Gornji program radi kao jednostavni kalkulator.

©Copyright B Brown. 1984-1998. All rights reserved.