sexta-feira, 27 de setembro de 2013

Exemplos de programas em C Parte_3

Programa que recebe 10 valores para um vetor e o imprime ao contrário


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

int main(void){

    /*
     * Programa que recebe 10 valores para um vetor e o imprime ao contrário.
     */

    int vetor[10], i;

    for (i = 0; i < 10; ++i) {
        printf("\nDigite o %dº elemento do vetor: ",i+1);
        fflush(stdout);
        scanf("%d",&vetor[i]);
    }

    printf("\n");
    for (i = 9; i >= 0; i--) {
        printf("%d, ", vetor[i]);
    }

    system("pause");
    return 0;
}
 
---------------------------------------------------------------------------------------------------

Faça um programa que receba dez números inteiros e armazene-os em um vetor. O programa deve calcular e mostrar dois vetores resultantes, sendo o primeiro com os números pares e o segundo com os números ímpares do vetor lido


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

int main(void){

    /*
     * Faça um programa que receba dez números inteiros e armazene-os em um vetor.
     * O programa deve calcular e mostrar dois vetores resultantes, sendo o
     * primeiro com os números pares e o segundo com os números ímpares do vetor lido
     */

    int vetor[10], vet_par[10], vet_impar[10];
    int i;

    for (i = 0; i < 10; ++i) {
        printf("\nDigite o %dº elemento do vetor: ",i+1);
        fflush(stdout);
        scanf("%d",&vetor[i]);
    }

    //imprime os numeros pares
    printf("\nVetor dos numeros pares: ");
    for (i = 0; i < 10; ++i) {
        if ((vetor[i] % 2) == 0) { // verifia se os numeros são pares
            vet_par[i] = vetor[i];
            printf("%d ",vet_par[i]);
        }
    }

    printf("\n");
   
    printf("\nVetor dos numeros impares: ");
        for (i = 0; i < 10; ++i) {
            if ((vetor[i] % 2) != 0) {// verifia se os numeros são impares
                vet_impar[i] = vetor[i];
                printf("%d ",vet_impar[i]);
            }
        }

    system("pause");
    return 0;
}

---------------------------------------------------------------------------------------------------

Programa que receba dois vetores de 5 elementos cada e retorna um vetor resultado contendo a soma das posições correspondentes dos vetores de entrada.


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

int main(void){

    /*
     * Faça um programa que receba dois vetores de 5 elementos cada e retorne um vetor
     * resultado contendo a soma das posições correspondentes dos vetores de entrada.
     */

    int vetor1[5], vetor2[5], vetor_res[5];
    int i;

    for (i = 0; i < 5; ++i) {
        printf("\nDigite o %dº elemento do vetor[1]: ",i+1);
        fflush(stdout);
        scanf("%d",&vetor1[i]);
    }

    printf("\n------------------------------------------\n");
   
    for (i = 0; i < 5; ++i) {
            printf("\nDigite o %dº elemento do vetor[2]: ",i+1);
            fflush(stdout);
            scanf("%d",&vetor2[i]);
    }

    //imprime os numeros pares
    printf("\nA soma dos vetores é: ");
    for (i = 0; i < 5; ++i) {
        vetor_res[i] = vetor1[i] + vetor2[i];
        printf("%d ", vetor_res[i]);
    }

--------------------------------------------------------------------------------------------------- 

Programa que receba 10 valores em um vetor e os coloca em ordem crescente.


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

int main(void){

    /*
     * Faça um programa que receba 10 valores em um vetor e os coloque em ordem
     * crescente. Serão necessários dois percorrimentos sobre os elementos desse
     * vetor, para pesquisar cada elemento e depois para verificar se eles são
     * menores que os já verificados.
     */

    int vetor[10];
    int i, j, aux;

    for (i = 0; i < 10; ++i) {
        printf("\nDigite o %dº elemento do vetor[1]: ",i+1);
        fflush(stdout);
        scanf("%d",&vetor[i]);
    }

    printf("\nVetor em ordem crescente: ");
    for (i = 0; i < 10; ++i) {
        for (j = i+1; j < 10; ++j) {
            if (vetor[i] > vetor[j]) {
                aux = vetor[i]; // aux - pega os valores do vetor[i]
                vetor[i] = vetor[j]; //vetor[i] - pega os valores menores
                vetor[j] = aux; // vetor[j] - pega os valores maiores q estavam em vetor[i]
            }
        }
        printf("%d ", vetor[i]);
    }

    system("pause");
    return 0;
}

--------------------------------------------------------------------------------------------------- 

Programa que recebe um nome e o imprime ao contrário.


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

int main(void){

    /*
     * Faça um programa que receba um nome e o imprima ao contrário.
     */

    char nome[40];
    int i, tamanho = 0;

    printf("\nEntre com um nome: ");
    fflush(stdout);
    gets(nome);

    //percorre o vetor nas posições preenchidas e vai incrementando o tamanho
    for (i = 0; nome[i] != '\0'; i++) {
        tamanho++;
    }

    for (i = tamanho - 1; i >= 0; i--) {
        printf(" %c ",nome[i]);
    }

    system("pause");
    return 0;
}

--------------------------------------------------------------------------------------------------- 

Programa que receba um nome e conta quantos caracteres possui a palavra recebida


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

int main(void){

    /*
     * Faça um programa que receba um nome e conte quantos
     * caracteres possui a palavra recebida
     */

    char nome[40];
    int i, cont_espaco = 0;

    printf("\nEntre com uma palavra ou uma frase: ");
    fflush(stdout);
    gets(nome);

    for (i = 0; i < strlen(nome); ++i) {
        if (isspace(nome[i]) != '\0') { // isspace - conta os caracters em branco
            cont_espaco++; // conta os caracters e branco
        }
    }

    //exibe o tamanho do nome ou frase menos a quantidade de espaços em branco
    printf("\nO tamanho do nome é: %d", strlen(nome) - cont_espaco);

    system("pause");
    return 0;
}

---------------------------------------------------------------------------------------------------    

Programa que receba duas strings e verifica se as duas são iguais ou não.


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

int main(void){

        /*
     * Faça um programa que receba duas strings e verifica se as duas são iguais ou não.
     */


    char string1[40], string2[40];

    printf("\nEntre com primeira string: ");
    fflush(stdout);
    gets(string1);

    printf("\nEntre com segunda string: ");
    fflush(stdout);
    gets(string2);

    // strcmp - verifica se duas string são iguais, caso elas sejam iguais a função retorna 0
    if (strcmp(string1, string2) == 0) {
        printf("\nAs duas strings são iguais!");
    } else {
        printf("\nAs strings são diferentes!");
    }

    system("pause");
    return 0;
}
 

---------------------------------------------------------------------------------------------------    

Programa que recebe duas palavras, concatena as duas e conta quantos caracteres possui o resultado dessa junção.


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

int main(void){

    /*
     * programa que receba duas palavras, concatene as duas e conte quantos
     * caracteres possui o resultado dessa junção. Imprima a palavra concatenada
     * e a  quantidade de caracteres da concatenação.
     */

    char palav1[40], palav2[40];

    printf("\nDigite a primeira palavra: ");
    fflush(stdout);
    gets(palav1);

    printf("\nDigite a segunda palavra: ");
    fflush(stdout);
    gets(palav2);

    //strcat - concatena dus strings
    printf("\nAs palavras concatenadas são: %s\n", strcat(palav1,palav2));
    //strlen - conta quantos caracters possui uma string
    printf("\nAs palavras concatenadas possuem tamanho: %d",strlen(palav1));

    system("pause");
    return 0;
}

---------------------------------------------------------------------------------------------------      

Programa que recebe uma string e conta quantas letras maiúsculas existem


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

int main(void){

    /*
     * Programa que recebe uma string e conta quantas letras maiúsculas
     * existem.
     */

    char string[20];
    int i, cont = 0;

    printf("\nEntre com uma palavra ou frase: ");
    fflush(stdout);
    gets(string);

    //percorre toda a string e verifica se tem alguma letra maiuscula, devido a
    //função toupper que converte a string para maiusculo e '==' vai comparando
    //todos os elementos da string com a string maiuscula, se forem iguais o
    //contator 'cont' será incrementado. e a função isspace retira retira os
    //espaços em brando
    for (i = 0; i < strlen(string); ++i) {
        if (string[i] == toupper(string[i]) && isspace(string[i]) == '\0' ) {
            cont++;
        }
    }

    printf("\nA palavra (frase) - (%s) possui [ %d ] letras maiúsculas.", string, cont);

    system("pause");
    return 0;
}

---------------------------------------------------------------------------------------------------     

Programa que recebe uma string e troca todas as letras maiúsculas por minúscula e as minúsculas por maiúsculas de uma string


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

int main(void){

    /*
     * Programa que recebe uma string e troca todas as letras maiúsculas por minúsculas
     * e as minúsculas por maiúsculas de uma string recebida como parâmetro
     */

    char string[20];
    int i;

    printf("\nEntre com uma palavra ou frase: ");
    fflush(stdout);
    gets(string);

    for (i = 0; i < strlen(string); ++i) {
        if (string[i] == toupper(string[i])) { // verifica se a string é maiuscula, se sim
            string[i] = tolower(string[i]); // tolower converte para minuscula
        }
        else if (string[i] == tolower(string[i])) { // verifica se a string é minuscula, se sim
            string[i] = toupper(string[i]); // toupper converte para maiuscula
        }
    }

    printf("\nString modificada: %s", string);

    system("pause");
    return 0;
}

---------------------------------------------------------------------------------------------------     

Programa que recebe uma string e conta a quantidade de ocorrências de um caractere desejado


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

int main(void){

    /*
     * Programa que recebe uma string e conta a quantidade de
     * ocorrencias de um caractere desejado
     */

    char string[20], letra;
    int i, ocorrencia = 0;

    printf("\nEntre com uma palavra ou frase: ");
    fflush(stdout);
    gets(string);

    printf("\nDigite um caractere para ver sua repetição: ");
    fflush(stdout);
    scanf("%c",&letra);

    for (i = 0; i < strlen(string); ++i) {
        if (string[i] == letra) {
            ocorrencia++;
        }
    }

    printf("\nO caractere ( %c ) se repetiu [ %d ] vez(es) na frase!", letra, ocorrencia);

    system("pause");
    return 0;
}

--------------------------------------------------------------------------------------------------- 

# Compartilhar :