Array em C

add
#include <stdio.h>

int main() {
    int array[5] = {1, 2, 3, 4, 5};
    int newSize = 6;  // Tamanho da nova array
    int newValue = 10; // Valor a ser adicionado

    // Criar uma nova array temporária com o tamanho desejado
    int newArray[newSize];

    // Copiar elementos da array original para a nova array
    for (int i = 0; i < 5; i++) {
        newArray[i] = array[i];
    }

    // Adicionar o novo valor à nova array
    newArray[newSize - 1] = newValue;

    // Atualizar a array original com a nova array
    for (int i = 0; i < newSize; i++) {
        array[i] = newArray[i];
    }

    // Exibir a array resultante
    for (int i = 0; i < newSize; i++) {
        printf("%d ", array[i]);
    }

    return 0;
}

 

size

#include <stdio.h>

int main() {
    int array[] = {1, 2, 3, 4, 5};
   
    // Calcular o tamanho da array
    int tamanho = sizeof(array) / sizeof(array[0]);

    // Exibir o tamanho da array
    printf("O tamanho da array é: %d\n", tamanho);

    return 0;
}

 

get

#include <stdio.h>

int main() {
    int array[] = {10, 20, 30, 40, 50};

    // Obter o terceiro elemento (índice 2) da array
    int elemento = array[2];

    // Exibir o elemento obtido
    printf("O terceiro elemento da array é: %d\n", elemento);

    return 0;
}

 

set

#include <stdio.h>

int main() {
    int array[] = {10, 20, 30, 40, 50};

    // Exibir os elementos da array antes de modificar
    printf("Elementos da array antes da modificação: ");
    for (int i = 0; i < 5; i++) {
        printf("%d ", array[i]);
    }

    // Modificar elementos da array
    array[0] = 100;
    array[2] = 300;

    // Exibir os elementos da array após a modificação
    printf("\nElementos da array após a modificação: ");
    for (int i = 0; i < 5; i++) {
        printf("%d ", array[i]);
    }

    return 0;
}

 

remove

#include <stdio.h>

int main() {
    int array[] = {10, 20, 30, 40, 50};
    int tamanho_original = sizeof(array) / sizeof(array[0]);
    int posicao_a_remover = 2;  // Posição do elemento a ser removido

    // Verificar se a posição é válida
    if (posicao_a_remover >= 0 && posicao_a_remover < tamanho_original) {
        int nova_array[tamanho_original - 1];
        int j = 0;

        // Copiar elementos da array original para a nova array, excluindo o elemento a ser removido
        for (int i = 0; i < tamanho_original; i++) {
            if (i != posicao_a_remover) {
                nova_array[j] = array[i];
                j++;
            }
        }

        // Atualizar a array original com a nova array
        for (int i = 0; i < tamanho_original - 1; i++) {
            array[i] = nova_array[i];
        }

        // Exibir a array após a remoção
        printf("Elementos da array após a remoção: ");
        for (int i = 0; i < tamanho_original - 1; i++) {
            printf("%d ", array[i]);
        }
    } else {
        printf("Posição inválida para remoção.\n");
    }

    return 0;
}

 

clear

#include <stdio.h>
#include <string.h>

int main() {
    int array[] = {10, 20, 30, 40, 50};
    int tamanho = sizeof(array) / sizeof(array[0]);

    // Exibir a array antes de limpar
    printf("Elementos da array antes da limpeza: ");
    for (int i = 0; i < tamanho; i++) {
        printf("%d ", array[i]);
    }

    // Limpar a array
    memset(array, 0, sizeof(array));

    // Exibir a array após a limpeza
    printf("\nElementos da array após a limpeza: ");
    for (int i = 0; i < tamanho; i++) {
        printf("%d ", array[i]);
    }

    return 0;
}

 

contains

#include <stdio.h>

// Função para verificar se um valor está presente na array
int contains(int array[], int tamanho, int valor) {
    for (int i = 0; i < tamanho; i++) {
        if (array[i] == valor) {
            return 1;  // Valor encontrado
        }
    }
    return 0;  // Valor não encontrado
}

int main() {
    int array[] = {10, 20, 30, 40, 50};
    int tamanho = sizeof(array) / sizeof(array[0]);
    int valor_procurado = 30;

    // Verificar se o valor está presente na array
    if (contains(array, tamanho, valor_procurado)) {
        printf("O valor %d está presente na array.\n", valor_procurado);
    } else {
        printf("O valor %d não está presente na array.\n", valor_procurado);
    }

    return 0;
}

 

toArray

#include <stdio.h>
#include <stdlib.h>

// Função para converter uma array para um novo array dinâmico
int* toArray(int array[], int tamanho) {
    int* novoArray = (int*)malloc(tamanho * sizeof(int));

    if (novoArray != NULL) {
        for (int i = 0; i < tamanho; i++) {
            novoArray[i] = array[i];
        }
    }

    return novoArray;
}

int main() {
    int arrayOriginal[] = {10, 20, 30, 40, 50};
    int tamanhoOriginal = sizeof(arrayOriginal) / sizeof(arrayOriginal[0]);

    // Converter a array original para um novo array dinâmico
    int* novoArray = toArray(arrayOriginal, tamanhoOriginal);

    // Exibir o novo array dinâmico
    printf("Novo array dinâmico: ");
    for (int i = 0; i < tamanhoOriginal; i++) {
        printf("%d ", novoArray[i]);
    }

    // Liberar a memória alocada para o novo array dinâmico
    free(novoArray);

    return 0;
}

 

indexOf

#include <stdio.h>

// Função para encontrar o índice de um valor na array
int indexOf(int array[], int tamanho, int valor) {
    for (int i = 0; i < tamanho; i++) {
        if (array[i] == valor) {
            return i;  // Retorna o índice se o valor for encontrado
        }
    }
    return -1;  // Retorna -1 se o valor não for encontrado
}

int main() {
    int array[] = {10, 20, 30, 40, 50};
    int tamanho = sizeof(array) / sizeof(array[0]);
    int valor_procurado = 30;

    // Encontrar o índice do valor na array
    int indice = indexOf(array, tamanho, valor_procurado);

    // Verificar se o valor foi encontrado e exibir o índice
    if (indice != -1) {
        printf("O valor %d foi encontrado no índice %d.\n", valor_procurado, indice);
    } else {
        printf("O valor %d não foi encontrado na array.\n", valor_procurado);
    }

    return 0;
}

 

lastIndexOf

#include <stdio.h>

// Função para encontrar o índice da última ocorrência de um valor na array
int lastIndexOf(int array[], int tamanho, int valor) {
    for (int i = tamanho - 1; i >= 0; i--) {
        if (array[i] == valor) {
            return i;  // Retorna o índice se o valor for encontrado
        }
    }
    return -1;  // Retorna -1 se o valor não for encontrado
}

int main() {
    int array[] = {10, 20, 30, 40, 30, 50};
    int tamanho = sizeof(array) / sizeof(array[0]);
    int valor_procurado = 30;

    // Encontrar o índice da última ocorrência do valor na array
    int indice = lastIndexOf(array, tamanho, valor_procurado);

    // Verificar se o valor foi encontrado e exibir o índice
    if (indice != -1) {
        printf("A última ocorrência do valor %d foi encontrada no índice %d.\n", valor_procurado, indice);
    } else {
        printf("O valor %d não foi encontrado na array.\n", valor_procurado);
    }

    return 0;
}