terça-feira, 3 de junho de 2014

Como Declarar variáveis em Java

Antes de prosseguir para a prática. Você gostaria de saber o que é uma variável em programação? Segundo as informações do Livro C Completo e Total uma "Variável é uma posição nomeada de memória que pode guardar um valor que poderá ser modificado pelo programa."

Uma variável dependendo do seu tipo poderá conter valores como: Nome de uma pessoa, Idade, Sexo, Preço da Mercadoria, etc.

Veja como são declaradas as variáveis em Java:


Lembrando que essas variáveis estão sendo declaradas dentro do bloco de código main, ou seja, essas variáveis são chamadas de variáveis locais. Logo, elas devem ser inicializadas com zero se elas forem do tipo inteiro, float ou double, inicializada com null quando for do tipo String e false para variáveis do tipo boolean. Obs: Essas variáveis não necessariamente são declaradas com o valor zero, pois muitas vezes necessitamos inicializa-las com valores diferentes de zero e o java permite isso. Ex: double pi = 3.14.


PS: Muitas pessoas estão me perguntando se existe algum curso de Programação que realmente ensina passo a passo do Simples ao Avançado. E eu sempre recomendo este aqui: >> Curso de Programação <<



segunda-feira, 2 de junho de 2014

Como Criar um Programa em Java


Nesse artigo vou ensinar você criar o seu primeiro programa em java utilizando o Eclipse. 

1º - Abra o eclipse
2º - Vá em New File
3º - Passe o mouse em New
4º - Selecione JavaProject
5º - Dê um nome ao seu Projeto
6º - Clique em Finish

Para ver com mais detalhes siga as imagens logo abaixo:



Pronto! Feito esses passos você já está com o seu projeto java criado. Agora siga os passos abaixo pra dar continuidade ao seu projeto.

1º - Clique duas vezes em cima do seu projeto
2º - Localize a pasta "src"
3º - Clique com o botão direito do mouse na pasta "src"
4º - Passe o mouse em New
5º - Clique em Class
6º - Dê um nome a sua classe
7º - Clique em Finish

Caso tenha alguma dúvida siga a imagem logo abaixo com mais detalhe:


Ok! Agora o seu projeto está totalmente concluído. Agora vamos criar o método principal main para testarmos o nosso projeto...

public static void main(String[] args){
System.out.println("Meu primeiro programa em Java!");
}

Pronto! Agora é só compilar o programa. Para isso clique em Shift + F11. Veja o resultado logo abaixo:

Bom, chegamos ao fim desse artigo. Espero que você tenha gostado e que ele possa ter lhe ajudado em algum ponto. Caso tenha alguma dúvida fique a vontade para deixar seu comentário logo abaixo.


PS: Muitas pessoas estão me perguntando se existe algum curso de Programação que realmente ensina passo a passo do Simples ao Avançado. E eu sempre recomendo este aqui: >> Curso de Programação <<


quarta-feira, 9 de outubro de 2013

Tutorial CRUD na linguagem C


É muito comum no mundo da programação, nos depararmos com esse termo: CRUD! 
CRUD  em inglês significa Create, Read, Update e Delete, que traduzindo para o nosso português quer dizer: inserir, alterar, consultar e deletar. Nesse tutorial vou mostrar como desenvolver um CRUD na linguagem C.  
Logo abaixo está os critérios que o CRUD segue:

O Crud deverá ter uma estrutura para representar os dados de um aluno, com: matrícula de tipo inteiro, nome de tipo string, endereço do tipo string, data de nascimento de tipo data e disciplinas do tipo disciplina. O tipo data deve ser definido como uma estrutura com os membros dia, mês e ano de tipo inteiro. O tipo disciplina também deve ser definido como uma estrutura com nome do tipo string, professor do tipo string e notas como sendo um vetor de 3 floats para armazenar as notas do aluno naquela disciplina. Com essa estrutura vamos fazer as seguintes operações:

1 - Criar um vetor de 20 posições para armazenar o cadastro de alunos, ou seja, será permitido apenas 20 cadastros.
.
2 - Criar uma variável fim que demarcará a última posição atualmente preenchida em seu cadastro de alunos.

3 - Criar um menu através de uma função onde o usuário possa escolher entre as funções de cadastrar aluno, excluir aluno, alterar aluno, buscar aluno, listar todos os alunos, listar aluno de determinada disciplina, listar alunos aprovados e sair. 

4 - O usuário poderá escolher as opções qualquer quantidade de vezes. Somente ao escolher a opção sair o programa deve ser finalizado.

5 - Quando a opção cadastrar aluno for escolhida, leia todos os dados de um aluno e o inclua na primeira posição livre do vetor. A variável fim deve ser aumentada de um.

6 - Se já houver vinte alunos cadastrados (limite do nosso vetor), o programa deverá mostrar a mensagem “Impossível cadastrar. Você já fez os 20 cadastros”.

7 - Quando a opção excluir aluno for escolhida, o programa deverá solicitar a posição que o usuário deseja excluir. Caso a opção esteja preenchida com um aluno no vetor, todos os elementos, a partir daquela posição para frente devem ser “puxados” uma posição para trás, para refletir a exclusão. A variável fim deve ser reduzida de um. Caso contrário, deverá ser exibida a mensagem “Impossível excluir. Posição inválida”.

8 - Quando a opção alterar aluno for escolhida, o usuário deverá escolher a posição a alterar. Caso esta posição esteja preenchida com os dados de um aluno, o programa deverá mostrar os dados atuais e pedir para o usuário digitar novamente todos os dados para aquele aluno. Caso contrário, deverá mostrar a mensagem “Impossível alterar. Posição não preenchida”.

9 - Quando a opção buscar aluno for escolhida, o programa deverá solicitar ao usuário o nome a procurar. Após isso, o programa irá buscar, entre os aluno cadastrados, um com nome procurado (ou parte dele). Caso encontre, deverá mostrar todos os dados desse aluno. Caso contrário, deverá exibir a mensagem “Aluno não encontrado”.

10 - Quando a opção listar todos os alunos for selecionada, o programa deve exibir todos os dados de todos os alunos cadastrados até o momento. Se nenhum funcionário estiver cadastrado, deverá exibir a mensagem “Nenhum funcionário cadastrado”.

11 - Quando a opção listar alunos de determinada disciplina for selecionada, o programa deve solicitar ao usuário o nome de uma disciplina e procurar e mostrar, entre os alunos cadastrados, os que estejam naquela disciplina. Liste todos os alunos com as respectivas notas, médias e resultados finais (AM para média >= 7, EF para 7 < média >= 4 e RN para média < 4). Caso não encontre nenhum, mostrar a mensagem “Nenhum aluno encontrado para a disciplina procurada”.

12 - Quando a opção listar alunos aprovados for selecionada, o programa deverá procurar os alunos cadastrados que possuem como média (soma das 3 notas na disciplina dividida por 3) um valor maior ou igual a 7. Caso não seja encontrado nenhum aluno, mostrar a seguinte mensagem: “Nenhum aluno aprovado encontrado”.

13 - Quando a opção sair for escolhida, o programa deverá finalizar.

Agora vamos começar desenvolver o CRUD. Se desejar assistir os vídeos pelo youtube é só acessar o Meu Canal do Youtube. Ahh, não se esqueça de se inscrever para receber as minhas atualizações. Obrigado!

Obs: O CRUD não tem alocação de memória!

1º vídeo - Esse vídeo fala sobre os critérios do CRUD, que foram citados acima.



2° vídeo - Esse vídeo mostra as estruturas utilizadas pelo CRUD.



3º vídeo -  Criando o menu do CRUD.



4º vídeo - Criando as funções: inicia, cadastrar e verificaLista.


5º vídeo - Alterando a função verificaLista e terminando a função cadastrar.


6° vídeo -  Criando a função exibir todos os alunos.


7º vídeo - Mostra como as funções cadastrar e exibir todos os alunos são utilizados!




8º vídeo - Mostra como criar a função para

 exibir apenas os alunos aprovados.

 

segunda-feira, 30 de setembro de 2013

Exemplos de programas em C Parte_4

Programa que receba os elementos de uma matriz e imprime a soma de todos os seus elementos.


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

int main(void){

    /*
     * Faça um programa que receba os elementos de uma matriz e
     * imprima a soma de todos os seus elementos.
     */

    int i, j, soma = 0;
    int matriz[2][2];

    for (i = 0; i < 2; ++i) {
        for (j = 0; j < 2; ++j) {
            printf("\nDigite o elemento [%d][%d] da matriz: ", i, j);
            fflush(stdout);
            scanf("%d",&matriz[i][j]);
            soma += matriz[i][j];
        }
    }

    printf("\nA soma dos elementos da matriz é: %d", soma);

    system("pause");
    return 0;
}

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

Faça um programa que receba os elementos de uma matriz 4x4. Depois receba um valor do mesmo tipo dos elementos da matriz. Verifique e imprima quantas vezes esse valor existe na matriz. Se não encontrar imprima “não existe”.


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

int main(void){

    /*
     * Faça um programa que receba os elementos de uma matriz 4x4. Depois
     * receba um valor do mesmo tipo dos elementos da matriz. Verifique e
     * imprima quantas vezes esse valor existe na matriz. Se não encontrar
     * imprima “não existe”.
     */

    int i, j, valor, cont = 0;
    int matriz[4][4];

    for (i = 0; i < 4; i++) {
        for (j = 0; j < 4; j++) {
            printf("\nDigite o elemento [%d][%d] da matriz: ", i, j);
            fflush(stdout);
            scanf("%d",&matriz[i][j]);
        }
    }

    printf("\nDigite o valor que deseja encontrar na matriz: ");
    fflush(stdout);
    scanf("%d", &valor);

    for (i = 0; i < 4; ++i) {
        for (j = 0; j < 4; ++j)
            if (matriz[i][j] == valor) {
                cont++;
        }
    }

    //se cont for maior que zero é porque existe um numero na matriz igual ao procurado,
    //se caso o numero procurado não existir na matriz 'cont' não será incrementado, ou seja,
    //ele será igual a zero e exiirá a segunda mensagem abixo;
    if(cont > 0) {
    printf("\nO valor [ %d ] foi encontrado [ %d ] vez(es) na matriz.", valor, cont);
    } else {
        printf("\nNão existe valor na matriz igual ao valor pesquisado!");
    }

    system("pause");
    return 0;
}

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

Faça um programa que receba os elementos de uma matriz. Exiba a matriz e sua transposta. Na matriz transposta trocam-se linhas por colunas e colunas por linhas da matriz original.


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

#define limite 10 // constante de tamanho 10

int main(void){

    /*
     * Faça um programa que receba os elementos de uma matriz.
     * Exiba a matriz e sua transposta. Na matriz transposta
     * trocam-se linhas por colunas e colunas por linhas da
     * matriz original.
     */

    int i, j, linhas, colunas;
    int matriz[limite][limite];//a matriz terá um limite de 10 X 10

    printf("\nDigite o numero de linhas da matriz: ");
    fflush(stdout);
    scanf("%d",&linhas);

    printf("\nDigite o numero de colunas da matriz: ");
    fflush(stdout);
    scanf("%d",&colunas);

    for (i = 0; i < linhas; i++) {
        for (j = 0; j < colunas; j++) {
            printf("\nDigite o elemento [%d][%d] da matriz: ", i, j);
            fflush(stdout);
            scanf("%d",&matriz[i][j]);
        }
    }

    //matriz original
    printf("\nMatriz %d X %d Original.\n", linhas, colunas);
    for (i = 0; i < linhas; ++i) {
        for (j = 0; j < colunas; ++j) {
            printf("%2d ",matriz[i][j]);
        }
        printf("\n");
    }

    //matriz transposta
    printf("\nMatriz %d X %d Transposta.\n", colunas, linhas);
    for (i = 0; i < colunas; ++i) {
        for (j = 0; j < linhas; ++j) {
            printf("%2d ",matriz[j][i]);
        }
        printf("\n");
    }

    system("pause");
    return 0;
}
 

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

Faça um programa que receba uma matriz 4x4 e uma constante e imprima a matriz resultante da multiplicação da matriz pela constante.


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

int main(void){

    //Faça um programa que receba uma matriz 4x4 e uma constante e imprima
    //a matriz resultante da multiplicação da matriz pela constante.

    int matriz[4][4], mat_resultante[4][4];
    int i, j, constante;

    //ler os números
    for (i = 0; i < 4; ++i) {
        for (j = 0; j < 4; ++j){
        printf("\nDigite o elemtento [%d][%d]:",i,j);
         fflush(stdout);
        scanf("%d",&matriz[i][j]);
        }
    }

    // recebe o valor da constante
    printf("\nDigite o valor da constante: ");
    fflush(stdout);
    scanf("%d",&constante);

    //exibe a matriz
    printf("\nMatriz 4 X 4: \n");
    for (i = 0; i < 4; ++i) {
        for (j = 0; j < 4; ++j) {
            printf(" %3d ",matriz[i][j]);
        }
        printf("\n");
    }

    //Multiplca os elementos da matriz pela constante
    for (i = 0; i < 4; ++i) {
        for (j = 0; j < 4; ++j) {
            mat_resultante[i][j] = matriz[i][j] * constante;
        }
    }

    //Exibe a matriz 4x4 multiplicada pela constante
    printf("\nResultado da matriz A x %d da constante: \n",constante);
    for (i = 0; i < 4; ++i) {
        for (j = 0; j < 4; ++j){
            printf(" %3d ", mat_resultante[i][j]);
        }
        printf("\n");
    }

    system("pause");
    return 0;
}

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

Programa que recebe duas matrizes 4x4 e imprime o resultado da soma das duas matrizes.


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

int main(void){

    // Faça um programa que receba duas matrizes 4x4 e
    // imprima o resultado da soma das duas matrizes.

    int mat_A[4][4], mat_B[4][4], mat_Soma[4][4];
    int i, j;

    //ler os números da matriz A
    printf("Matriz A:");
    for (i = 0; i < 4; ++i) {
        for (j = 0; j < 4; ++j){
        printf("\nDigite o elemtento [%d][%d]:",i,j);
         fflush(stdout);
        scanf("%d",&mat_A[i][j]);
        }
    }

    printf("\n\n");

    //ler os números da matriz B
    printf("Matriz B:");
    for (i = 0; i < 4; ++i) {
        for (j = 0; j < 4; ++j) {
            printf("\nDigite o elemento [%d][%d]: ",i,j);
            fflush(stdout);
            scanf("%d",&mat_B[i][j]);
        }
    }

    // Soma a matriz A + B e armazena na matriz Soma
    for (i = 0; i < 4; ++i) {
        for (j = 0; j < 4; ++j) {
            mat_Soma[i][j] = mat_A[i][j] + mat_B[i][j];
        }
    }

    //Exibe a matriz A
    printf("\n\nMatriz A: \n\n");
    for (i = 0; i < 4; ++i) {
        for (j = 0; j < 4; ++j) {
            printf(" %2d ",mat_A[i][j]);
        }
        printf("\n");
    }

    //Exibe a matriz B
    printf("\n\nMatriz B: \n\n");
    for (i = 0; i < 4; ++i) {
        for (j = 0; j < 4; ++j) {
            printf(" %2d ",mat_B[i][j]);
        }
        printf("\n");
    }

    //Exibe a matriz soma de A+B
    printf("\n\nMatriz Soma ( A+B ): \n\n");
    for (i = 0; i < 4; ++i) {
        for (j = 0; j < 4; ++j) {
            printf(" %2d ",mat_Soma[i][j]);
        }
        printf("\n");
    }

    system("pause");
    return 0;
}
 

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

Faça um programa que receba 10 nomes em uma matriz de strings e outra string seq em separado. Imprima as palavras pertencentes à matriz que contenham a string seq recebida. Por exemplo, a string atestado contém a string testa, então deve ser impressa.


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

int main(void) {

    // Faça um programa que receba 10 nomes em uma matriz de strings
    // e outra string seq em separado. Imprima as palavras pertencentes
    // à matriz que contenham a string seq recebida. Por exemplo, a string
    // atestado contém a string testa, então deve ser impressa.

    int i;
    char nomes[10][50], seq[50]; // recebe até 10 nomes com tamanho de 50 carcteres
    char *pos;

    for (i = 0; i < 10; ++i) {
        printf("\nDigite o %d nome: ", i+1);
        fflush(stdout);
        gets(nomes[i]);
    }

    printf("\nDigite as iniciais ou o nome que deseja encontrar: ");
    fflush(stdout);
    gets(seq);

    for (i = 0; i < 10; ++i) {
        pos = strstr(nomes[i], seq);
        if (pos != NULL) {
            printf("\n[ %s ] contém [ %s ].", nomes[i], seq);
        }
    }

    system("pause");
    return 0;
}

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

Programa que recebe 10 nomes em uma matriz de strings e os imprima em ordem alfabética.


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

int main(void){

    // Programa que recebe 10 nomes em uma matriz
    // de strings e os imprima em ordem alfabética.
   
    char matriz[10][40], aux[40];
    int i, j;

    for (i = 0; i < 10; ++i) {
        printf("\nDigite a %d string: ", i+1);
         fflush(stdout);
        fgets(matriz[i],39,stdin);
    }

    for (j = 1; j < 10; ++j) {
        strcpy(aux,matriz[j]); // coloca os elemtentos da metriz no vetor aux
        i = j-1;

        while(i >= 0 && strcmp(matriz[i],aux) > 0){
            strcpy(matriz[i+1],matriz[i]);
            i--;
        }
        strcpy(matriz[i+1],aux);
    }

    printf("\nMatriz de string em ordem: ");
    for (i = 0; i < 10; ++i) {
        printf("\n %s ",matriz[i]);
    }

    system("pause");
    return 0;
}

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

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;
}

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