Les sentències condicionals són una part fonamental de qualsevol llenguatge de programació, ja que permeten que el programa prengui decisions basades en certes condicions. En aquest tema, aprendrem sobre les diferents sentències condicionals disponibles en C i com utilitzar-les.

Continguts

Introducció a les Sentències Condicionals

Les sentències condicionals permeten que el codi s'executi de manera diferent en funció de si una condició és certa o falsa. En C, les principals sentències condicionals són:

  • if
  • if-else
  • else-if
  • switch

Sentència if

La sentència if s'utilitza per executar un bloc de codi només si una condició específica és certa.

Sintaxi

if (condició) {
    // Bloc de codi a executar si la condició és certa
}

Exemple

#include <stdio.h>

int main() {
    int x = 10;

    if (x > 5) {
        printf("x és més gran que 5\n");
    }

    return 0;
}

En aquest exemple, el missatge "x és més gran que 5" es mostrarà perquè la condició x > 5 és certa.

Sentència if-else

La sentència if-else s'utilitza per executar un bloc de codi si una condició és certa i un altre bloc de codi si la condició és falsa.

Sintaxi

if (condició) {
    // Bloc de codi a executar si la condició és certa
} else {
    // Bloc de codi a executar si la condició és falsa
}

Exemple

#include <stdio.h>

int main() {
    int x = 3;

    if (x > 5) {
        printf("x és més gran que 5\n");
    } else {
        printf("x no és més gran que 5\n");
    }

    return 0;
}

En aquest exemple, el missatge "x no és més gran que 5" es mostrarà perquè la condició x > 5 és falsa.

Sentència else-if

La sentència else-if s'utilitza per comprovar múltiples condicions. Si la primera condició és falsa, es comprova la següent, i així successivament.

Sintaxi

if (condició1) {
    // Bloc de codi a executar si la condició1 és certa
} else if (condició2) {
    // Bloc de codi a executar si la condició2 és certa
} else {
    // Bloc de codi a executar si cap de les condicions anteriors és certa
}

Exemple

#include <stdio.h>

int main() {
    int x = 7;

    if (x > 10) {
        printf("x és més gran que 10\n");
    } else if (x > 5) {
        printf("x és més gran que 5 però no més gran que 10\n");
    } else {
        printf("x no és més gran que 5\n");
    }

    return 0;
}

En aquest exemple, el missatge "x és més gran que 5 però no més gran que 10" es mostrarà perquè la condició x > 5 és certa.

Sentència switch

La sentència switch s'utilitza per seleccionar una de moltes opcions basades en el valor d'una expressió.

Sintaxi

switch (expressió) {
    case valor1:
        // Bloc de codi a executar si expressió == valor1
        break;
    case valor2:
        // Bloc de codi a executar si expressió == valor2
        break;
    // Més casos...
    default:
        // Bloc de codi a executar si cap dels casos anteriors és cert
}

Exemple

#include <stdio.h>

int main() {
    int dia = 3;

    switch (dia) {
        case 1:
            printf("Dilluns\n");
            break;
        case 2:
            printf("Dimarts\n");
            break;
        case 3:
            printf("Dimecres\n");
            break;
        case 4:
            printf("Dijous\n");
            break;
        case 5:
            printf("Divendres\n");
            break;
        case 6:
            printf("Dissabte\n");
            break;
        case 7:
            printf("Diumenge\n");
            break;
        default:
            printf("Dia invàlid\n");
    }

    return 0;
}

En aquest exemple, el missatge "Dimecres" es mostrarà perquè la variable dia té el valor 3.

Exemples Pràctics

Exemple 1: Determinar si un nombre és parell o senar

#include <stdio.h>

int main() {
    int num;

    printf("Introdueix un nombre: ");
    scanf("%d", &num);

    if (num % 2 == 0) {
        printf("%d és parell\n", num);
    } else {
        printf("%d és senar\n", num);
    }

    return 0;
}

Exemple 2: Classificar una nota

#include <stdio.h>

int main() {
    int nota;

    printf("Introdueix la nota: ");
    scanf("%d", &nota);

    if (nota >= 90) {
        printf("Excel·lent\n");
    } else if (nota >= 80) {
        printf("Molt Bé\n");
    } else if (nota >= 70) {
        printf("Bé\n");
    } else if (nota >= 60) {
        printf("Suficient\n");
    } else {
        printf("Insuficient\n");
    }

    return 0;
}

Exercicis

Exercici 1: Determinar el major de dos nombres

Escriu un programa que llegeixi dos nombres del teclat i determini quin és el major.

Exercici 2: Classificar l'edat

Escriu un programa que llegeixi una edat del teclat i classifiqui la persona com a nen (0-12), adolescent (13-17), adult (18-64) o ancià (65+).

Exercici 3: Calculadora bàsica

Escriu un programa que llegeixi dos nombres i un operador (+, -, *, /) del teclat i realitzi l'operació corresponent.

Conclusió

En aquesta secció, hem après sobre les diferents sentències condicionals en C i com utilitzar-les per prendre decisions en els nostres programes. Les sentències if, if-else, else-if i switch són eines poderoses que ens permeten controlar el flux d'execució del nostre codi basat en condicions específiques. Practica amb els exemples i exercicis proporcionats per reforçar els teus coneixements.

Curs de Programació en C

Mòdul 1: Introducció al C

Mòdul 2: Tipus de Dades i Variables

Mòdul 3: Flux de Control

Mòdul 4: Funcions

Mòdul 5: Arrays i Strings

Mòdul 6: Punteres

Mòdul 7: Estructures i Unions

Mòdul 8: Assignació Dinàmica de Memòria

Mòdul 9: Gestió d'Arxius

Mòdul 10: Temes Avançats

Mòdul 11: Millors Pràctiques i Optimització

Mòdul 12: Projecte i Avaluació Final

© Copyright 2024. Tots els drets reservats