Lista de Exercícios Resolvidos: Java | Python | VisuAlg | Portugol | C | C# | VB.NET | C++
Você está aqui: C ::: Desafios e Lista de Exercícios Resolvidos ::: Ponteiros, Referências e Memória

Escreva um programa em linguagem C para efetuar a soma de dois valores inteiros usando ponteiros. Seu código deverá usar o operador unário - Desafio de Programação Resolvido em C

Quantidade de visualizações: 1016 vezes
Exercício Resolvido de C - Escreva um programa em linguagem C para efetuar a soma de dois valores inteiros usando ponteiros. Seu código deverá usar o operador unário

Pergunta/Tarefa:

Escreva um programa em linguagem C para efetuar a soma de dois valores inteiros usando ponteiros. Seu código deverá usar o operador unário "&" para acessar o endereço de uma variável e o operador de indireção "*" para acessar o valor contido em uma variável do tipo ponteiro.

Sua saída deverá ser parecida com:

Informe o primeiro número: 6
Informe o segundo número: 3
A soma dos dois números é: 9
Resposta/Solução:

Veja a resolução comentada deste exercício usando C console:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

#include <stdio.h>
#include <stdlib.h>
#include <locale.h>   
   
int main(int argc, char *argv[]){
  int num1, num2; // variáveis do tipo int
  int *ponteiro_a, *ponteiro_b; // ponteiros para int
  int soma; // vai guardar a soma dos dois números
  
  setlocale(LC_ALL,""); // para acentos do português
	
  // vamos ler os dois valores
  printf("Informe o primeiro número: ");
  scanf("%d", &num1);
  printf("Informe o segundo número: ");
  scanf("%d", &num2);

  // vamos usar ponteiros para acessar os endereços
  // das duas variáveis do tipo int
  ponteiro_a = &num1;
  ponteiro_b = &num2;

  // agora acessamos os valores guardados nos
  // dois ponteiros
  soma = *ponteiro_a + *ponteiro_b;

  // e mostramos o resultado
  printf("A soma dos dois números é: %d", soma);
  
  printf("\n\n");
  system("pause");
  return 0;
}


Link para compartilhar na Internet ou com seus amigos:

C ::: Desafios e Lista de Exercícios Resolvidos ::: Recursão (Recursividade)

Exercícios Resolvidos de C - Um método recursivo que conta de 10 até 0

Quantidade de visualizações: 762 vezes
Pergunta/Tarefa:

Escreva um método recursivo em C que conta e exibe os valores de 10 até 0. Seu método deverá possuir a seguinte assinatura:

void contar_recursivamente(int n){
  // sua implementação aqui
}
Veja que o método deverá receber o valor 10 e efetuar novas chamadas a si mesmo até que os valores de 10 até 0 sejam exibidos. O ponto de parada da recursividade é a exibição do valor 0.

Sua saída deverá ser parecida com:

10
9
8
7
6
5
4
3
2
1
0
Resposta/Solução:

Veja a resolução comentada deste exercício usando C console:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

#include <stdio.h>
#include <stdlib.h>
#include <locale.h>   
   
// função recursiva que conta de 10 até 0;
void contar_recursivamente(int n){
  // vamos exibir o número atual
  printf("%d\n", n);
	
  // devemos prosseguir com a recursividade?
  if(n > 0){
    // decrementa o valor de n
    n--;  
    contar_recursivamente(n); // e faz uma nova chamada recursiva
  }
}
   
int main(int argc, char *argv[]){
  setlocale(LC_ALL,""); // para acentos do português
	
  // efetua uma chamada ao método recursivo fornecendo 
  // o primeiro valor
  contar_recursivamente(10);
	
  printf("\n\n");
  system("pause");
  return 0;
}



C ::: Fundamentos da Linguagem ::: Tipos de Dados

Como usar o tipo de dados boolean nas linguagens C e C++ - Como usar true (verdadeiro) e false (false) em C/C++

Quantidade de visualizações: 18226 vezes
Em praticamente todas as linguagens de programação nós encontramos expressões condicionais que definem o fluxo de execução. Expressões condicionais são aquelas que, quando avaliadas, resultam em um valor true (verdadeiro) ou false (falso).

Muitas linguagens de programação possuem um tipo booleano que armazena os valores true ou false. Enquanto o C++ possui o tipo bool, o C possui uma forma bem interessante de definir true ou false.

Em C, um valor true é qualquer valor diferente de 0, incluindo numeros negativos. Veja:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

#include <stdio.h>
#include <stdlib.h>
 
int main(int argc, char *argv[])
{
  int pode = 1; // verdadeiro
  int nao_pode = 0; // falso
 
  if(pode)
    printf("Teste resultou verdadeiro\n\n");
 
  if(!nao_pode)
    printf("Teste resultou verdadeiro\n\n");
 
  system("PAUSE");
  return 0;
}

Ao executar este código nós teremos o seguinte resultado:

Teste resultou verdadeiro
Teste resultou verdadeiro

Lembre-se então: false em C é o valor zero. Qualquer outro valor é true.

Embora C++ já possua o tipo bool, é possível usar a abordagem do zero para false e qualquer outro valor para true em C++ também. Você verá muito código legado usando este artifício. Quer ver algo interessante agora? Execute o seguinte código C++:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

#include <string>
#include <iostream>
 
using namespace std;
 
int main(int argc, char *argv[]){
  bool pode = true;
  bool nao_pode = false;
 
  cout << pode << "\n";
  cout << nao_pode << "\n\n";
 
  system("PAUSE"); // pausa o programa
  return EXIT_SUCCESS;
}

Nos compiladores que obedecem o C++ padrão você verá os valores 1 e 0 serem impressos.


C ::: Dicas & Truques ::: Arquivos e Diretórios

Como ler o conteúdo de um arquivo um caractere de cada vez usando a função fgetc() da linguagem C

Quantidade de visualizações: 413 vezes
A função fgetc() da linguagme C pode ser usada quando queremos ler o conteúdo de um arquivo um caractere de cada vez. Esta função retorna o caractere atualmente representado pelo indicador de posição interna no arquivo. Depois de lido o caractere, o indicador de posição avança para apontar para o próximo caractere.

Veja a assinatura desta função:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

int fgetc(FILE *file); 

O trecho de código abaixo mostra como usar um laço while para ler todos os caracteres do arquivo especificado e exibir o conteúdo na tela:

----------------------------------------------------------------------
Se precisar de ajuda com o código abaixo, pode me chamar
no WhatsApp +55 (62) 98553-6711 (Osmar)
----------------------------------------------------------------------

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

int main(int argc, char *argv[])
{
  FILE *arquivo = fopen("c:\\testes.txt", "r");
  int caractere;

  // testa se o arquivo foi aberto com sucesso
  if(arquivo != NULL){

    // vamos usar um laço para ler o conteúdo do arquivo
    // e exibí-lo
    while((caractere = fgetc(arquivo)) != EOF)
      printf("%c", caractere);

    fclose(arquivo); // libera o ponteiro para o arquivo
  }
  else
    printf("Nao foi possivel abrir o arquivo.");

  printf("\n\n");
  system("PAUSE");
  return 0;
}



Vamos testar seus conhecimentos em Ética e Legislação Profissional

Ética profissional, social, política

A delimitação do que é ético e do que é moral é motivo de grande confusão. Ao longo da história do pensamento humano, podemos identificar que, por estarem em relação constituinte um do outro, ambos os domínios da vida humana são pensados como a mesma coisa. Contudo, ética e moral têm os seus sentidos e práticas distintas.

A respeito disso, assinale a alternativa correta:

A) A moral é ausente de normas de condutas sociais.

B) A ética é um exercício subjetivo sempre guiado pela moral.

C) A moral diz respeito a um conjunto de normas e tradições universais.

D) Ética se aplica à ação no âmbito profissional e público.

E) A ética tem um caráter universal e a moral, um caráter particular.
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em Engenharia Civil - Construção Civil

Alvenaria: Técnicas construtivas

A elevação de paredes em alvenaria deve:

A) Iniciar no meio do vão em direção aos cantos.

B) Iniciar do lado direito para o lado esquerdo.

C) Iniciar do lado esquerdo para o lado direito.

D) Iniciar dos cantos, ou junto ao pilares, em direção ao centro.

E) Iniciar pelos cantos, em toda a altura do pé-direito, e depois seguir em direção ao centro.
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em Engenharia Civil - Construção Civil

Locação da obra

Durante a fase de "levantamento", colhemos informações in loco para uso na fase de projeto. No momento de passar o que está no projeto para o terreno, frequentemente são encontradas dificuldades na implementação, principalmente devido a erros de levantamento, que muitas vezes fornecem, por exemplo, um formato de terreno que não coincide com a forma real.

A etapa referida, que apresenta dificuldades de implementação, é:

A) Medição de obra.

B) Locação de obras.

C) Locação de estacas.

D) Levantamento altimétrico.

E) Levantamento planimétrico.
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em JavaScript

Qual é a forma correta de adicionar comentários de uma linha em JavaScript?

A) <!-- Este é um comentário -->

B) // Este é um comentário

C) ' Este é um comentário

D) # Este é um comentário
Verificar Resposta Estudar Cards Todas as Questões

Vamos testar seus conhecimentos em Ética e Legislação Profissional

Ética profissional, social, política

Como se lê nas obras de Platão e Aristóteles, existe uma diferença constantemente remarcada em relação a certas dimensões estritamente teóricas e práticas. Ao passo que Platão preza pela dimensão mais reminiscente em relação às virtudes éticas, Aristóteles vê essa dimensão humana de outro modo.

"Estas ciências práticas, de fato, dizem respeito à conduta dos homens, bem como ao fim que através dessa conduta eles querem alcançar, seja enquanto indivíduos, seja enquanto fazendo parte de uma sociedade, sobretudo da sociedade política" (REALE, 1994, p. 405).

A respeito do trecho citado, assinale a alternativa correta:

A) O indivíduo ético busca alcançar as suas virtudes independentemente das ações alheias.

B) A ética é um exercício tanto individual quanto coletivo.

C) A ética deve ser exercida apenas enquanto exercício político.

D) Na vida em sociedade, a ética atinge apenas a dimensão do todo.

E) A ética existe enquanto código e ultrapassa as microrrelações sociais.
Verificar Resposta Estudar Cards Todas as Questões

Desafios, Exercícios e Algoritmos Resolvidos de C

Veja mais Dicas e truques de C

Dicas e truques de outras linguagens

Códigos Fonte

Programa de Gestão Financeira Controle de Contas a Pagar e a Receber com Cadastro de Clientes e FornecedoresSoftware de Gestão Financeira com código fonte em PHP, MySQL, Bootstrap, jQuery - Inclui cadastro de clientes, fornecedores e ticket de atendimento
Diga adeus às planilhas do Excel e tenha 100% de controle sobre suas contas a pagar e a receber, gestão de receitas e despesas, cadastro de clientes e fornecedores com fotos e histórico de atendimentos. Código fonte completo e funcional, com instruções para instalação e configuração do banco de dados MySQL. Fácil de modificar e adicionar novas funcionalidades. Clique aqui e saiba mais
Controle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidadesControle de Estoque completo com código fonte em PHP, MySQL, Bootstrap, jQuery - 100% funcional e fácil de modificar e implementar novas funcionalidades
Tenha o seu próprio sistema de controle de estoque web. com cadastro de produtos, categorias, fornecedores, entradas e saídas de produtos, com relatórios por data, margem de lucro e muito mais. Código simples e fácil de modificar. Acompanha instruções para instalação e criação do banco de dados MySQL. Clique aqui e saiba mais

Linguagens Mais Populares

1º lugar: Java
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: Delphi
6º lugar: C
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby



© 2024 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 47 usuários muito felizes estudando em nosso site.